I do a lot of consulting on the adoption of agile management techniques. What I keep seeing are the same issues popping up time and time again. While lots of good information has been circulating about agile project management for the past decade or so, misperceptions abound.
One problem that I find puzzling is the frequent appearance of misunderstandings about the need for “best practices” on agile projects. Yes, agile methods promote different techniques for requirements management, scope management, estimating, scheduling, communications, and quality management. However, these techniques are not new – many were developed in the middle of the last century and have been often used on large, complex projects. Agile management frameworks simply gathered together the existing “best practices” for complex or high-change projects. So, saying that agile methods are not “best practices” is false – agile methods are one set of “best practices” for managing projects with certain common characteristics.
This battle between factions with their own methodology preferences does not surprise me, however. The issue that really puzzles me is the confusion over best practices for project startup.
In most organizations, there are certain management control points (also known as “stage gates”) to manage the funding allocations and project approvals. Usually it follows a pattern something like this:
There is a lot of misunderstanding about where agile management techniques fit into this model. For an agile team to come up with its initial list of scope (expressed as ‘user stories’) there needs to be some requirements capturing and analysis and some high level solution design work completed so that the project team knows the solution for which they are providing development estimates. And, these estimates feed the construction of an initial schedule, called a ‘release plan.’ This work needs to get done in an initial iteration, often called ‘Iteration Zero’ or ‘Sprint Zero.’ If you think about it, you’ll see that this is the work we normally do to pass Gate 3 – the development of a proposal for funding of the development work of the project.
Some individuals have misunderstood how agile projects work in the real world. They believe that the project should start immediately with developing a solution in the first iteration. Some even say that doing up front analysis and design is going against agile principles. This could not be further form the truth. No matter whether you are following serial/waterfall-type management methods, or agile management methods, the work that needs to get done at the start of a project does not change – best practices are still best practices. You cannot build a plan (even an agile one) without some estimates. And to estimate, the team members need to understand the scope they are estimating to build, and some characteristics of the architecture/design of the solution. And who can prepare a scope and design without knowing at least the high-level requirements? The difference is not in the nature of the work that needs to be done, but rather in the level of detail needed in this first instance. Most serial/waterfall teams will do much more analysis and design work in this initial proposal phase than agile projects, mostly due to the difficulty of incorporating changes later in the serial/waterfall processes. Oddly, the business cases for serial/waterfall projects still often present ranges in their budget and schedule estimates, even with the extra analysis and design work that is usually done.
Regardless, best practices declare that some up-front work needs to get done before estimating and planning. Both agile and serial/waterfall methods require that this work get completed before the real solution development work begins. Many agile teams seem to forget or deny this and end up in trouble. Unfortunately, I find too many of them in my troubled project recovery consulting work. This is not a flaw in agile project management methods, but rather one in maturity in understanding the nuances of how agile methods get deployed in real-world scenarios. Classroom learning is not enough – for initial attempts and using agile methods, organizations need some agile-experienced help to coach the teams through the process.
Kevin Aguanno is an Executive Project Manager who is certified by IBM, PMI, and the IPMA. He is a specialist in troubled project recovery and in agile project management methods, authoring many books on the topic. He is also the editor of the AgilePM Newsletter (www.AgilePM.com).
455 boulevard de la Gappe, Suite 201
Gatineau, Québec
Canada, J8T 0E1
Phone: (819) 410-0427
Box 58043, Rosslynn RPO
Oshawa, Ontario
Canada L1J 8L6