How To Manage A Chaos Machine
They assumed that, if a project was intensely and minutely planned, everything would naturally and inevitably proceed in an orderly and deterministic way. … And when projects did go off the rails, their response was to stop everything and replan. Sometimes that works, but sometimes it does not and managers of today’s projects must have more flexible approaches to managing changes in their projects. Modern agile project management approaches have been developed to deal with these complex and unpredictable situations. The Chaos Machine, Phillip G. Armour, Communications of the ACM, January 2016.
One of my most interesting job interviews was when I argued with my interviewer, a VP for software development whom if hired I would take over from, on whether software development was a “repeatable process” or not. He was adamant that it was not. He maintained that each project was unique and hence unpredictable. I countered by describing how I had taken chaotic appearing software development organizations and turned them into predictable and reliable project delivery teams. Needless to say, I didn’t get the job.
The VP left me with the feeling that he didn’t want anyone coming in and delivering projects on time because he had convinced his bosses that this was just not realistic. If what he believed was true then he should not have had any problem with me as I was certainly — by his logic — not going to be able to do it and it would have been further proof of his wisdom and insight. Instead he seemed to earnestly be looking for someone who was going to echo what he had been saying.
For more see Repeat After Me: Software Development Is A Repeatable Process
Working against the ingrained beliefs and bad assumptions of an organization’s system or culture is often the hardest part of doing a good job. Everyone just knows how things must happen and they are uncomfortable when someone tries to do something different. One of the best approaches I’ve found for overcoming these challenges is to understand their chaos better than they do.
For example, I’ve taken waterfall planning organizations and studied every last documented project they had run. Without suggesting they change the way they managed their projects I just showed them instead how they were consistently underestimating their projects (which is typical). The simple solution was to use their past performance (e.g., the average) as their project duration and then work like crazy to complete the project, which is what they already knew how to do. Their “chaos” vanished without changing their overall methodology. They went on to predictably deliver their projects when they said they would.
For more on deep understanding see To Be Masters Of Our Universe We Need To Deep Dive
The lesson learned was that often the chaos came from some bad habits or bad practices. Once that was resolved then the remaining chaos, and there is always some chaos, was nothing more than the normal activity of a hard working organization. Yes, there was always a lot of room for improvement and the upside was that the organization now had the breathing room to both improve (e.g. a different methodology) and deliver the project when needed. When a new methodology was tried without eliminating the old bad habits then we inevitably just got the same chaotic and unpredictable appearing results.
Also see How To Avoid Optional Chaos In Your Project
What do you think is the source of chaos in your project or organization and what change do you think would reduce it?