27/03/2018
Waterfall Model
The waterfall model is a sequential approach, where each fundamental activity of a process represented as a separate phase, arranged in linear order.
In the waterfall model, you must plan and schedule all of the activities before starting working on them (plan-driven process).
Plan-driven process is a process where all the activities are planned first, and the progress is measured against the plan. While the agile process, planning is incremental and it’s easier to change the process to reflect requirement changes.
The phases of the waterfall model are: Requirements, Design, Implementation, Testing, and Maintenance.
The Nature of Waterfall Phases
In principle, the result of each phase is one or more documents that should be approved and the next phase shouldn’t be started until the previous phase has completely been finished.
In practice, however, these phases overlap and feed information to each other. For example, during design, problems with requirements can be identified, and during coding, some of the design problems can be found, etc.
The software process therefore is not a simple linear but involves feedback from one phase to another. So, documents produced in each phase may then have to be modified to reflect the changes made.
When To Use?
In principle, the waterfall model should only be applied when requirements are well understood and unlikely to change radically during development as this model has a relatively rigid structure which makes it relatively hard to accommodate change when the process in underway.