Agile vs. Waterfall. Which is better?

Agile vs. waterfall: which approach is better for my project? A question faced by many project managers. A deeper understanding of the difference can help select the right project management approach for a project.

When we refer to the waterfall method or traditional project management, we are talking about predictive approaches. The waterfall method is the name mostly used in the software development industry. On the other hand, when we say agile, scrum, or kanban, we are referring to adaptive life cycles.

Waterfall – Objective and what & how to deliver is known

Agile – Objective is known. What and how to deliver is unknown

A non-technical explanation of agile vs. waterfall is that when you know the objective of the project, know what to deliver, and how exactly to produce, you will take the predictive approach. However, when you are clear on the objective but do not know how and what will achieve that objective, you are to take the adaptive approach.

Here are a couple of examples to see how each methodology will be applied.

First example: Agile vs. waterfall selection

A project has the objective to build a high-rise condominium building. Which approach to take? Predictive or adaptive.

The predictive approach is to design the whole or a large part of the building and then start constructing it. Adaptive does not need the complete design, just enough to take up in the first few iterations. In the predictive method, several questions need answers before any design work starts. The knowledge of how many levels this building will have, what will be the use of each floor, how many people will occupy it, and similar questions will provide the necessary information.

Now, you may think that we can decide later how many levels the project should build. Unfortunately, the foundation design requires answers to the above questions. Otherwise, imagine the foundation got designed for ten floors, but the customer later asks to make it up to 20 levels. Now go back and start reinforcing the foundation or take it out and put a new designed one; rework that will result in time and cost overruns.

It will be wrong to say that we could have put the foundation for 20 floors. What if the customer decided to build only ten levels? What a waste of time and money it will be. So it is not a good plan.

Sometimes few units are completed and then handed over for move-in, but keep in mind that the approach taken is still predictive. It may be more iterative with multiple deliveries instead of one single hand over. Also, no one can occupy any unit until the city permits.

Therefore, for a high-rise condominium project, a predictive life cycle approach is much better suited than the adaptive approach. In reality, the adaptive approach is unsuitable in this case.

Second example: Agile vs. waterfall determination

Let’s take another project. Develop a new employee onboarding program.

Using Waterfall method

Taking the traditional approach, requirements gathering, designing, and planning the new employee onboarding program will occur in the beginning. Then the project team will work on and create the package. In the end, the team will hand over the deliverable to the employee training group. Sometimes the training group may review the work-in-progress. However, the project has already decided on the overall product design by that time.

Using the Agile method

In the adaptive approach, an initial consultation will provide high-level requirements. The training group will prioritize these requirements regularly. Only the prioritized ones will be broken down into details and taken up in coming iterations. The team will design, develop, test, and hand over parts of the program to the training group, who will start to use it. The group will provide feedback and recommend appropriate changes to the design.

During this time, the training group will keep updating and prioritizing the requirements list. So the program will change its shape and content throughout as it becomes better aligned with user needs and expectations.

Agile vs. waterfall decision

In the predictive world, the training group may identify changes once they get hold of the training program and start using it. The problem is that the project is complete so, a change at this time will be difficult to entertain. Besides, it means going back and kind of start over again. No one will like to do that. The predictive approach will provide benefits only once the whole program is delivered and put into use.

However, in the adaptive approach, changes will be recommended throughout and added to the requirements list that is updated regularly. Benefits will start to trickle in earlier as the team hands over parts of the training program to the training group.

So, clearly, in the new employee onboarding program project, the adaptive life cycle is much more suitable.

Agile vs. waterfall: Key differences

Keeping these examples in mind, we can make several comparisons between predictive and adaptive life cycles.
The traditional project management method is well-covered by the PMBOK guide. On the other hand, the agile approach is positively represented by the four values and 12 agile principles.

The PMBOK content is focused mostly on predictive approaches. However, the guide addressed the adaptive lifecycle in more detail in the last two editions. The agile guide was an addition to the PMBOK guide when the 5th edition came out in 2017.

1) Scope, time, and cost planning difference

In the predictive method, the project decides the scope first, and then time and cost estimations are done. In the adaptive approach, the project team first establishes time and cost, and then the scope is taken up. Say ten people will work on the project for eight months. In this case, we know the time and cost. Now, the team will start and adjust the work until the time or cost is up. The team may also stop the project if the sponsor decides to end the project earlier or vice versa. Everything is up in the air. That is the beauty of the agile approach.

agile vs. waterfall simple

Planning and executing also differs in the two approaches. Predictive requires detailed planning upfront, but adaptive planning is modified as the project progresses. It is like keeping the project in line with the reality on the ground.

Predictive – Detailed planning upfront

Adaptive – Continuous planning all along

For example, a project phase duration will be planned upfront. The phase duration will not change unless a change request is approved to modify the schedule. However, in adaptive, the length of iteration is fixed, but how much work the team is taking up in each iteration will keep changing based on the performance of the last few iterations. So, if the previous three iterations only completed 9 or 10 units of work, why would we plan for 15 units for the next iteration? It makes sense to adjust the work units for the next iteration to around ten units.

2) Agile vs. waterfall: Project delivery

Waterfall has a single delivery at the end. Agile results in multiple deliveries throughout the project.

The predictive method will result in a single delivery or a few large deliveries, while adaptive will provide smaller but earlier deliveries to the customers or users.

The purpose behind keeping the deliveries small is that the customer can start using the delivered product piece. This arrangement will result in early feedback from the users and the start of the realization of business benefits well before the project ends.

3) Agile vs. waterfall: Change management

A change is generally discouraged and frowned upon in the predictive life cycle. The main reason is that the cost of changes could be prohibitive. The later a change is recognized, the higher the price to make that change.
In the adaptive approach, the team delivers smaller pieces frequently, allowing the user to provide early feedback. The benefit of this feedback is that if users propose any change, it will be small in size, and the team can accommodate it comfortably. In this case, a change is appreciated and encouraged.

4) Management style difference

When we think about the management style, PMBOK content already moved away from the command control type of project management. It now encourages the project manager to take more inclusive and coaching oriented approaches. The human resources management, which includes the project team and stakeholders, is more into collaboration and less into providing instructions or directions.

The idea that the project manager should always be a servant leader, something we see strongly encouraged in the agile approaches, is just wishful thinking. If it works all the time, why don’t we ask the CEO, the board of directors, or our managers, to take this approach? We should ask them to let us do the thing we want to do. They should only focus on coaching us.

We must indeed create an environment where servant leadership works; nonetheless, we must be ready to step in and move to a command and control approach when progress slows down. This notion is what the PMBOK recommends. Do not mistake the structured approach to the command and control method. The structure ensures all the bases are covered but lets the team play the way they want within the boundaries.

5) Process vs. interaction focus

PMBOK guide recommends following the processes but also says that the project team should tailor to the needs of the project. It even suggests areas where the process tailoring might be helpful.

The agile framework, on the other hand, does not get too deep into the process. Even when a process, for example, the daily stand up event, is described in detail, the focus is more on interaction rather than following the prescribed method. The agile framework recommends that the project team should be a self-organizing group with regular communication.

6) Who is the center of attention?

In the waterfall approach, the project manager is the center of attention. When you read the PMBOK guide, it is quite clear that all processes are addressed with the project manager in mind, providing guidelines to the project manager. It is rightly so since the project manager’s role is to ensure that the team carries out the processes in the best possible way.

However, the scrum guide and other agile material focus on the agile team and seems to revolve around the work of team members. The agile approach asks for T-type skills: each team member is a specialist in one area and a generalist in all others. For example, one resource is a tester but can also do analysis, design, and coding.

7) Agile vs. waterfall: Documentation

The traditional way is to do detailed documentation first before proceeding with the work. You want to write code, create the document, and then do the coding.

The adaptive way is to create code first, fine-tune it, and then write documentation. Why? It is because the customer can start using the coded piece. The customer will realize some benefits early and will provide feedback while the team is writing the detailed documentation. Now there might be some rework, but since the team completed the work in small chunks, the changes will also be small in size.

In the condominium example, the project team needs a detailed design for construction permits. No city will allow a project to build first and then document. For the training program project, it makes more sense to do detailed documenting afterward.

8) Monitoring and controlling difference

Both predictive and adaptive life cycles require monitoring and controlling. There is, however, a difference in how to carry out this process.

In predictive, the project team compares the work completed against the plan to see if the project is on track or not. In adaptive, the team tracks the remaining work. That is, at any time in an iteration, how much-planned work for that iteration is left? The reason is that the planned work itself keeps changing daily. So the monitoring is quite dynamic. The focus in the predictive method is on work completed, while in the adaptive approach, the attention is on work left.

Conclusion

We have examined the main differences between predictive and adaptive methods, also called agile vs. waterfall methods. We scrutinized two projects using the above life cycles to provide the rationale for deciding which approach is better.

As you can appreciate that both approaches will work when selected for the right project.

Let us know what you think.

Further Readings for the inquisitive mind:

A paper on traditional project management vs. agile approach (PMI Global Conference 2009)

Difference between PMP, PRINCE2 and Scrum/Agile

Agile vs. waterfall for ERP project (PMI Global Conference 2012)

Waterfall vs. Agile: Which is the Right Development Methodology for Your Project?

Agile Scrum 101 classroom course – An introduction to Agile methodologies

Leave A Reply