Since the publication of the agile manifesto in February 2001, the project management segment has been taken on by a growing wave of adoption and improvement of methods and best practices in agile project management.
Currently, the tricky question project managers are asking is:
“What approach should I use when managing my projects?
Agile or Waterfall?”
But what, after all, is the difference between project management agile and traditional?
Which projects are best suited for each model?
What are the main characteristics of each approach?
We are not talking about a style of project management or a specific approach, but of your company’s mindset.
This is what we will discuss in this article… so, keep reading.
Let’s start by clarifying a fundamental point: Agile is neither a methodology nor a framework. It’s a mindset. This mentality is separate from any specific structure or methodology.
In the Agile Manifesto, Agile is defined by the four values expressed plus their 12 underlying principles.
There are many methodologies and frameworks that are aligned with this mindset like Scrum, Kanban or Extreme Programming.
Agile seeks to reduce the time for initial analysis, preparation and research of the prerequisites to go directly to the production phase of the project.
The most important feature in an Agile environment is to ensure customer satisfaction with fast and functional product delivery. The Agile is all about iteration and seeing what works and what doesn’t.
Being “agile” does not just mean using Agile methods, but having teams with ‘agile skills’ such as culture, experiences and resource competence to work in a dynamic and innovative project environment.
Some advantages of adopting Agile instead of Waterfall:
Consistent and regular customer engagement – In Agile, customers should actively collaborate throughout the entire project’s process. On waterfall, customers are more involved in the initial phase of the project
Promoting changes instead of following a project plan – Being responsive is the core of Agile. Changes in the scope are expected and have less impact on the team than Waterfall.
Incremental process – In general, the risk is lower, as the product (or service) you are building is reviewed (and validated by the customer) as you progress. Agile can quickly produce a basic functional version (or MVP – Minimum Viable Product) using processes based on successive iterations.
Waterfall (a.k.a Traditional mode)
In 1970, Winston W. Royce presented the Waterfall model as a way to transform a risky development process into a linear process that would eventually provide the desired product.
This model is also considered a model driven by the plans – plan-driven method.
This method is characterized by the definition of requirements, design and construction of the project using well-established processes and which are continually improved by the company.
In general, there are five phases on waterfall method
Integration and testing
The product of one phase serves as input to the next phase. This means that a phase can only begin when the previous phase is completed.
Some advantages of adopting Waterfall instead of Agile:
Detailed plan upfront – a complete view of all activities, resources and costs can be defined at the beginning of the project. This will make it easier to approve the project resources in addition to providing a defined start and end date.
High monitor and control – A timeline can be set with deadlines for each stage of development and the product must go through every stage of the development process until its final delivery.
Easy management – It is easy to manage due to the rigidity of the model – each phase has specific results and documentation besides going through a review process.
Agile vs Waterfall – which one to choose?
The traditional method as well as the Agile method can be effective if adopted appropriately. It is the characteristics of each project that will help you to define which methodology to choose.
The great advantage of agile methodology over the traditional mode is the ability to “learn” the solution while improving it with each new version.
In traditional mode, if we decide to change something after the end of the project, the cost and effort will be much greater.
As you can see in the diagram below, the waterfall model is most appropriate when its scope is fixed and the cost and time vary.
The agile model is more appropriate when its resources and time are fixed but its scope is variable.
When you should use AGILE:
You expect many changes in your project requirements.
You have a team responsible for the entire process during the project life cycle.
Your client is fully involved in the project
When you should NOT use AGILE:
Low or no customer involvement in the project. Some clients simply may not have the time or interest in this type of participation.
You need to have a detailed project documentation
You have many interfaces or dependencies outside of the basic product you are developing.
When you should use WATERFALL:
You require customer participation only at the beginning or at some milestones.
You have a clear scope definition at the beginning of the project and no changes are expected.
You need to deliver detailed project documentation or work under a supervised contract.
When you should NOT use WATERFALL:
Project scope is not totally known in advance.
When you expect frequent changes in project priorities or functionality
When you can quickly deliver small functionalities of the project adding value to the customer.
Take a look on this article that list five project certifications (Agile or traditional) that will boost your career.
NO SO AGILE, NOR SO WATERFALL
THERE’S NO ONE-SIZE-FITS-ALL SOLUTION
Did you like it?
share it Didn’t you like it?
comment or leave your thoughts to improve it