The Waterfall Model was first introduced as a Life Cycle model for projects in industries such as construction and manufacturing. Its basic concept revolves around the steady and sequential downward flow of each cycle phase, as depicted by Winston Royce, almost 4 decades ago. This model is referred to as the Pure Waterfall Model, and today there is a new version which is known as the Modified Waterfall Model.
The Pure Waterfall Model
This is the old and more commonly used model. It was what Royce introduced in the 1970s. The classic Waterfall Model was shown to have created plenty of room for errors during application. The phases included in this model are:
- Requirements specification: The functional and supplementary requirements which may be in the form of an abstract. It contains the requirements and specifications needed for system developers.
- Design: This would refer to “how” a system should function in order to address the current issue. This includes: architectural design, abstract specification, interface, component, data structure, and algorithm designs.
- Construction or Implementation: This is the execution of what is employed in the requirements and design. This could refer to the end result of a task.
- Testing: After the implementation, the project team should have a clearer grasp on what works and what does not. This phase would refer to making an assessment on best practices and functional systems that will be good to the users. Faults and errors will be reduced or avoided during this stage.
- Installation and Maintenance: Aside from working its way to getting rid of “bugs,” this phase would also refer to providing consistent enhancement processes through sending reports, making validations and creating tests.
The Modified Waterfall Model
The newer model is an excerpt from the classical model, except that the errors are significantly reduced through verification and validation. Every phase, from requirements specification up to installation and maintenance is backed up with additional testing. Furthermore, with the Modified Waterfall Model, there is a lesser need for documentation and revisions as it allows overlapping of phases, unlike the classic model which requires a project to finish each phase before proceeding to the next.
The advantages and disadvantages of the Waterfall Model
One of the main advantages of this model is that it promotes discipline in documentation, as a phase cannot be considered complete unless documents are presented. There has to be solid documentation before it can go through the next phase in the cycle; this makes progress more evident and easier to pinpoint. Moreover, and this would refer to the modified model in particular, there is continuous validation of every phase, thus errors and defects can be avoided. In the instance that the project team members need to be replaced, there will not be much of a difficulty for new members to continue because all the documentations are readily available, and errors are very minimal.
In regards to its disadvantages, the Waterfall Model may limit flexibility of the project because it has to be adherent to documentation. It makes it harder to jump to the next phase because it strictly sticks to a phase until such time it has been completed. Second, it creates complicated and sometimes terribly structured processes because requirements are oftentimes not handed over during a particular phase, specifically in the initial planning, and the new requirements would then have to be added to the next phase which renders it irrelevant because it is supposed to be for the previous one. It is good to know though that these issues have been addressed with the modified model, thus these advantages may not necessarily apply at all.
Project managers who would like to utilize a simple approach in managing a certain project often use the Waterfall Model. This is preferable for more stable tasks that do not really require plenty of changes during its completion. The Waterfall Model would be well-suited for projects that are predictable and well-designed even before it has been undertaken, because it does not work very well with projects that are very dynamic. Changes during the various phases can cause it to become less accurate and may even render it useless in the end.