Wednesday, August 2, 2017

Procrustes the Scrum Master

Procrustes of Greek myth was an innkeeper with a curious proposition: he would give you a free night at his inn, but there was a special bed you had to be fitted into in order to sleep. As you lay in the bed, if you were too short, your legs were pulled out of their sockets to make you long enough to fill the bed exactly, and if you were too tall your legs were chopped off. Rumor has it Procrustes went on to a successful career as a Scrum Master, where his skill was put to use during sprint planning.

Scrum is a good start

Scrum is a great start for teams that have been mired in Waterfall. It helps get them to start thinking of smaller batch sizes – weeks instead of years. Ceremonies such as Sprint Retrospective help establish the idea of continuous improvement.

Scrum was also useful back when introducing Agile into an anti-agile organization. It provided a set of well-defined events, schedules, activities and roles that appealed to line supervisors coming from a project management background. It also fostered an “us versus them” mentality (“Scrum Master leads and coaches organization in its Scrum adoption”) that is not really necessary now that most (all) agile adoption initiatives are top down.

Teams that depend on Ceremonial Scrum often run into issues. Having regularly scheduled ceremonies implicitly tells the team to wait until the next occurrence before doing anything. An example is the sprint retrospective. An issue or need for improvement from the first days of the sprint lingers until the retrospective occurs.

How do you deal with “leftovers” (stories started but not finished) at the end of a sprint? Do you take velocity “credit” for them? Do you stop work? Do you need to resize them? Put them back on the backlog? How much velocity credit do you take? What if a team takes on a “stretch” story and fails to finish it? How does that “count” on velocity? What about infrastructure work that takes longer than a single sprint?

When a team makes a “commitment” to a certain number of story points, what does it mean if they come in above or below? What is the difference between that “commitment” and a numerical quota? How does management “hold teams accountable” to their quota? Is there any likelihood that teams will game story sizing to make their numbers? What does management do to a team that “commits” to just one point?

Where’s the value?

More importantly, what is the value to the customer of the team spending time trying to figure this out?

Imagine you are part of a team racing Formula One, and every ten minutes you are told to stop (wherever you are on the track) and estimate how many laps, what kind of lap and against which other drivers, you will complete in the next 10 minutes. It must be exact! You are going to “commit” to it!

You have to estimate based on the risk of dealing with which other drivers in which laps where on the track. Uncertainty about weather. Doubt about how well your pit crew works.

You’ll then estimate using a Fibonacci number, derived by the team using a consensus mechanism like Planning Poker. “I voted 13 because Mario Andretti in the hairpin with new tires”. The team then “commits” to completing that many “story points” of laps based on what lap stories of previous sizes were completed in previous 10-minute chunks.

Then during the next 10-minute span of time (or, let’s call it, “sprint”) the driver knows to slow down if they would exceed the quota, or drive recklessly if they are behind. Because after all, meeting numerical quotas are more important than quality. Procrustes would be proud. Deming would not. (See his rule #11).

Maybe just try to win the race

What if, instead of spending all those brain cycles on getting the estimate right, and making commitments, your team just tried to win the race? You remember, just deliver value? The team would have no need to “game” the estimates.

What to do instead?

You could use an emergent metric, such as how many laps you actually you completed in the last ten minutes. Don’t worry about partial laps, only count those that actually completed. You could focus on finishing. If you are part-way thru a lap, finish it then start the next one. You could pay attention to improving your process, and stop managing to quotas.