Velocity in Agile Methodology

Hi guys, Anatoly from Define Agile here!

Today we’re talking about velocity in Agile.

 

A lot of you guys ask me:

“Anatoly, what is velocity?”

“How can you calculate it?”

“What is an average velocity?”

“Do we even need to care about it? Is it something we need to track?”

Those are all amazing questions. I’m going to answer all of them.

Velocity is a metric that shows us how successfully we complete our stories.

Here’s an example:

We are a team of people. We have a two-week iterations or two-week sprint. In these two weeks we thought, “We will complete ten stories,” (stories are features) and  we said every story we think is a two-story points value (arbitrary measure of how complex story is + how long it might take). So then if we complete all of them at the end of two weeks, our velocity will be 20 points.

Easy, right? We have 10 stories, 2 point stories each equals 10 * 2 = 20. If that is all that we need to know about velocity, why so many people are confused by it ?

First of all,  because velocity is not a precise measure. Velocity is based on estimates, so it can definitely vary. I also find that if you have a small project and you don’t give enough time for velocity to establish itself, for a team to learn how to estimate properly, then velocity will be pretty useless.

wrong velocity

 

However, if you have a team that works together for a long time and that they track everything, they are pretty good at estimating their stories –   velocity would be pretty accurate. They will be able to predict how many stories they can complete in a certain iteration, which is very good for road-mapping, for giving expectations to the business and stuff like that.

velocity

The most useful metric I find with regards to velocity is an average velocity. To calculate average velocity, we usually take about four iterations, we add them up, and divide them by their number.

Let’s say our team worked for 4 iterations of 2 weeks. First time their velocity was 40, the other week it was 10, next week their velocity became lower: 20, after that their  velocity came back to 40, and finally  it lowered back to 20.

What we need to do is we have four numbers: 40, 20, 40, and 20. We take all those numbers, add them up. We are having 120 and then we just divide them by the amount of those numbers. So we divide them by 4 and then we know that our average velocity in this case is 30.

ave velocity

I find that average velocity is useful for a team because it shows them how they progress, if something went wrong, and if there’s something that we as a team can improve. So, it’s a good metric for us internally to see if something has gone wrong with the team. Also, when we as a team are doing spring planning, we sometimes think, “How many stories can we take in two weeks iterations?”

If we have average velocity, we can say, “Our average velocity right now is 30, so we should probably take somewhere around 30 story points.” You can go a bit more, a bit less, depending on if people are on vacation, stuff like that. But this metric helps us to know how much work we can take.

 

Thank you for reading! If you need my help moving your teams through Agile Transformation, please click on a FREE Consultation above and lets see how I can help your business!

 

Anatoly