Lately, I’ve seen a common antipattern arise across several different agile teams. The pattern usually begins likes this: a team forecasts a certain number of points per iteration and regularly completes that same number. In fact, if you were to plot the team’s hit rate (or number of points completed over the number of points forecasted), then you would see a fairly straight line at 100%. As an example, the plot below represents a team that, after an erratic first few iterations, has settled down to a 100% hit rate.
At first glance, it looks like the team is right on track. But, as the team draws closer to the end of the release, everyone starts to realize that the picture isn’t quite as rosy as they first thought. In fact, it becomes obvious that the team is not on track to complete all planned work in time for the release, even though they’ve consistently completed the same number of points that they’ve forecasted. How could this happen?
Finding the churn
This can happen when the team regularly accepts new work during an iteration that takes precedence over the work they had originally planned. This new work, which can often take the form of high-priority bugs or critical customer issues, is estimated and added to the iteration alongside the existing work. The team then shifts their focus to this new work, pushing aside the original work that they had worked so hard to plan.
If the team works diligently and to their expected capacity, then they’re still likely to complete the expected number of points. At the end of the iteration, the team may even celebrate completing the right number of points…unaware that they’ve actually completed the wrong points.
Catching the problem before it’s too late
One of the most striking things that nearly all highly effective teams have in common is a small—but reasonable—set of clearly defined goals for each iteration. Rather than obsessing over secondary metrics, such as the number of stories closed or the total number of points completed, successful teams measure their success by their ability to deliver on the goals they set for themselves at the beginning of the iteration.
By defining clear goals that state exactly what your team should accomplish in each iteration and then reviewing your team’s progress towards those goals during each review, you can quickly identify whether your team is completing the work they expected and whether their plans are on track for the entire release.
Sticking to your goals
Working diligently but still failing to deliver the work that’s expected of them is a common problem that can affect many teams who are new to the more responsive nature of an agile approach. But by focusing clearly on the goal the team has set forth for their iteration and not getting caught up in secondary metrics such as points completed or stories closed, all teams can be sure that they’ll stay on track to deliver the value their organization expects.
Jeremy Jarrell is an agile coach who helps teams get better at doing what they love. When he’s not mentoring Scrum Masters or Product Owners, Jeremy loves to write on all things agile. You can read more of his thoughts at www.jeremyjarrell.com, see his videos at Pluralsight, or follow him on Twitter @jeremyjarrell.