Missing A Sprint Not Considered Harmful
Since I'm a sports guy, let's start with a sports analogy about Michael Jordan, the greatest basketball player of all time. Over a 15-year NBA career, Michael Jordan played in over 1000 basketball games and scored over 32000 points. In those 15 years he led his team to a total of six NBA titles.
Throughout his 15-years in the NBA, Michael Jordan made, on average, 49.7% of the baskets he shot.
Clearly, the fact that Michael Jordan missed more shots than he made isn't tarnishing his reputation as a Hall-of-Fame basketball player. Yet, on agile software development teams, it often seems that missing the target on even a small percentage of sprints is considered an indication of a dysfunctional or struggling team.
Friends, this is simply not the case.
Scrum often uses the word "failed" to describe a sprint wherein the team does not complete all of the stories they committed to at the start of the sprint. Technically speaking, it's a true description. But the connotation of the word is so strong that I've sometimes seen teams get pretty down on themselves because of it. I suggest using the word "miss" instead of "fail" for this reason. Michael Jordan missed about half of the shots he attempted, but he's certainly not a failure, and I can't imagine he even spent ANY time at all dwelling on individual "failed" baskets.
If your Scrum team is truly challenging itself to fill each sprint with the most work that can reasonably be done during the sprint timeframe, you should fully expect to miss on your sprint about half the time. That shouldn't be a problem for you, and if it is a problem for your management, you need to help them back off and see the larger picture. Here's why:
Suppose there are three Scrum teams in two different organizations working on a series of 10 three-week sprints. Suppose that the best each team can do, in terms of estimating how long work will take, is to achieve about 80% accuracy. Team A always tries to fill their sprint with what they think is three weeks of work, while Teams B and C always commit only to the work they feel fully confident they can accomplish in three weeks.
This means that every sprint, Team A is trying to do three weeks of work. Their margin of error is 20%, or 3 days. In any given sprint, if Team A completes their work inside of the range of 12 to 18 days, they are operating within the margin of error and thus filling the sprints about as full as they can be. About half the time they will complete all the committed work, and about half the time they won't. But over the course of the 30 week project, those hits and misses will average out and they should accomplish about 30 weeks of work. The management for Team A clearly gets the bigger picture that consistent execution toward achieving 30 weeks of work is preferable to always achieving every commitment along the way.
Now consider Team B. Their management doesn't have the same vision as that of Team A, so instead they insist that Team B must meet their commitment every single sprint. Team B realizes that their margin of error is 20% on each three-week estimate. So how does Team B ensure they meet their commitments each sprint? They only commit to about 12-13 days of work each sprint. That way, in the worst reasonable case they take the full three weeks to get done, and still meet their commitment. But what happens when they overestimate? In the opposite case, they finish in about 9 or 10 days and spend the last week of the sprint waiting for it to end so they can start working again. Over the course of their project, their estimate inaccuracies cancel each other out, just like they do for Team A, but because they were padding each sprint, they only did 25 weeks of work in the 30 week project. They met their goals each sprint along the way, but it cost them 1/6 of their work capacity.
Team C has it even worse. Their management insists that they fill each sprint with three weeks of work, no padding. But they also insist that they must meet each sprint commitment. That means about half of the time, Team C will have no alternative but to crunch in order to overcome their faulty estimate. If we assume Team C doesn't know until the last week that they are going to miss if they don't crunch, we can assume that about every six weeks, Team C will have to work a 50 hour week, on average, to make up for it, and sometimes as much as 65 hours. Team C might complete 30 weeks of work in 30 weeks, if they don't go get new jobs first. They didn't get any more work done than Team A, but they were a lot more stressed out and a lot more miserable for a good five weeks of their project.
Imagine if Michael Jordan's coach had told him, "Michael, I want you to score, but you are expected to make every shot you take. If you take a shot and miss it, you're gonna get benched." It's easy to imagine how this ridiculous situation would play itself out: Michael Jordan would never have become a great basketball player because his fear of missing a shot would have kept him from shooting nearly every attempt he otherwise would have taken.
Like Michael Jordan, your team can only become great if it is safe to fail. If you are missing every sprint, that's a problem that needs correcting, but I would be equally as worried about a team that hits every sprint. A great team should hit their sprint about half the time, and they don't get down on themselves when they miss. After all, it's the finished product, not the individual sprint, that the customer pays for. Missing half your sprints on the way to delivering a great product on time is a fantastic recipe for smashing success.
