The ability of Agile project management to increase flexibility, productivity, and high-quality deliverables is proven across industries, not just in software development. Agile is often used in a Scrum framework, and one important metric used to measure the ongoing efficiency and quality of a project is velocity. This article will explain what velocity is in Agile and show how to use it to predict project completion.
Table of Contents
- What is velocity in Agile?
- How to calculate velocity in Agile.
- Agile velocity examples.
- Benefits of velocity in Agile.
- Common pitfalls of velocity in Agile.
- Frequently asked questions.
What is velocity in Agile?
The rate at which your team can deliver is a key Agile metric, known as velocity. Determining your Agile team’s sprint velocity will let you understand when you can reach milestones or, if you’re planning on delivering a product in completion, what dates you can reach the finish line. Using velocity can also help reduce the chances of you over-promising when agreeing client deliverables.
Agile velocity is a useful tool for teams to use internally, not necessarily to use for external determinations. The team can use it to track estimates and completions over several sprints — giving them an accurate understanding of how fast they can move through a backlog. It helps a team look at their progress and strengths and learn how to improve their metrics.
How to calculate velocity in Agile.
Before you begin to calculate your team’s velocity, you will want to complete at least three to five sprints. This allows for a team new to Agile project management to get used to the workflow and for any changes the team is going through to normalize. Your velocity will fluctuate during these initial sprints but will stabilize after three or more have been completed.
To work through the formula, you will need to know how many points each user story, or bite-sized piece of work, is worth. Story point measurement is relative. It can be calculated in different ways for different organizations.
The rule of thumb in determining a story point is to find the simplest story, assign it one point, and then use it to assess the rest. You can use two scales to determine your story points: a linear scale or Fibonacci sequence.
Spacing the story point scoring far enough apart this way will give you a better idea of the importance of different tasks when you come to review them all together.
Agile velocity formula.
To calculate the velocity of a sprint, you need to know:
- How many user stories the team has to complete
- The number of points that a user story is worth
Then, look at the number of stories completed and add up the points.
Let’s look at an example of velocity in Agile:
- Sprint one. Your team has committed to eight user stories, and each story equals three story points. Let’s say the team only completes four stories. You would achieve 12 story points in total.
- Sprint two. Your team has committed to 10 user stories, and each story equals five story points. Let’s say your team completes seven stories. You would end up with 35 story points.
- Sprint three. Your team commits to nine user stories, and each story equals four story points. Let’s say your team completes seven stories. You’d have 28 story points.
Now that you have the individual sprint velocities, you can average them together.
Average sprint velocity = (12+35+28)/3 = 56
Velocity chart in Agile.
Once you have found the velocity of each sprint, you might want to enter that information into a velocity chart. A velocity chart can help in a few ways:
- Track the status of a project.
- Track volatility (a measure of predictability). If you are finding hills and valleys in your chart, the project is unpredictable. That can be for several reasons, including the size and difficulty of the project and team changes.
- Identify patterns in your team's velocity, including on projects where there may not be story points, but instead, the team is working out bugs.
Agile velocity examples.
Let’s look at an example of how to calculate velocity and predict project completion.
Step 1: Calculate velocity for the first sprint.
Assume your team committed to four stories, and each story is worth four points. At the end of the sprint, your team has completed three stories, but the fourth is only half complete. In Agile, you don’t count partially completed projects — it’s all or nothing — so you want to calculate only the three completed stories.
Your velocity on this sprint is 12.
Step 2: Predict the number of sprints needed.
In this step, you want to assume your remaining sprints will be similar. Your team can now revise the prediction of when the project will be completed. With this in mind, let’s assume the project includes user stories that total 48.
To complete the project, you will need a total of four sprints.
Benefits of velocity in Agile.
Given two identical sets of tasks, two different teams may still record different Agile velocity, as their own ways of working will differ greatly. That’s why the main benefit of velocity in Agile is to help project managers determine how much work (i.e., how many user stories) they can complete in a sprint.
Although Agile velocity shouldn’t be used to measure a team’s efficiency, and therefore become the yardstick for the next milestone delivery, it can be used as an accurate indicator of a unique team’s progress. A team can then tweak its processes and calculate their velocity change, to see if changes were for the better or worse.
Remember, there is no ideal velocity number. By following the processes outlined above, a project manager can use velocity in Agile to determine the number of sprints that will be needed for the project and how much time each sprint needs.
Common pitfalls of velocity in Agile.
Velocity in Agile is fantastic at helping plan resource and determine when project goals can be met. However, it cannot be considered a surefire way to budget or forecast with a project, simply because it is a measurement that is made retrospectively, post any sprints that take place.
It’s also difficult to use velocity in Agile to make a comparison between different teams and their performance. The nature of calculating velocity in Agile means individual teams will have their own ways of estimating effort among team members, so an apples-to-apples comparison is difficult.
Velocity in Agile also requires very careful and consistent estimations throughout. This will test you and your team throughout, but is the only way to ensure an accurate picture is obtained.
Learn more about how Agile software can help you handle workloads, adapt to changing priorities and ensure cross-team collaboration during your sprints today.
Frequently asked questions.
Why is velocity important in Agile?
Velocity is important in Agile, as it enables you to track your progress against a project to see how quickly you’re completing sprints. By seeing how long sprints have taken against how long you initially predicted they’d take, project managers get a more holistic view of workloads and workflows and are able to plan and amend accordingly.
What is an Agile velocity definition?
Agile velocity is a metric that calculates how long user stories within a particular sprint have taken to complete against their estimate. This allows project managers to accurately predict how long future sprints, or an overall project, will take to complete.
That means velocity is a crucial tool for planning resource, deadlines and deliverables.
Is velocity a good metric?
If you want to run agile projects, then yes velocity is a good metric. It’s universally recognized as a key component of agile working and is baked-in to various agile tools.
Once you plug velocity data into visual graphs, you can see at-a-glance how your teams’ sprints are performing and identify patterns, for example dips or peaks in a certain discipline.