Next Generation Agile Management
by Murray Cantor, John Heintz, Steven Sherman
Interesting Projects are Uncertain
Software can vary from very creative to very routine. Routine work is dealing with small code updates that is especially common with the modern continuous delivery environments. Creative development can involve adding entirely new features to an existing system or even a new system. These are less common but can, when successful, add more value.
There are several key ideas that need to underlie good management of uncertain efforts:
‘Plan your work and work your plan’ is misguided
When I started project management, we were told to “Plan your work, work your plan.” The concept was to gather all the information you needed to plan the work in fine detail. If you built the right plan, the project should go like clockwork. Ideally, there were no decisions to be made. If things didn’t go as planned, I was a bad project manager. Following this edict is known as following the ‘waterfall’ process. Also, at the time software was considered an ‘immature field,’ because almost no software projects went as planned. However, the problem was not that it was software. The problem was that the project management practices at the time did not consider the amount of invention and innovation required to deliver the product. In fact, any innovative engineering project rarely kept to a plan. Some well-known civil engineering examples include the Boston Big Dig and the Denver Airport. A big IT example is initial failure of the ACA portal. There are lots of others.
Goal-Driven PDCA is the better alternative
Over the last decades, there have been several alternatives to the waterfall process. The essence of all these processes can be found in the Plan Do Check Act (PDCA) cycle.
Figure 1. The PDCA method
The idea behind the cycle is that once you have created the initial plan, you would:
1. Start carrying out the plan
2. Check to see if you are progressing toward to your goal
3. Based on what you learn in the check step, take some action to better meet the goal
4. Update the plan
You periodically repeat this cycle, steering the project to successfully meeting this goal.
Each cycle may be called an ‘iteration,’ or in Agile, a ‘sprint.’
This method works for innovative efforts when, during each cycle, you ascertain the needed information about the effort. What information you gain depends on the particular project.