[Reading time: 1 minutes 45 seconds]
If you’re working in an agile team, chances are you’re calculating your velocity somehow.
Now, velocity is the amount of story points you get done in a sprint (we’ll blithely ignore all the handwaviness inherent in that sentence).
That’s… a metric. Right? It totally is: it’s a number, even grounded in actual SI units. Even better, the number is extremely usable as a tool to compare teams: team A gets 70/sprint, team B gets 30/sprint. Clearly team A is better than team B.
Clearly.
Clearly?
Velocity is maybe the most obvious example of things that walk like metrics, quack like metrics – yet aren’t even close to being one!
Because, remember, the basic quantity – story points – are simply a relative comparison of our idea of the complexity of two tasks. In other words, it depends on both the thing we compare to, and who is doing the comparing.
I guarantee that estimating the exact same tasks, estimated by the exact same team, a year from now as opposed to now, will lead to differing story point estimates. Just because the team will be in a different place; they’ll have different experience, they’ll maybe have shifted their approach to comparison a bit, etc.
Story points are a neat estimation tool, but they are not an estimate.
What’s being estimated, ultimately, is how much we can fit into one sprint – and whether we can keep that commitment may be a signal worth paying attention to, despite feeling more squishy.
But the seeming objectivity of velocity belies its utter arbitrariness.
(I’ll tell you a secret: it’s one of my daydreams to have a boss who tries to judge me or my team on velocity. Only for us to change our story point estimate steps to 10^1, 10^2, 10^3, 10^5, 10^8, 10^13, 10^21.)
“What’s your team’s velocity?” – “Eh, about 7.3*10^14.”
Oh how we’ll laugh.