PRINCE2, Waterfall, and Agile are project management methodologies, each with different themes, principles, and processes. So why does this matter? For starters, a project management methodology is a step by step method for managing a project. It provides the Project Manager with a proven framework, guiding principles, and standardized templates for managing a project. The idea is to be able to apply established methods for successfully managing a project. The mechanics among methodologies will differ, but the end goal remains the same; bring the project in on budget, in scope, and within the specified time frame while meeting all stated Project Objectives.
Agile
In recent years, Agile methodology has become very popular among many software development teams due to the increased efficiency it brings about. Most of the companies were unable to design and create desired products within optimum time and cost due to their use of traditional project management methodology. By going the Agile way, they were able to transform their processes completely and change the way teams viewed project management.
Traditional (or waterfall) project management, majority of the times, follows a fixed sequence of
Initiating —-> Planning —->Execution —-> Monitoring and Controlling —-> Closing
Here, the next process can only begin when one process is complete. Mostly, this method is best suited for projects that anticipate very few changes in Scope from the start to finish, like manufacturing a billion dollar Space Station. The requirements are collected during Planning and are fixed, only Cost and Schedule may vary. Since there are minimal changes in Scope, the probability of the budget or time estimation going haywire are minimal.
Agile is a software development approach where a self-sufficient and cross-functional team works on delivering continuously through iterations and evolves throughout the process by gathering feedback from the end users.
Agile is a set of principles that encourage flexibility, adaptability, communication and a working software over plans and processes. These are precisely captured in the “Agile Manifesto”.
When we actually apply Agile methods and methodologies, these cater all the needs of a software development industry right from the software design and architecture to development & testing to project management and deliveries.
Some of the most popular Agile frameworks are Scrum, Kanban, Lean and Extreme Programming.
Agile is all about developing software quickly based on customer needs. It is then changed according to the feedback the customer gives before going onto the next stage in development.
This type of project begins by first outlining the major features of the software the customer desires. These are known as user stories and the developers assemble them into ‘iterations’, based on importance. Teams work in sprints to finish each iteration within a set time span, usually measured in weeks (2-4 weeks). Each sprint aims to create a working software the user can trial, then advocate changes so that it suits their needs.
Waterfall (Traditional Project Management)
A waterfall development project follows a traditional and linear approach. The first stage is gathering requirements, which is usually an extensive process as the developers won’t produce working software for customers to try out in the middle of the project. They want to understand up front exactly what users want the software to look like.
First the team needs to understand up front exactly what users want the software to look like, what features they want to incorporate. After this, the developers will design the software, giving themselves a detailed template to work from. By working in accordance the plan, the result is the actual development process, which is the next process to be followed, will be smoother and hit fewer obstacles.
Once they’ve built the system, developers enter the testing stage – this is where they make sure the software actually works. This sees developers debug the system, sometimes involving users who try it out. After that, the developers go into maintenance mode, installing, supporting and maintaining the software on behalf of the customer.
Prince2
‘Projects in a Controlled Environment (Prince2)‘ is a structured project management methodology and a practitioner certification program, which emphasizes on dividing projects into manageable and controllable stages. It is adopted in many countries worldwide, primarily in the UK, western European countries and Australia.
Prince2 is composed of 4 integrated elements: Principles, Themes, Processes and Tailoring to suit the needs of the project environment. There 7 principles and these are the building block, applying all 7 principles to a project is one of the requirements required to consider a project a ‘PRINCE2 project’.
Also, there are 7 themes, which are aspects of project management which must be continuously addressed throughout the lifetime of the project. Themes are very much like Knowledge Areas in the PMBOK® Guide.
The themes are applied throughout the 7 processes, which describe who is responsible and accountable for what, and when. PRINCE2 processes are similar to Process Groups in the PMBOK® Guide. Each PRINCE2 process is divided into a number of activities. There are 41 in total. These activities closely resemble the 49 processes in the PMBOK®Guide.
Agile vs Waterfall vs Prince2: Advantages and Disadvantages
Agile Advantages
The main advantage of Agile is that it involves customers at every stage of development. With the users constantly providing feedback on working software, the project is much more likely to end up meeting their needs, which may develop as the project progresses. Unlike waterfall, if a customer requests a change, agile developers can easily make it.
This approach also delivers working software more quickly to the customers, making it ideal for projects in which speed is of the essence.
Another advantage in agile is the concept of continuous improvement and focusses on reducing wastage.
Agile Disadvantages
The Agile projects are intensive for customers as their involvement is required throughout. The customer must be enthusiastic and engaged in the project as Agile projects can fall apart if the customer isn’t interested in working closely with developers.
There cannot be a blueprint of what the final deliverable will be. This makes it harder to gain commitment to the project by stakeholders at the early stage.
Waterfall Advantages
By focusing on quality over speed, waterfall is well-suited to projects which are not urgent in nature with customers who know exactly what they want their software to do. The extensive testing period can result in fewer bugs when the project is complete.
Waterfall’s strict linear process means a project is likely to be finished on time and within budget, and with regular milestones, it is easier for both developers and customers to track its progress.
Waterfall Disadvantages
In waterfall development, once the course is set, any deviations could result in increase in Cost and Schedule. Unlike agile, waterfall doesn’t involve customers every step of the project as the Requirements are collected at the beginning of the Project during Planning.
This means the waterfall approach works best when customers have clear ideas about what their software needs to do. If users have only a vague idea, or the project takes a long time to deliver, the finished software often won’t need user’s requirements, which may change over the course of the project.
Similarly, once a waterfall project hits the testing phase, it’s very hard to make changes to the software. Customers will have to pay more money and wait longer if they want to make changes at this stage.
To avoid this, waterfall developers sometimes build in customer feedback points between the stages outlined above, to adjust the project as they go.
Prince2 Advantages
PRINCE2 provides a single standard approach to the management projects, which is why many government and global organizations prefer this option. It is also favoured because of its ease of use, which makes is easy to learn, even for those with limited experience.
The single greatest strength of PRINCE2 is its expectation that the major decisions about a project must be based upon a robust business case. This means that a clear understanding of the benefits versus the costs, timescales and risks is required. This understanding is developed prior to the project and is refined in more detail during its initiation stage. It is then maintained and updated on a stage-by-stage basis as revised forecasts for the project become known.
A second major strength of PRINCE2 is its detailed and wide-ranging description of multiple project management team roles, there is a whole chapter providing detailed descriptions of the responsibilities for a total of 9 different project management team roles.
Prince2 Disadvantages
- In comparison with the PMBOK® Guide, PMBOK® guide provides a comprehensive range of useful tools and techniques, a total of 132 tools and techniques and the Schedule Management Knowledge Area alone lists 25 different tools and techniques in comparison to only about 40, which are referred to in the whole of the PRINCE2 manual. In this regard, the PMBOK® Guide can act as a great reference manual for project managers wanting to learn about the many different tools and techniques.
- Procurement Management which is not covered at all by PRINCE2.
- Some believe that PRINCE2 does not address the importance of “soft skills” for a project manager.
Finally, the methodology we choose will ultimately depend on the needs of our project. It may even make sense to consider a hybrid approach (a combination of Waterfall, Agile and Prince2) depending upon the project that is being undertaken.