Agile is not a project management methodology but Agile principles can and should be applied to the management of projects and in the right circumstances the various forms of Agile offer an effective way to develop software. In their original design, Waterfall and the various forms of Agile are software development methodologies, not project management methodologies, and effective project management adapts to the processes being used to develop the project’s deliverables.
One common misconception among IT professionals is the assumption that the PMBOK® Guide approach to project management and the waterfall software development methodology are synonymous. Nothing could be more wrong.
Certainly you can manage a waterfall development using the PMBOK® Guide processes but nothing in the PMBOK® Guide mandates developing a fully detailed project plan before starting work on development. All the PMBOK® Guide requires is the current phase is planned before starting work. This is absolutely compatible with the Agile approach to iterative development.
Another misconception is that any new software development is automatically a project. Projects are temporary endeavours; this means temporary teams. If your IT shop is set up with stable teams working on a prioritized list of jobs using scrum or something similar, it is far more likely to be operational work rather than project work, for more on this see: De-Projectising IT Maintenance
With these misconceptions cleared, there seem to be two key areas for discussion.
What are the differences in the way project management processes are applied in an Agile project compared to a waterfall project? Some thoughts:
- There is the need top select the right projects for Agile, for more on this see: Selecting the right projects for Agile
- There is a need for a much lighter “touch” managing an Agile project; for more on this see: Managing Agile Projects
- There is a need for a higher level of trust in managing Agile teams, for more on this see: Advising Upwards
- There is a need for robust change management and configuration management to track the evolution of the Agile project
- There is a critical need to develop the correct strategy and architecture at the beginning of the Agile project
Can traditional project management learn from Agile? Some of the trends in Agile seem to have wider application in any project involving knowledge work, including:
- The need to trust knowledge workers more than manual workers
- Success measured by customer satisfaction rather than quantitative outputs
- The need to keep the client involved
Our discussion paper Thoughts on Agile looks at theses questions in more detail. The paper is a ‘work in progress’ aimed at business managers who are new to the concepts of Agile (ie, it is not intended as an Agile manual for IT professionals). Any comments will be appreciated. The paper can be downloaded from: http://www.mosaicprojects.com.au/PDF_Papers/P109_Thoughts_on_Agile.pdf