22

I am new in agile and Scrum, and I got confused as to what the differences are between a Sprint, a Milestone and a Release.

I heard some say that the Sprint is a Milestone. Also in some software the terms Sprint and Milestone look the same. But is it really so?

Some others say that a Milestone is not a Sprint, but a Release. So for them Milestone and Release are the same.

In The Scrum Guide, there is no word regarding Milestone. Why? Why do we always hear the word milestone in the agile conversations? Is milestone just another term for release?

I am looking for a clarification between those terms, Sprint, Milestone and Release and one example. I would like to know the exact Scrum definitions behind those terms.

10 Answers 10

16

Sprint
In the Scrum Framework all activities needed for the implementation of entries from the Scrum Product Backlog are performed within Sprints (also called 'Iterations'). Sprints are always short: normally about 2-4 weeks.

Each Sprint follows a defined process as shown below:

enter image description here

The heart of Scrum is a Sprint, a time-box of two weeks or one month during which a potentially releasable product increment is created. A new Sprint starts immediately after the conclusion of the previous Sprint. Sprints consist of the Sprint planning, daily scrums, the development work, the Sprint review, and the Sprint retrospective.

In Sprint planning, the work to be performed in the Sprint is planned collaboratively by the Scrum Team.

The Daily Scrum Meeting is a 15-minute time-boxed event for the Scrum Team to synchronize the activities and create a plan for that day.

A Sprint Review is held at the end of the Sprint to inspect the Increment and make changes to the Product Backlog, if needed.

The Sprint Retrospective occurs after the Sprint Review and prior to the next Sprint Planning. In this meeting, the Scrum Team is to inspect itself and create a plan for improvements to be enacted during the subsequent Sprint.


Release
The goal of initial release planning is to estimate roughly which features will be delivered by the release deadline (presuming the deadline is fixed), or to choose a rough delivery date for a given set of features (if scope is fixed). We use this information to decide whether or not the project will produce enough ROI to at least pay for itself, and therefore whether or not we should proceed.

Milestone
Milestone is typically associated with reaching a certain goal, before proceeding forward or stopping altogether. Checkpoint signifies points at which the team stops and checks progress against expectations, and possibly adjust.

Milestone (big granularity) means progress checking at iterative way; it is important in overall project progress and if associated goal is not fulfilled, some important analysis and decisions are needed; it is associated with phases and iterations or other important points and it could be related to formal progress tracking. As “no team is an island unto itself”, that “software development” is not a hermetically sealed universe, and that the software development efforts of one team are usually part of a bigger coordinated undertaking / organization.


Now an answer to your question in short:
Sprint, Milestone and release are not same but at some point during project development they meet each other.

It may be possible end of particular milestone can result into partial/final release.

Sprints are chunks for for development plan, with iterative activities, it cannot be considered as a Milestone.

4
  • +1 for "Sprint, Milestone and release are not same but at some point during project development they meet each other." Commented Oct 7, 2017 at 9:39
  • @Krunal can I change the sprint duration during the project? e.g. sprint 1,2,3 - 1 week , sprint 4 - 2 weeks, sprint 5,6 - 3 weeks, sprint 7 - 1 week .....
    – user155293
    Commented Oct 16, 2017 at 8:17
  • 1
    @Krunal "Sprints best have consistent durations throughout a development effort." scrumguides.org/scrum-guide.html Commented Oct 16, 2017 at 13:11
  • @AlanLarimer thank for your remarks, that show me the correct info.
    – Krunal
    Commented Oct 16, 2017 at 13:27
4

Sprints and milestones are tools you can use to break a release, like the release of a new feature, into smaller and incremental steps.

Most software teams are already working with sprints, by committing to complete several tasks in the next 2 or 3 weeks. One of the advantages of working in sprints, it’s that after you decide what work goes into each sprint, i.e., sprint planning, any new requests either have to be of extremely high priority, and someone on the team has to shift context and tackle it, or it gets added to the backlog.

As for milestones, they are a great tool for Engineering managers to organize work around deliverables for end-users. It’s not mandatory that a milestone has a due date, but it becomes especially helpful to have one, when there are external commitments with other teams. Then it’s easier to set expectations with other teams, because there’s a commitment to deliver the work in a milestone on a given date, and it’s easier to communicate progress. If your team is working with sprints, a milestone can include multiple sprints.

You can find more information about the difference between sprints and milestones in this blog post.

A release is when customers have access to new capabilities. From a software engineering standpoint, it can mean different things, depending on how you deploy code.

In a "point-in time deployment" world, if you’re launching a new feature, your team will work in sprints that unlock several milestones. After you've completed every milestone, code is deployed to end-users, so they get access to the new feature.

enter image description here If your engineering team is following a doing Continuous Integration and Continuous Deployment (CI/CD), the use of sprints is mostly so the team knows what they'll be focused on for the next 2-3 weeks. In a CI/CD world, you have a production release every time new code is integrated. This way your customers may either have full access to new capabilities, or the new capabilities are not yet visible to them, but its foundations are being incrementally tested, deployed and exercised in the background.

enter image description here

4

Both Sprints and Releases are Milestones, as a Milestone is just "an action or event marking a significant change or stage in development."

Milestone is used often in Project Management conversations in general. It's not specifically an Agile (nor Scrum) term, but its meaning is broad enough (as shown above) to be usable in Agile contexts.

A Sprint is a potential release, but most Sprints are not Releases.

A Sprint is just an iteration of time, after which the product is in a stable, releasable form.

A Release is when you actually do release the product.

If you want to know exact Scrum definitions, read the Scrum Guide.

The heart of Scrum is a Sprint, a time-box of one month or less during which a “Done”, useable, and potentially releasable product Increment is created.

1
  • in the scrum guide, there is no word regarding Milestone. Why? Why do we always hear the word milestone in the agile conversations... is milestone just another term for release? tnx
    – user155293
    Commented Oct 4, 2017 at 15:33
3

The heart of Scrum is a Sprint, a time-box of one month or less during which a “Done”, useable, and potentially releasable product Increment is created.

The Scrum Guide

The other terms are not a part of Scrum, though "Release Planning" used to be many years ago.

Milestones are often a part of the PMI (project management) vocabulary.

ADDED

There is a lot to the history of software development and these terms. Please start with Managing the Development of Large Software Systems (1970), the misunderstanding that led to the waterfall process. The terms milestone and release are widely used in classic project management They are similar and are often used interchangeably; they often have different meanings to different people. The term agile comes from the Manifesto for Agile Software Development (2001) though the groundwork for that philosophy started in the 1990s (history) including eXtreme Programming and Scrum. The reason that release was removed from The Scrum Guide and milestone never appeared was because they are both long term planning which is contrary to the intent: short iterative and incremental cycles intended to promote agility to change direction to seize opportunities, reduce risks, and terminate an effort when the cost-benefit was no longer acceptable.

1
  • 1
    super explanation why Milestone definition does not appear in The Scrum Guide! tnx
    – user155293
    Commented Oct 16, 2017 at 8:14
3

A Milestone is an achievement.

A Release is a fact of releasing a software to users.

A Sprint is a period of work in which a particular added value is created.

1
  • Please share what is wrong, not only downvote
    – Riga
    Commented Apr 20, 2018 at 12:23
3

Just to add to the confusion, a "milestone" is also a term used in ticket tracking tools such as Trac and GitHub. In this usage, a milestone is a thing that has a due date and a set of tickets associated with it.

Thus, it could be that some teams use this type of milestone to organize and track progress on tickets for a sprint, and/or for a release. I wonder if this is contributing to the OP's confusion.

2

Re question: "differences are between a Sprint, a Milestone and a Release." In PM best practice, a milestone is a point in time that does not consume resources.

In a PM plan that incorporates the Scrum framework's software delivery, you could state some simple milestones in your overall Work Breakdown Structure/plan to address the Scrum Sprints, for example:

  1. Produce Backlog for Sprint 1 (a PM Summary line) (this is a Scrum framework activity)
  2. Plan Sprint 1 (a PM Summary line) (this is a Scrum framework activity) Start Sprint 1 (a PM milestone)
    • (a PM Summary line) (List the Scrum framework activities here)
    • Scrum Increment delivered (a milestone)
  3. Finish Sprint 1 ( a milestone)

Repeat the above for each Sprint.


Re the term Release: first, the definition of an Increment - "a piece of working software that adds to previously created Increments, where the sum of all Increments - as a whole - form a product."

Be careful to agree on what the scope of the term Release will mean. For example, in the Scrum framework, each Sprint delivers an Increment but the Increment might not yet be put into service by the user; this is a decision made by the Scrum Product owner.

1
  • I had hoped my activity and milestone phrases would be on separated lines for easier reading but the text editor strung them into one sentence, so keep that in mind when reading my above comment, thanks.
    – ben
    Commented Mar 29, 2018 at 12:42
2

Milestone is a flag of group of requirements if done, then you have achieved a one goal in project's goals.

Sprint is a - big enough - fixed time frame in which you deliver a stable and working group of features (user stories).

in Release you ship a deliverable features (the smallest time box ).

Milestone >= Sprint (You may need multiple sprints to reach a milestone) Sprint >= Release (You may need multiple releases to close a sprint)

1
  • Seems that this answer flips release and sprint from what others are saying, which just goes to show, there's not a single perspective for this question. If you are CICD and releasing multiple times per sprint then a release cycle is shorter than the sprint. Commented Jun 21, 2022 at 3:25
0

Sprint is a time frame to achieve one or more goals, frequently from 1 to 4 weeks. It's related to a work performed by a team. Milestone is an event during a project, with zero days of duration, that represents a important achievement. Release is a deliverable, could be a document, software module, blueprint, etc.

E.G: Sprint 1: From October 2nd to October 20th. Sprint 2: From October 23rd to October 27th.

Milestone ABC: Start of project. Milestone XYZ: Start of design phase.

Release #1: ContactUs Web Form. Release #2: Sales report.

3
  • can sprints have different lenght during the project (sometimes 1 week sometimes 2..)?
    – user155293
    Commented Oct 16, 2017 at 8:15
  • @user155293 It's not prohibited but it is strongly discouraged: "Sprints best have consistent durations throughout a development effort." scrumguides.org/scrum-guide.html Commented Oct 16, 2017 at 13:09
  • 1
    @Alan Larimer is right.
    – JCM
    Commented Oct 16, 2017 at 14:12
-3

According to me, Releases should be the milestone for me and Sprint is designed by the manager according to the skillset of an employee.

Not the answer you're looking for? Browse other questions tagged or ask your own question.