A commenter one of the Scrum posts inquired if I could clarify the use of story points so here’s my best shot at it. Story points are an abstract unit of measure that aren’t formally/mathematically tied to any unit of time. 3 different teams in my shop all have different weekly story point velocities and the scales that two fo the teams use differs by a factor of 10. There is no contradiction here because what story points offer is a way to estimate that works for a particular team. The goal is that over a period of months, assuming the team composition and the type of work is more or less constant, the team will establish an average velocity measured in their abstract story point units.
Achieving some degree of predictability is the holy grail of software development but there are, of course, gotchas in getting to this point. The first trap is assuming that estimates really are some form of concrete prediction. In one of Mike Cohn’s books (Agile Estimating and Planning, I think) he offers data that estimates of software stories vary from 60% to 160% correctness – this is a very wide variation and jibes with my experience. Certainly, more experienced developers with a solid grasp of the problem domain are more likely to produce estimates that are close to the real labor expended but there is variability and things to be wary of with this claim too. Experienced developers can’t always break stories down into small, granular bits and the larger the chunk the less accurate an estimate is likely to be.
Even when stories are appropriately sized an experienced developer is sometimes more likely to over-engineer the solution and produce more fluff and features that aren’t actually part of the story. So, the estimate might be reasonable but the predictability goes out the window due to technical exuberance. The important things to remember about using story points for estimating are that they are an estimating tool and don’t represent a guarantee of any kind. Second, the usefulness of the points grows incrementally with the length of the historical record you’ve assembled. These data are the source of the velocity report contents.
Post a Comment