Project Management in an Agile age
There is a lively discussion going on about project management in software development. In this Agile age, is project management still relevant? Scrum (I will base my comments on Scrum) and other agile development methods do not have a project manager role. So what happens to all those project managers out there?
They split up. The role formerly known as Project Manager is split into a Product Owner and a Scrum Manager. Changing a title is easy, changing the ingrained way we work is anything but. It is by far the most challenging aspect when changing over to an Agile development method.
The traditional way of developing software (Waterfall) is based on the idea that you design and map out everything you are going to build before you begin. So a project manager can map out the development schedule, build a Gantt chart and tell the stakeholders with confidence that the software solution will be delivered on such and such a date, costs this amount of money and requires that number of hours of work. The Project Manager controls what happens and when.
Agile methods (Scrum in this case) starts with an overall idea of what needs to be built and uses self-organising teams to develop the overall product in short cycles (Sprints) that create small functional blocks that can be used immediately. The Product Owner keeps an overview of the functionality and the Scrum Master keeps the development team working smoothly.
So what are the similarities?
The common denominator of both methods is of course the goal. The aim is to develop a good software solution and do it in the most efficient way possible.
Both methods start out with a vision of what is needed. Terms like a Project Initiation Document and Project Plan (traditional) and Vision document (Scrum) contain roughly the same information. The only thing that differs is the level of detail.
Both methods are cyclical, especially when you are using Prince2 as a project management method. In Prince2 it is called a Stage and in Scrum it is called a Sprint.
In some ways, the methods also show a great deal of similarities. For instance, each Stage ends with a Lessons Learned Log and a Quality log. Every Sprint ends with a Retrospective meeting to record lessons learned and how to improve.
The main reason more and more organisations are moving towards an Agile development method can be found in the differences. Within Scrum, there is a general overall plan, not the detailed and fairly fixed master plan of Prince2. With Scrum, the product grows “organically” instead of the predetermined outcome that has been locked in by the Project Plan. This increases the flexibility of the Scrum method. Often during development the functionality and requirements change, sometimes by quite a large shift. This is caused by the deeper understanding and insight the stakeholders acquire using the first functionality of the product. As an added benefit, the customers have a much higher commitment and trust in the system.
The biggest change and therefore the change that gives the most trouble, is the change in management. By definition, a Scrum team is self-organising and flexible. There is no project manager who is the “boss” over the team. The team, together with the Product Owner, agree at the start of every Sprint, which functionality will be built. The main determining factor here is this; how much value will this function add to the business? No management decisions, no outside control but simply, what will add value? This is why, with Scrum, you get an application that adds value almost straight from the start. With Waterfall you get a complete working application delivered at the end of the project. Not very flexible. This is the difference that makes the difference.
So how is project management implemented? Because after all, it is a project and it does need to be managed. The role of project manager is split down the middle. The Project side is handled by the Product Owner, while the Manager side is done by the Scrum Master. The Product Owner is the person that talks to the stakeholders (Customers, Line management, etc) and monitors the functionality. The PO represents the customer in the Scrum meetings. The Scrum Master is the people manager, manages the team, the procedures around the Sprint and controls the build speed and results. Software development is more and more becoming a team sport.
So, what is the conclusion, is a Project Manager for software development a thing of the past? Yes, the Project Manager is no more, but project management is very much alive. It has become much more flexible, much more customer facing and indeed, a lot more fun to do. The more senior Project Managers, especially if they are flexible enough, will become Product Owners or Program Managers (managing several Scrum streams and PO’s) while others will feel more at ease managing the development teams as a Scrum Master. The flexibility and self-empowerment within the Agile development method simply means that there is a bright future ahead for our current Project Manager.