Monday, February 16, 2015

Orwellian Agile

There are some ideas so wrong that only a very intelligent person could believe in them. - George Orwell


Anyone reading this blog post is probably very familiar with Agile development and the Agile Manifesto The manifesto is intentionally short and to the point.  It is a counter to years of very complicated development processes used to try and control every aspect of development; usually resulting bad code, excessive spending, missed dates and unhappy users.  Companies have embraced Agile and by embraced, I mean have added layers of controls, analytics, processes, did I mention controls?  The results have been bad code, excessive spending ... well you know where this is headed.  I recently saw a document outlining a company's Agile process.  The document was more than 30 pages long and included a laundry list of standards.  These standards even defined the length of a stand-up and specified which order the Scrum Master should get updates (clockwise if you are curious).  Thankfully, the last item in the list declared that scrum teams are self organizing and should manage themselves.  Of course there  was not much left to "organize" or "manage" at that point.  I found the idea of a self-organizing team adhering to these specific standards as a great example of Orwell's doublespeak.  The funny thing is companies really believe they can be Agile, while still maintaining a command and control culture.

For agile to be successful, there is only one requirement - trust.  Command and control is the absence of trust. The document I mentioned needed only one standard, the last one.  Is is perfectly acceptable for companies to require some outputs from the teams, such as roadmaps, defect rates, etc.  These aid in planning and quality control, but dictating the internal workings of a team yields no positive results.  The actions associated with agile become rote steps that must be checked to satisfy the overseers.  Giving over control allows teams to excel and leaders to emerge.   High performing teams becoming self-correcting and anyone who slows them down can be quickly identified.  This results in a higher quality product and happier employees. But it does require letting go, something many managers find hard to do.  Realize that control breeds control.  It is a never ending process that eventually leads back to the waterfall.