top

What Is Velocity In Agile

Creating efficient timelines is a must for time critical projects. Not only does it help the development team define their day-to-day tasks but also helps them chart out task priorities for each sprint or iteration. In Agile, timelines are calculated by considering velocity. What is velocity in agile? It is a metric or calibration tool that helps teams measure the work that is done in an iteration. Calculating velocity helps the team arrive at timelines and define how soon the project can be delivered. In this blog, we attempt to look at velocity in Agile and its associated benefits and pitfalls.What is velocity in Agile?At the end of each iteration, the team adds up effort estimates associated with user stories that were completed during that iteration. This total is called velocity—Agile Alliance Let us look at some of the terms mentioned in this definition. Estimates: In Agile, an estimate is the effort required to complete tasks in the product backlog. Estimation is an important activity to forecast the overall effort needed to complete a project. User Stories: In Agile, a project is broken down into smaller units. The smallest unit of work is known as a user story and is an end goal. It is a written description of the feature from the perspective of the end user. By computing the velocity, teams can estimate how long it will take to complete the project. Velocity is calculated by using the estimates on the remaining user stories and with the assumption that velocity will remain the same over the coming iterations. Though velocity may not be a 100% accurate, it provides a rough estimate that is precise. Velocity makes it easier to work in the Agile iterative model as you can estimate how much work is to be done to complete the project, how long it will take for your team to move through the backlog and assign tasks effectively.Evolution of Velocity:Agile has never been prescriptive and its concepts have never been rigid and defined. Agile concepts and fundamentals have evolved over time, and practices that have proven to be successful have become Agile standards. The concept of velocity too was a late addition to the Agile toolkit. In the year 2000, velocity was used in Extreme Programming, replacing ‘load factor’. From 2002 onwards, velocity became a main stay in Scrum teams that started incorporating the practice of measuring velocity.How is Velocity in Agile Measured? Velocity can be measured at several levels: At the individual task level At the sprint level At the epic or release level Measuring or calculating velocity in Agile is simple. Velocity at the sprint level can be calculated by measuring the total amount of backlog items that were delivered during a sprint.Velocity can also be calculated by considering story points. Story points make up user stories and are a unit of measurement that represent the amount of effort required to complete a task. Typically, each organization has its own method of assigning values to story points. The velocity for a particular sprint would be calculated by multiplying the number of user stories completed in the sprint with the story point assigned to each user story. For example: If you have completed 4 user stories and have assigned 3 story points to each story then the total velocity for the sprint would be 4*3=12. Individual sprint velocities can be averaged to find out the average sprint velocity.How to Use Average Velocity in Agile DevelopmentAgile is all about iterative development, providing quick solutions and getting the products to market fast. In order to do this, Agile teams must know how much work they can do in a sprint and how long they will take to complete the project or deliver to the customer. Velocity helps them decide this and work effectively. Average velocity is calculated once the project has progressed through three or four sprints. The average velocity is calculated by averaging the story points accumulated in each sprint. Based on this average velocity calculated, teams can base the amount of work that still needs to be done.If we consider the above example of average sprint velocity, then we can assume that the team can accomplish work at the rate of 12 story points in each sprint. So, if you still have 120 story points left to be completed in your project, then you can go with the assumption that you will need an additional 10 sprints to complete the project. Although it is accurate it is prone to fluctuations based on changing requirement, team size and project complexity.  Agile Velocity ChartAgile presents several tools for visually representing data points. These are an easy indicator of the project progress and if they are cloud-based can be accessed by all those involved in the project.  Agile velocity charts are basically graphs, with story points displayed on the Y or vertical axis and completed sprints displayed on the X or horizontal axis. These are a great way to make your project velocity accessible to all. Cloud based charts can be accessed by teams as well as stakeholders.  A velocity chart is a great way to track the status of the project, to see if the project is progressing in a steady and predictable manner and to identify patterns in the team’s sprint velocity. If there are many uneven dips and elevations in your graphs, then you can assume that your project is unpredictable as velocity is not constant.Benefits of measuring velocity: Critical for release planning: Velocity is a must for release planning as it helps the product owner determine how many sprints will be needed to create a product of the desired functionality. By getting an estimate of the number of sprints needed, the product owner can estimate the date for release.  Feedback for team: Velocity is a great tool for measuring the progress of the team. By tracking velocity over time, teams can measure if any change they make during the sprint is enhancing or diminishing their productivity. While velocity may fluctuate in new teams, experienced teams have steady velocity and can measure their progress through velocity charts. Forecasting: The velocity helps the team identify how many user stories they can complete in a sprint. Forecasting is an important tool that helps teams decide timelines and budgets for the project. Forecasting is generally done by taking the average of the last three sprints’ velocity.  Common disadvantages:Measuring progress based on velocity: While velocity is a great tool for measuring team progress, one must remember that it is an empirical measure, which means that it can be used for estimation but not as a final standard against which team progress is measured. Velocity is often based on story points and story points are subjective to the team. Teams can have their own story point values for user stories and hence define their own velocity and scope of work. This makes velocity a changing variable and it should not be used as a yardstick to measure team progress. Teething problems:Velocity is better estimated by well-functioning, mature Scrum teams.  New or transitioning teams and teams that are starting out on new projects will take some time to become a well-oiled machine and get their velocity accurate.  Large tasks: Scrum/Agile works on the principle of breaking down large projects into small chunks and having a deliverable at the end of each chunk. A Scrum project is typically broken down into epics, sprints, user stories and tasks. If epics are not sufficiently broken down then it will directly impact the velocity, and teams may see a sharp drop in velocity from sprint to sprint. This makes the velocity less predictable.  Idle time not accounted for: A sprint is not just about delivering or output. There are a lot of things that happen in between including exchanging emails, stand up meetings, etc. If this is not added into the sprint time, then the velocity may falter.  Conclusion  Velocity is an important metric used by Scrum Masters and Product Owners to track their team’s progress and ensure a successful project. Agile’s fast response, fast delivery, incremental and iterative framework ensures quick releases, quality products and customer satisfaction. Velocity helps to determine project timelines and allows Product Owners to give accurate estimates without falling into the trap of overcommitting.  
Rated 4.0/5 based on 15 customer reviews
Normal Mode Dark Mode

What Is Velocity In Agile

Susan May
Blog
26th Aug, 2021
What Is Velocity In Agile

Creating efficient timelines is a must for time critical projects. Not only does it help the development team define their day-to-day tasks but also helps them chart out task priorities for each sprint or iteration. In Agile, timelines are calculated by considering velocity. 

What is velocity in agile? It is a metric or calibration tool that helps teams measure the work that is done in an iteration. Calculating velocity helps the team arrive at timelines and define how soon the project can be delivered. In this blog, we attempt to look at velocity in Agile and its associated benefits and pitfalls.

What is velocity in Agile?

At the end of each iteration, the team adds up effort estimates associated with user stories that were completed during that iteration. This total is called velocity—Agile Alliance 

Let us look at some of the terms mentioned in this definition. 

  • Estimates: In Agile, an estimate is the effort required to complete tasks in the product backlog. Estimation is an important activity to forecast the overall effort needed to complete a project. 
  • User Stories: In Agile, a project is broken down into smaller units. The smallest unit of work is known as a user story and is an end goal. It is a written description of the feature from the perspective of the end user. 

By computing the velocity, teams can estimate how long it will take to complete the project. Velocity is calculated by using the estimates on the remaining user stories and with the assumption that velocity will remain the same over the coming iterations. 

Though velocity may not be a 100% accurate, it provides a rough estimate that is precise. Velocity makes it easier to work in the Agile iterative model as you can estimate how much work is to be done to complete the project, how long it will take for your team to move through the backlog and assign tasks effectively.

Evolution of Velocity:

Agile has never been prescriptive and its concepts have never been rigid and defined. Agile concepts and fundamentals have evolved over time, and practices that have proven to be successful have become Agile standards. 

The concept of velocity too was a late addition to the Agile toolkit. In the year 2000, velocity was used in Extreme Programming, replacing ‘load factor’. From 2002 onwards, velocity became a main stay in Scrum teams that started incorporating the practice of measuring velocity.

How is Velocity in Agile Measured? 

Velocity can be measured at several levels: 

  • At the individual task level 
  • At the sprint level 
  • At the epic or release level 

Measuring or calculating velocity in Agile is simple. Velocity at the sprint level can be calculated by measuring the total amount of backlog items that were delivered during a sprint.

Velocity can also be calculated by considering story points. Story points make up user stories and are a unit of measurement that represent the amount of effort required to complete a task. Typically, each organization has its own method of assigning values to story points

The velocity for a particular sprint would be calculated by multiplying the number of user stories completed in the sprint with the story point assigned to each user story. For example: If you have completed 4 user stories and have assigned 3 story points to each story then the total velocity for the sprint would be 4*3=12. 

Individual sprint velocities can be averaged to find out the average sprint velocity.

How to Use Average Velocity in Agile Development

Agile is all about iterative development, providing quick solutions and getting the products to market fast. In order to do this, Agile teams must know how much work they can do in a sprint and how long they will take to complete the project or deliver to the customer. Velocity helps them decide this and work effectively. 

Average velocity is calculated once the project has progressed through three or four sprints. The average velocity is calculated by averaging the story points accumulated in each sprint. Based on this average velocity calculated, teams can base the amount of work that still needs to be done.

If we consider the above example of average sprint velocity, then we can assume that the team can accomplish work at the rate of 12 story points in each sprint. So, if you still have 120 story points left to be completed in your project, then you can go with the assumption that you will need an additional 10 sprints to complete the project. 

Although it is accurate it is prone to fluctuations based on changing requirement, team size and project complexity.  

Agile Velocity Chart

Agile presents several tools for visually representing data points. These are an easy indicator of the project progress and if they are cloud-based can be accessed by all those involved in the project.  

Agile velocity charts are basically graphs, with story points displayed on the Y or vertical axis and completed sprints displayed on the X or horizontal axis. These are a great way to make your project velocity accessible to all. Cloud based charts can be accessed by teams as well as stakeholders.  

A velocity chart is a great way to track the status of the project, to see if the project is progressing in a steady and predictable manner and to identify patterns in the team’s sprint velocity. If there are many uneven dips and elevations in your graphs, then you can assume that your project is unpredictable as velocity is not constant.

Benefits of measuring velocity: 

  • Critical for release planning: Velocity is a must for release planning as it helps the product owner determine how many sprints will be needed to create a product of the desired functionality. By getting an estimate of the number of sprints needed, the product owner can estimate the date for release.  
  • Feedback for team: Velocity is a great tool for measuring the progress of the team. By tracking velocity over time, teams can measure if any change they make during the sprint is enhancing or diminishing their productivity. While velocity may fluctuate in new teams, experienced teams have steady velocity and can measure their progress through velocity charts. 
  • Forecasting: The velocity helps the team identify how many user stories they can complete in a sprint. Forecasting is an important tool that helps teams decide timelines and budgets for the project. Forecasting is generally done by taking the average of the last three sprints’ velocity.  

Common disadvantages:

  • Measuring progress based on velocity: 

While velocity is a great tool for measuring team progress, one must remember that it is an empirical measure, which means that it can be used for estimation but not as a final standard against which team progress is measured. Velocity is often based on story points and story points are subjective to the team. Teams can have their own story point values for user stories and hence define their own velocity and scope of work. This makes velocity a changing variable and it should not be used as a yardstick to measure team progress. 

  • Teething problems:

Velocity is better estimated by well-functioning, mature Scrum teams.  New or transitioning teams and teams that are starting out on new projects will take some time to become a well-oiled machine and get their velocity accurate.  

  • Large tasks

Scrum/Agile works on the principle of breaking down large projects into small chunks and having a deliverable at the end of each chunk. A Scrum project is typically broken down into epics, sprints, user stories and tasks. If epics are not sufficiently broken down then it will directly impact the velocity, and teams may see a sharp drop in velocity from sprint to sprint. This makes the velocity less predictable.  

  • Idle time not accounted for

A sprint is not just about delivering or output. There are a lot of things that happen in between including exchanging emails, stand up meetings, etc. If this is not added into the sprint time, then the velocity may falter.  

Conclusion  

Velocity is an important metric used by Scrum Masters and Product Owners to track their team’s progress and ensure a successful project. Agile’s fast response, fast delivery, incremental and iterative framework ensures quick releases, quality products and customer satisfaction. Velocity helps to determine project timelines and allows Product Owners to give accurate estimates without falling into the trap of overcommitting.  

Susan

Susan May

Writer, Developer, Explorer

Susan is a gamer, internet scholar and an entrepreneur, specialising in Big Data, Hadoop, Web Development and many other technologies. She is the author of several articles published on Zeolearn and KnowledgeHut blogs. She has gained a lot of experience by working as a freelancer and is now working as a trainer. As a developer, she has spoken at various international tech conferences around the globe about Big Data.


Website : https://www.zeolearn.com

Leave a Reply

Your email address will not be published. Required fields are marked *

REQUEST A FREE DEMO CLASS

SUBSCRIBE OUR BLOG

Follow Us On

Share on