Thursday, April 13, 2017

Beyond Cargo Cult Agile

Many organizations trying to become “agile” never get beyond the imitation and ceremony stage. They go through the motions hoping that following the forms will give them the results they want. 

They don’t go beyond the forms to think about why certain practices are recommended, and how to apply them to this team, or how to improve on those standard practices. 

It is a rare organization that looks at the leadership behaviors and management systems that drive unhelpful team attitudes. 

And most large IT companies often have a “playbook” or an “Agile SDLC” document. Rather than being a map to help teams explore, corporate culture makes it a straitjacket that must be followed exactly.

For Example, the Stand Up meeting

One example is the Daily Stand Up, or Daily Scrum. Each team member answers the three questions: Oh sorry, wrong three questions. Those might actually be useful. 

Rather, teams are supposed to answer, what did you do yesterday? What are you going to do today? What impediments do you have? 

This often devolves into the “ice cream for breakfast” meeting. Everyone just thinks of the most recent thing they did (that they can remember) and talks about that.


Some of it is the Memento Effect

A major culprit is the insidious Timesheet Culture: Accounting has invaded development and wants to know “utilization” – people have to “estimate hours” for a task, then “track hours” and then “re-estimate hours” if there is still work left to do. 

The Timesheet Culture demands individual silos of work and prevents any kind of pairing or swarming

The standup becomes a "gotcha" to invent a rationalization for “why did you charge 8 hours to this project” (Accounting has not allowed the Scrum Master to make an effective transition from being a Project Manager). 

And then there is the dreaded “assigning work”, where team members have little or no choice in what to work on.

But the underlying reason is that the stand up as it is has no value, it just another “ceremony” the team has to endure. 

Is there anything more boring than a status report?

How to fix it

The first question I ask teams is, what is the purpose of your Information Radiators? 

Shouldn’t an Information Radiator radiate maybe, I don’t know, information? 

How about if that information reflected the changes in status due to the work you did? 
What if the radiator was structured so that “at a glance” it was obvious what is different today from yesterday? 
What if everyone updated the Information Radiator as the work progressed? 
And what if part of the team working agreement was to look at the Information Radiator before the stand up? 

In other words, what if before the meeting everyone already knew what the status of work was?

Then let’s change the stand up to make it meaningful to the team:
  1. What did you learn about the work yesterday? 
  2. What did you learn about how to do the work? 
  3. What did you learn about ways the team can improve?

(“Learn” includes raising questions about standards, processes, as well as the work)

Or better yet, use the time to consider the work as a team:
  1. What is the most important thing for the team to work on today? 
  2. What is the key improvement the team should work on today? 
  3. What does the team need to learn today?

Or perhaps:
  1. What process needs to be improved? 
  2. Where is quality at risk? 
  3. What experiments should the team conduct to explore improvements or mitigate quality risks?

You may recognize these ideas from Lean: Focus on the process and getting value to the customer as a team – eliminating waste and improving flow.