Project Management: Agile and Waterfall Explained
By Karim Radwan, CAIA, PMP
Since the Agile Manifesto was written in 2001 by a group of software practitioners, Agile approaches have been taking over the project management scene at a steady pace.
Some say Agile is a mindset, not a methodology. Others believe Agile is the silver bullet to solve any project management challenge, while doubters do not want to hear about Agile at all.
Adding to the confusion, there is no shortage of technical papers elaborating on the various methodologies. Throw in the rich taxonomy of terms such as Waterfall, Lean, Agile, Scrum, XP, Sprints, phases, increments, and releases, and it’s easy to get lost in the terminology.
This article aims to provide clarity on the key attributes and applications of Agile and Traditional Project Management methods using simple examples. We’ll use a fictitious but realistic journey of a young couple, but let us first clarify key project management terminology.
What’s the Big Picture?
As stated in The Agile Practice Guide published by the Project Managements Institute (PMI) and Agile Alliance, Agile is a blanket term for many approaches as illustrated below:
Figure 1: Agile is a blanket term encompassing several methodologies: Scrum, ScrumBan, Crystal, Agile Unified Process (AUP), Extreme Programming (XP), Feature-Driven Development (FDD), Dynamic Systems Development Process (DSDM). Source: The Agile Practice Guide, PMI and Agile Alliance
In this article, we will refer to Agile approach as a generic term, as we are not discussing a specific approach such as Scrum or Extreme Programming (XP).
Now let’s see how our couple manages a life project and valuable lessons we can learn.
Waterfall in Practice
Owen and Ava are a newly married couple who are planning to build their dream house. Many steps must be completed before they can eventually move in. The ground needs to be dug out, foundations laid and levelled, walls built, electric cables pulled throughout the house, windows installed, flooring and tiles fitted, and more. The interior will need to be meticulously designed and furnished to their taste.
To tackle this herculean challenge, the couple hires an architect, Denise who develops a detailed plan containing the specifications for every area of the house. The couple formally accepts the plan, and Denise provides a schedule with dates corresponding to each milestone, from the first day of digging to the last day on which they will receive the keys to their house.
The expected outcome of this work is crystal clear. Denise has built similar houses before, and our couple knows what the house will look like and the functionalities of each room.
Architects generally stick to the plan as far as the law of physics allow. Changes are mostly unwelcome. The couple would certainly not appreciate a missing room, or the power sockets incorrectly installed. Similarly, the architect would not appreciate if major changes are made, midway.
There is also a clear sequence for the different steps that will take place. Foundations must be set before building walls, walls are needed before ceilings, ceilings are needed before you can hang lamps, and so forth.
In summary, the architect’s performance is mainly judged by their ability to deliver exactly according to plan in terms of schedule, scope, and cost. If the couple receives a house that is in line with the architect’s plan, by the agreed upon date and without having to pay additional money, they will be delighted.
What is Traditional (Waterfall) Project Management?
Projects that have a clear outcome using tested and proven technologies and techniques usually follow traditional project management methodologies are mainly labelled as Waterfall (also named predictive or traditional methods).
As indicated by its name, Traditional or Waterfall project management approach divides projects in a waterfall sequence of phases. A phase usually ends before the next one starts, and the sequence is traditionally 5 Phases: Initiation, Planning, Implementation, Controlling, and Closing.
Figure 2: The Traditional (Waterfall) Project Management approach has five phases, as defined by Project Management Institute’s Project Management Body of Knowledge (PMBOK® Guide).
In our example, building the house followed by the Traditional (Waterfall) Project Management approach, and consisted of the below key activities:
Initiation: Our couple (the Sponsor) is giving the architect (Project Manager) the authority to work on the project by signing a project document (the Project Charter) outlining the expectations in terms of scope, budget, schedule, and stakeholders.
Planning: Creating the technical drawings, 3D renderings, detailed budget, and schedule that will enable the project’s realization.
Executing: Carrying out the actual work necessary to build the house.
Controlling: Ensuring that the work being carried out is not deviating from the plan elaborated during the planning phase. For example, measuring that the walls are the correct height and that the paint applied is using the right color pantone.
Closing: Hurray! The house (project) is completed! The couple will sign a document or Certificate of Completion to confirm acceptance of the work. The architect will collect the lessons learned during the project to share with their teams to avoid repeating mistakes in the future.
The sequence of phases is chronological and only happens one time.
The couple only visited the building site a few times during the build and the house was officially handed over on time to their greatest delight. They can now focus on the furnishing and interior design of their home. For this project, they decide to hire Kelly, a seasoned interior decorator.
Agile in Practice
The couple tells Kelly, the interior decorator, they would like something similar to Owen’s colleague’s house. They agree on an overall look and feel and entrust Kelly to do miracles. The work should be done by the time they come back from their honeymoon.
Kelly worked hard and sure enough she delivered on her promise. The entire house interior was modelled to what she believed to match their taste.
When the couple returned, they were horrified! The bar looked humongous in their living room, the style of the furniture was in total discord with the kitchen, the paint seemed to not match the color swatches they chose. The couple was fuming and the only reply they got as, “But this is what you asked!” Which in essence was true.
So why did the interior design end in absolute catastrophe, while the build went according to plan? Was the architect more skilled than the interior designer? Should the couple and the interior designer have spent more time planning?
The main issue is the methodology used was not well-suited for the project type. Unlike the house build, the interior design’s expected project outcome was unclear. The couple themselves were also not skilled in interior design; they did not have the best creative or knowledge of design trends and styles. Doing this interior design work in one bulk, was thus, very risky. An Agile approach would be more appropriate for the interior design.
If you have ever moved to a new place, chances are you took an Agile approach. You likely made decisions incrementally—for example, buying the sofa first, then a dining table. You tried samples of paint on the wall before deciding on the color. You hung paintings last to be able to see where they best fit.
In project management, it is advised to use an incremental approach for such projects. Instead of planning and delivering one very large chunk of work at once, you progress by increments, and just like an artist, you create your masterpiece, day by day, stroke by stroke.
With an Agile approach, it is best to take decisions at the last possible moment when you benefit from the maximum information. For example, you decide what carpet you will buy when you finish furnishing the living room. Or you purchase a console before choosing the mirror you will place on top of it, instead of purchasing all the living room items at once.
In the case of our couple, they would likely perceive more value in seeing the paint first rather than the silicon joints that will be used. So, paint would be included in the early Sprints before the silicon joints.
What is Agile Project Management?
Contrary to Waterfall methodologies where all tasks are planned, implemented, controlled, and eventually accepted all at once, Agile Project Management is a collection of short iterations of equal duration (usually 2-4 weeks) that are referred to as Sprints. Sprints are smaller chunks of work that are planned, implemented, and controlled many times throughout the project.
Sprints are broken down even further into tasks, also known as User Stories, that are prioritized based on value and risk. Throughout the Sprint, progress on these tasks is monitored through Daily Standup Meetings. They are called Standup Meetings as their length should not exceed 15 minutes and they are often held while standing to ensure they are kept short. During these meetings, each team member shares what has been done the previous day, what will be done today, and what are the eventual roadblocks to the progress.
At the end of the Sprint, the work completed is demonstrated during a Sprint Review in front of the client for feedback and/or acceptance.
An Agile approach allows for frequent feedback, changes to the initial plan, and drastically reduces misunderstandings with the client. Agile approaches are most commonly used to deliver IT projects. Generally, IT projects can be broken down into small functionalities that do not need to follow a specific order.
The priority of tasks is usually determined by the value each task represents for the client. Tasks with high risk are also prioritized. The higher the perceived value by the client, the earlier it is implemented.
Figure 3: An Agile project approach has numerous sprints
In our example, painting the living room could have been a User Story included in Sprint 1. They could have approved it or requested for some changes such as a less glossy paint during the Sprint Review at the end of the Sprint. This drastically limits rework and the associated costs.
Imagine if the couple in our example decides to change the paint color once the entire house has been painted. It would be better to say early in the project of the change in color. Agile practitioners say it is good to fail fast. Failing fast allows you to rectify the trajectory early in the process, before too much time, effort, and cost have been invested.
Hybrid in Practice
Some projects require a hybrid approach of Traditional (Waterfall) and Agile.
What is Hybrid Project Management?
Hybrid projects typically apply to initiatives where the deliverables themselves are hybrid. A hybrid project approach can be used in virtually all industries.
For example, a new building is to be constructed, along with a new IT system or a large event that requires building structures before coordinating the event activities. In these cases, a Waterfall approach will be used to construct the building, and an Agile approach for the subsequent activities.
In our example, if Denise the architect had been mandated to deliver both the house and the interior design, she would have used a Waterfall approach to build the house, and an Agile approach for the interior design.
When To Use Which Method?
It is key to understand that no approach is better than the other; Waterfall and Agile simply serve different purposes and contexts.
Waterfall is great for projects that have a clear and well-defined outcome using existing technologies and proven techniques. It is very common in construction, infrastructure, and government programs.
Agile can provide astounding results when dealing with uncertainty, unclear scopes, and untested techniques. Agile is also suited for projects where there are elements of uncertainty in the desired goal of the project. Agile is extremely popular for software development and design projects where a prototype is created, and improved upon in future cycles..
I’m often asked, “How do I know when to use Waterfall and when to use Agile?” I recommend a simple principle: If your team is unsure of the answer to this question, start with Waterfall.
While Agile can reap great rewards, it requires having a seasoned team that is knowledgeable and experienced in Agile projects. Otherwise, the flexible approach of Agile can lead to absolute chaos.
A team that has the sufficient experience to carry out an Agile project will know when an Agile approach should be used. If there are doubts, likely the team needs to gain some Agile experience, and gradually introduce concepts such as the Daily Stand-Up meetings that have been recognized to increase Waterfall projects’ performance.
Hiring an Agile coach to train the team on Agile methodologies, allowing for practice and feedback, can help accelerate your team’s adoption of Agile. Successful Agile adoption is a complex combination of mindset, processes, artifacts, and tools that require sound project management experience.
Feel free to contact us if you or your team wish to expand your understanding of the different approaches.
About the Author
Karim Radwan is a Director at Probity Strategy Consulting and a Trainer with IIL.
Building on his extensive program and project management experience, Karim specializes in productivity and crisis management methods. He is well known for his ability to translate complex issues into simple and actionable concepts. His skillset and enthusiasm have benefited a wide range of clients including governmental entities, fortune 500 companies, and startups