Ideally, agile principles should be applied long before a project reaches development.
I’ve written recently about how PowerPoint can be used as an effective lightweight alternative to a traditional PID (Project Initiation Document).
I’ve also posted a sample template for an Agile Project Initiation Presentation (PIP).
In these slides, the first handful of slides can be done right up-front, just to provide some basic information about the vision, in order to get some initial funding (‘seed money’) to proceed into an ‘elaboration phase’. The purpose of the elaboration phase is then to get into more detail, in order to understand the project and its costs better, before requesting the full funding required for the project.
In traditional projects, this elaboration phase would include detailed analysis, a full specifcation, maybe a complete technical design, and a detailed project plan.
In agile projects, the elaboration phase would instead focus on identifying the user stories for the product backlog (not detailing them), prioritising the backlog, high-level process (as-is and to-be), high-level estimates, high-level architecture, outline release plan, project structure, and any key risks, etc.
In many ways it’s similar to a traditional project approach, but it should be much more collaborative, inclusive, timeboxed, highly visual and lightweight; not in word form and not detailed. And not months to complete.
One of the common problems with project elaboration phases, in traditional project management methods and with agile methods, is that they often need to happen before a project team is properly formed, and therefore before all the key roles are in place. This causes delays and can cause major problems for the project further down the line.
These slides from ThoughtWorks describe some of the typical problems really well, and offer a potential solution. The idea is simple. The idea is to apply agile principles early - right from the very inception of a project. Even before the project is broadly defined, agile workshops can facilitate a gathering of all the key roles required to elaboarate a project quickly and effectively.