Agile development cycles, with a product increment delivered at the end of each iteration, have been proven to increase productivity and maximize value. Customers can see new features and releases more frequently than in a traditional development project, where the product is released only at the end.
However, to plan, estimate and reach goals as per schedules, you should be able to gauge how much work the team can complete in every sprint. This will help to optimize resources and get the work completed as per timelines. This is where calculating the Scrum velocity plays a significant role.
What is Velocity in Scrum?
Velocity, as the name indicates, is a measure of the progress of work executed by the Scrum team. It can be defined as the ‘rate at which Scrum teams consistently delivery product value’. It indicates how many products backlog items have been completed, as per the Definition of Done, during a sprint by the Scrum team.
A team that can accomplish a higher velocity will be able to deliver more software functionality and create greater value for customers.
The velocity is a helpful predictive metric that is used to determine how much scope can be delivered by a particular date, or for fixing a date by which a specific amount of scope could be delivered. It helps the team to understand what is possible, and what is not, when committing to timelines during a sprint.
Example of Scrum Velocity
Velocity is a key metric in Scrum and can be calculated using amazingly simple guidelines. While it can also be measured using ideal days or hours, the most simple and efficient way of calculating velocity is using Story points.
It is important to note that points from incomplete story points are not used, and only those story points that are deemed to be complete in all respects can be used to calculate the velocity.
Here is a simple example that shows how the velocity can be calculated.
- Assume that an Agile team plans to complete user stories X and Y, which have been estimated at 3 points each, and story Z which is estimated at 2 points. On the last day of the sprint, stories X and Z are completed but Y is only about 70% done.
Remember, we had said that a story point that is not 100% done cannot be considered to calculate the velocity. Hence, only X and Z are added up, which gives us 3+2= 5 points as the velocity of this iteration.
- Now that we have the velocity for the first sprint, we can use this to calculate how many iterations will be needed to complete the project. Based on the story point estimates for the remaining user stories, we can expect that the velocity will remain the same over the upcoming iterations.
If there are another 30 story points to be completed, we can assume that the same team will require 30/5= 6 more iterations to complete this amount of work.
What Is a Velocity Chart in Agile?
A team that has already completed several iterations will have a good ability to predict the release and product completion schedules. By viewing the velocity report, they will be able to plan future projects with accurate timelines.
This, of course, assumes that the team members stay the same for the upcoming projects as well. In case some of the members are switched around, this exercise of computing the velocity would have to be redone during the first iteration. Again, if the sprint duration changes the estimates will again undergo a corresponding change.
For teams that stay together, it is easy to track the effort that has been reported as being completed during each sprint. They will also be able to predict and estimate the effort that can be handled in future sprints.
A velocity chart is a visual representation of the Effort (in terms of Story points) on the Y axis, plotted against the Sprints on the X axis.
Understanding the Velocity Chart
Let us understand how to read the Velocity chart with the help of an example.
In the diagram below, the team was less productive in Sprint 2, with 29 story points getting completed against 38 in Sprint 1 and 3, and 39 in Sprint 4.
As we have already mentioned, only the story points that were 100% completed during the sprint can be used to calculate velocity. Even if there is just a bit of work left to be done for a story point to be completed, it will be rolled over to the next sprint.
How to Estimate Velocity
Continuing with the same example, here is how we calculate the average velocity.
At the end of four sprints (see image below), this is how the story points looked. The average velocity can be calculated as (38+ 39 + 38 +39)/4 = 38.
With a backlog of user stories mapped out for the remaining increments, it becomes extremely easy to calculate how much time the team will require to complete the final product release.
Benefits & limitations Of Agile Velocity Charts
Using Velocity Charts comes with advantages as well as disadvantages.
Advantages:
- You can make better predictions about the capabilities and capacity of the team. Using velocity calculations, the number of iterations can be calculated and the time needed can be roughly determined.
- You will be able to judge whether there are any issues that are hampering progress, in case the velocity dips significantly. These issues can be identified early and dealt with at once, rather than allowing them to get in the way of progress.
Disadvantages:
- The velocity is never 100% accurate, as many factors could cause it to fluctuate. If team members drop out or new people join, or there are changes in the scope and requirements, the velocity will be impacted.
- Velocity is subjective and depends on factors like the sprint duration and project size. For this reason, the velocity of two teams on different projects cannot be compared.
Looking for a convenient way to enhance your Project planning and scheduling proficiency? Our project management virtual training is the perfect solution. Designed to fit into your busy schedule, our online course is the key to elevating your career and achieving mastery in the field. Enroll now and take the first step towards success!
Using the Velocity Metric in the Agile Scrum Methodology
As we have seen, by calculating the project velocity we can chart out the time required for the team to complete the entire project. Regardless of the size of the project, this method will be a fairly accurate representation of the schedules and you can determine when the rollout of the final product is likely to happen. The velocity metric is very important when planning budget and resource allocations for the project.
How can a team use the velocity metric to calculate estimates?
- Study the velocity report of a project that is similar in terms of size and complexity, to roughly judge your team’s average velocity.
- This report can be used to determine the duration of a sprint and the number of story points that can be completed in each sprint.
- Next, add up the story point for each user story to be completed in that project, and then divide the total number of story points with your team’s velocity. You will be able to arrive at the number of iterations required for the completion of the project. (Sum of story points)/ Team’s velocity= Number of sprints required
A Last Word!
Velocity charts are one of the most useful metrics that an Agile team can follow to track work progress and team capacity. We hope we’ve been able to give you the insights you need to perform velocity calculations and use them to work out project estimates.