What’s the Waterfall approach?

The Waterfall approach is a traditional project management methodology. Before Agile it’d been the most common According to it, the process is broken down into phases, every one of which has a goal to achieve. When you finish one phase, you go on to another. It’s called “Waterfall” since the results of one phase “flows” into the next one. The problem is you can’t kick off another phase until you’re finished with the current one, so there’s no overlapping over there. Therefore, it resembles a relay race. We plan everything upfront and if something doesn’t go according to plan, we’re in deep water, as this makes the process come to a halt.

5 phases from start to finish

At this stage we define and gather requirements from the client, analyze them and provide an extremely detailed plan how to deliver them. A lot of documents are created there. We need to ensure they’re feasible to implement. We take into consideration the scope, the budget and the timing of the project that are fixed.

The Waterfall approach

At the stage the system/product design is created in accordance with the requirements governed by the project manager. Design specifications are created, analyzed and evaluated to understand what a real product is going to be like.

the waterfall approach

We get down to work. In software development industry we code, while in marketing we boost sales. The project manager assigns the tasks for team members and monitors their progress. He also makes sure if the work is done they way it was agreed. Any deviation from the original plan might endanger the budget and timing.

traditional methodology

After we’re finished with our work, we test the product to detect any potential errors, and make necessary improvements. We need to draw attention to the fact that verification takes place at the end of the process and not on the way.

the waterfall approach

This stage concerns deployment of the product and its maintenance, which again requires testing. You update the product with new functionalities or modify the ones you’ve already provided. This is to make sure everything works the way it should. The requirements are our success benchmark.

The Waterfall model

The waterfall approach – features

  • LINEAR AND SEQUENTIAL: All the process is divided into stages. One cannot begin until the other finishes.
  • INTUITIVE: it’s very easy both to understand and implement in the projects of low uncertainty
  • UPRONT PLANNING: all the requirements are stated beforehand; they remain the same throughout the project
  • PREDICTIVE: a new member of on the team, they can quickly get all necessary info due to continuous reporting
  • TRANSPARENCY: It’s given by a careful reporting of every stage of the project as well all of the requirements. Everyone is on the same page.
  • FIXED: the scope, timing and the budget are fixed, so we can predict the release date and calculate the cost
  • CONTROL: we control the requirements in order to stick with the settled budget and schedule of the project
  • SEPARATE TEAMS: Every phase is driven by a separate hierarchical team managed by PM.
  • EARLY GOAL: We know the end goal of the project from the very beginning to end. We early know what to focus on.

When to use it?

This methodology was primarily intended for software development. Although it’s not an innovative methodology, it’s still successfully being used in a lot of sectors. Because of unchanging, strictly fixed, detailed requirements, it’s rather recommended for smaller projects of low uncertainty. In other words, in simple environments where we’re able to predict potential problems and come up with effective solutions to them. A simple environment means we’re able to list all the functionalities of the product before the project actually starts. The known-unknown world.

Possible problems of the waterfall approach

1# Changes are unwelcome

There is almost no room for a change here, as the scope, budget and requirements are all fixed. That can cause problems if there are some obstacles in the process. The project manager needs to control change so that the project management triangle don’t cross the line. That makes this method effective for projects with clear, unchanging goals from start to end.

2# Late testing

Suppose during testing it turns out the product isn’t something the client really wishes for. Since we test so late we might be showered with lots of issues that we could detect much earlier. That may lead to getting the product that doesn’t work. In this case, we’d have to review earlier stages which might cost us a great deal of time, energy and cash.

3# Focus on internal process and not a user

The main focus is placed on the internal process and not the person who is actually to use the product. Any idea is planned upfront, so there is very little room for the client to share their own ideas. The client provides the requirements in the very beginning and waits for the outcome. What if they change their mind on the product vision? In this case, the project might prolong which can cause the cost to increase and delay its delivery.

Conclusion

The cascade methodology is good for small, obvious projects with clear and fixed requirements. It’s therefore not as effective as Agile methodologies as far as software development is concerned. However, it’s effective in the environment in which testing along the way is not possible, as there is no prototype yet. if you build a house, you can’t test two walls you’ve just erected, can you? Would you test the walls? There are indeed some projects that this methodology is great for. That’s not software development, however. I’II explain why in the next blog post.