Life is divided into projects these days. You run across projects in your day-to-day life. You create solutions leading to the creation, modification, or introduction of a product - whether services, goods, or ideas. To achieve the objective effectively, the application of project management methodologies is also necessary. It is a set of processes and policies that define team communication and structure.
This is the case even with digital products. The choice of methodology is one of the first and most important decisions for the project manager to make. The choice of the right methodology is crucial, and can have a huge impact on how well your team performs, and hence how good the final deliverable turns out. The proper choice of methodology in synergy with the type, scope, and team for the project will save you both time and costs.
Year after year, the possibilities in the field of project management are expanded with new solutions. But they are not necessarily better. After all, even several decade-old methodologies are still functionally appropriate and widely used. Project management methodologies differ in many ways: the arrangement, flexibility, simplicity. However, they have a fundamental thing in common - an effort to complete projects easily.
The forefather of the project methods, which is the waterfall approach, slowly but surely gives way to agile development. Still, it can be highly effective and is often the best choice for some projects.
The waterfall, or the cascading model, is a traditional type of project management. It is a linear sequential process. It consists of several phases, making it impossible to return to the previous steps without having to restart the whole process from the beginning. Thus, it is possible to proceed to the next stage only if the previous stage is completed.
1. Requirements and specifics of the Waterfall
The waterfall methodology is synonymous with rigid project management. The process itself is predefined by requirements and detailed initial planning. The project manager's job is to carefully plan the allocation of all resources to the single timeline so that the sequence of actions is strictly followed to make sure there are no delays or overlaps with tasks on parallel projects. Therefore, team roles are assigned strictly, and team members are fully informed.
The waterfall concept is simple, clear and easy for team members to grasp, but it is also rather rigid. It doesn't give much leeway for error. It does not allow for reaction to changes made in the preceding stages. It makes it impossible to respond to changes made in the preceding stages. That prevents the development team from returning to the completed stages, even if those previous stages do need revisiting due to unexpected changes in the whole process.
The traditional waterfall is built on a standard project management triangle - it is limited by time, cost, and scope. Due to thorough planning, the scope is fixed before the project starts, and the required budget and duration are also known.
In fact, there is an iterative alternative to the waterfall, which manages the project just as well as the traditional version, except that it divides the project into stories. It takes one block after another – gradually – but also allows you to carry out analysis, design, coding and testing for each one story individually.
2. Waterfall development cycle
The centrepiece of the waterfall methodology is the sequential order. From the start of the project to the final maintenance phase, only one direction of travel is possible - forward. Most often you encounter a simplified variation of the waterfall cycle consisting of requirements, design, coding, testing and maintenance. There is usually a milestone between the individual stages of development. According to the waterfall principle, the transition to the subsequent phase is only possible if its previous stage is completed, reviewed and verified.
- Requirements analysis - involves collecting and analysing requirements to see if a project is actually feasible. All this information must be properly documented. This stage may be preceded, if necessary, by the design and initiation phase.
- Design - based on the requirements defined, a specific implementation design is built, including a programming language or database. The purpose is to fully understand the requirements of the project team and to build steps to achieve the desired output.
- Implementation - is the creation of programme code based on predetermined designs, flowcharts, or algorithms.
- Testing - following the creation of the complete code. Checks the result for errors and verifies whether it meets the requirements. At this stage, it is handed over to the customer for the first time. Advanced techniques, such as user acceptance testing (UAT), can be implemented before deployment.
- Maintenance - serves as product support when used by real users. There may be other problems that need addressing.
3. Advantages of the Waterfall and project types where it fits
Although the waterfall is one of the oldest frameworks of project management, it still finds its application. Especially for its simplicity. Everything is clearly defined; everyone knows when and what to do. Due to the thorough planning, design and structure, the methodology is easy to apply and manage. Each stage has specific outputs and the project can therefore be managed and controlled without difficulty. Easy understanding means that the project team members will handle the process without prior knowledge or training.
A fixed scope and a clear deadline provide a notable dose of predictability. The assumption is that we know the exact requirements, which will not change in any way during the project. That is precisely why it is much easier to estimate the project budget. It is also easier to measure progress. With the correct distribution of human resources, the entire project team does not have to work on the same stage — at a certain time, some of the team members can work on a separate, parallel concurrent project.
Detailed documentation is a basic prerequisite, which goes hand in hand with the waterfall methodology. It accompanies each of the stages of the cycle, which makes the transitions between the different stages of the waterfall much easier. In addition, documents can be "recycled" as a foundation for similar projects in the future.
The customer is usually involved only at the beginning and the end of the project. Nevertheless, the detailed specification of requirements and precise documentation help achieve a deeper synchronization of the customer and the development team on project deliveries.
Summary of benefits:
simplicity, the team does not require prior knowledge or training,
clear structure, predictability,
timely scope, date, and budget, all clear in advance,
synchronization with the customer for the desired output,
easy measurability of progress, control,
detailed documentation for each stage of the process, also usable for future projects,
possibility of distributing workers to multiple parallel projects without overlapping.
- a simple, linear project, or a large project with a sequential course of action,
- projects where customers know exactly what they want in advance, the requirements are processed in detail,
- unchanging projects, where variability is unusual,
- fixed-price projects, where changes in scope are not expected.
4. Disadvantages of the Waterfall and its risks
Rather low flexibility and the ability to adapt to unexpected change are the downsides of the waterfall methodology. Similarly, it is impossible to return to the finished stages for the purpose of modifications. Due to the lack of continuous intervention stake from the client, a situation may occur where the final result of the process does not meet expectations. Complications bring about considerable costs - both time and money.
The risk of missing the deadline and the occurrence of errors can be reduced at least in part by an appropriate definition and analysis of requirements, and also by a detailed design before coding kicks off. In comparison to other available methodologies, you also need to allocate more resources just for project management.
A linear approach brings with it one obvious imperfection - it creates unnecessary dependencies. Performing operations in a given sequence may cause those following it to get stuck until the obstacle is removed.
Summary of disadvantages and risks:
ability to react to changes, impossible to return to the previous stage,
threat of changes in planned deliveries,
high cost to project management and response to changes,
no minor versions, the final result is supplied,
difficulty to obtain accurate requirements (from customers, clients, stakeholders) - it can be hard to specify all at the beginning,
minimal room for creativity,
mistakes in the documentation.
5. Waterfall in real life
You mostly encounter a combination of several methodologies in real life. At least in the IT-sphere, only a few companies resort to a single solution. Agile has been at the forefront of project management in recent years, and some managers even claim that the waterfall is slowly dying out.
However, research from 2017, conducted by project giant PMI, shows that up to 51% of those surveyed still use waterfall methodologies, always or very often. In fact, many well-known multinationals proclaiming their own full agility are returning to the waterfall for its simplicity and clarity.
The waterfall methodology is widely used by such big names as Cisco, IBM, Boeing, Airbus, Bank State Street or even the US Department of Defense.
Where it makes the most sense:
- small IT businesses,
- real estate construction,
- event scheduling, conferences,
- software implementation,
- critical information systems with built-in redundancy (space research, military systems, hospitals, etc.).
6. Waterfall in conclusion
The waterfall methodology comes from prehistoric project management, but it still finds its place and application. Simplicity and clearly defined essentials reduce the room to manoeuvre, but also the space for error. In the hands of an experienced project manager and a disciplined team, it will effectively serve its purpose - to manage the project up to the desired goal.