[From the Archives] How much does a Story Point cost?

I‘ve been blogging about Scrum and Agile software development since 2005, and you can find my older work on my personal website. Some of the material has proven to be very popular over the years. So, to share this the material with a wider audience I’ve decided to start a series featuring the best of my material. Let me know in the comments if you find this interesting or useful.

I‘ve recently been coaching a team that has taken particularly well to Scrum. After a few iterations the project team quickly settled down into a regular rhythm of producing software. The ScrumMaster (Ken) dutifully recorded the teams Velocity [the number of Story Points completed per iteration], in addition to some financial metrics. This included the cost of each iteration (also known as the burn rate).

At some point the Ken decided to calculate the cost of each story point. This is a brief description of what he did and the results.

The Story Point Cost
The cost of each story point was calculated using a simple calculation; cost per iteration divided by the number of story points per iteration. For simplicity I’ve called this the Story Point Cost.

Story Point Cost = (Cost per Iteration) / (Story Points per Iteration)

The team was estimating Story Points using a linear scale (0 through 5), so there was no complicated mathematics. If you’re using a Fibonacci or exponential scale then you may wish to use something more sophisticated. I should also mention that the cost per iteration (burn rate) was an approximate calculation and should only be considered as indicative of the true cost.

Here an image (WordPress doesn’t do tables) of the results tabulated after the ninth iteration:
StoryPointCost(Tabulated).PNG

And a graphical representation of the same data:
StoryPointCost.PNG

What is interesting in the graph above is the rapid decline of the Story Point Cost after the first iteration. Clearly there was something happening to the team that led to this dramatic decline.

I was a part of the team at the time, and my recollection was that the team did a lot of learning (about Scrum) during that first iteration. I’m sure there was some synergy due to closer collaboration between team members but as the team had previously worked together this was unlikely to account for the magnitude of the decline.

What can be done with this information
So what use is this information? The most obvious use is in estimating the final cost of the project by multiplying the total estimated story points by the high and low values to calculated a range. For practical reasons, I would have discarded the very first value simply because it’s so far outside that of the others.

Finally, is it valid to compare the Story Point Cost between two different terms? Absolutely not. Different teams have different abilities, ways of estimating and work habits. The consequence of this is that different teams will have very different results in both their estimates and Story Point Costs. As a direct example of this, here are the results for a different team. Firstly the tabulated data:
StoryPointCost(Team2-Tabulated).PNG

And the graphical data:
StoryPointCost(Team2).PNG

Summary
I’ve looked at a simple calculation that uses empirical data to calculate the Story Point Cost. Provided that you are using a linear scale for estimating Story Points, calculating the Story Point Cost may be a quick and easy way to provide the Product Owner with a cost range for a given project.

I’ve also presented some simple graphs to show how the Story Point Cost changed over the duration of the project.

, ,

Comments are closed.