Velocity
story points per sprint / team velocity / how fast is the team / points completed
Velocity is the total of the estimates a team finished in one iteration. Agile Alliance is blunt about what it is not: a measurement made after the fact, not a budget or a forecast, with no meaningful comparison between teams and no such thing as an individual velocity.
Agile Alliance defines it arithmetically. At the end of each iteration the team adds up the effort estimates for the user stories completed during it, and that total is the velocity. With it, the team can estimate how long the rest of the project will take, assuming velocity stays roughly the same. It calls that generally an accurate prediction, even though rarely a precise one.
The counting rule is stricter than most people expect. Agile teams generally acknowledge only two levels of completion, zero percent done or one hundred percent done. Its own worked example has two stories worth two points each finished and a three-point story at eighty percent, and the velocity is four. The nearly finished story contributes nothing until the iteration in which it is actually finished, which is also why velocity can appear to leap the following iteration.
Then it lists what the number is not, and this is the part worth carrying into a meeting. Velocity is a measurement made after the fact. It can help plan ahead, but it is not itself a budget or a forecast, and Agile Alliance says that phrases such as setting the velocity reveal a basic misunderstanding. Only the aggregate velocity of the team matters, and the phrase individual velocity is meaningless. There is no meaningful comparison of velocity between different teams, since they may estimate in different ways.
The Scrum Guide adds the caution from the other direction. It acknowledges that practices exist to forecast progress, such as burn-downs, burn-ups and cumulative flows, and says that while these are proven useful they do not replace the importance of empiricism. In complex environments what will happen is unknown, and only what has already happened may be used for forward-looking decision making.
In practice
The useful question is never whether velocity is high. It is whether it is steady, because a steady number is the only thing that makes the remaining work divisible into a timeline. A see-sawing velocity and a story that keeps failing to finish are treated by Agile Alliance as the same warning sign, with the same response: break the work into smaller pieces.
Not the same as
- Productivity
- It is denominated in one team's own estimates, which is why comparing two teams produces a number with no meaning.
- A target
- It is measured after the work, and setting it is a phrase Agile Alliance names as a misunderstanding.
Why it matters to you
This is the number most likely to be shown to you as evidence of pace, and the one most easily damaged by being used that way. The moment a team is asked to raise its velocity, the estimates can rise instead of the output, and nothing in the number can tell the difference. Its value is entirely in being an honest measurement, which is a property of how it is treated rather than of how it is calculated.
What to ask or check
- 01Is this steady over the last several iterations, or moving around?
- 02Are the estimates behind it made consistently, which is what makes any forecast possible?
- 03Has anyone been asked to improve this number, rather than to finish the work?
What people get wrong
That a higher velocity means a faster team. It is denominated in that team's own estimates, so Agile Alliance says there is no meaningful comparison between teams and that individual velocity is meaningless.
Red flags
- A velocity quoted next to another team's, as though the two units were the same.
- A velocity being set rather than measured.
- A number that see-saws, which Agile Alliance treats as a sign to break work into smaller pieces.
Who owns it
The team measures it from its own estimates. That is also why it stops meaning anything the moment somebody outside the team starts managing it.
Where you will see it
On the status slide of a development update, usually presented as a measure of pace.