The Waterfall Model

The Waterfall Model

Waterfall model

The Waterfall approach to systems was originally defined by Winston W. Royce in 1970. The Waterfall Model was the first software development Process Model introduced in the early time for software development life cycle. It is very simple and easier to understand and implement. In this model, each phase must be completed before reaching the next phase and also there is no overlapping in the phases used.

Winston W. Royce
Winston W. Royce

In this approach, the total process of software development is divided into separate phases or parts. The outcome of one phase is used as the input for the next phase. Therefore any phase in the development process starts only if the previous phase is completed. This model is a sequential design process which flows steadily downwards similar to a waterfall. The phases such as Requirement Analysis, Design, Construction, Testing, Deployment, Operation and Maintenance is taken place within this development cycle.


When to use the Waterfall Model 


  • When the requirements does not change frequently. 
  • When the project is not complicated. 
  • When the project is short. 
  • When the requirements are clearly stated. 
  • When the using environment is stable. 
  • When technology and tools used are not dynamic. 
  • When there is plenty of resources available. 


Advantages of using Waterfall Model 


Easy to use since this is a very smooth and natural development process. Due to its linear nature, there aren’t too many aspects to monitor at once So, development teams don’t require any extra training to use this method. 


More controling abilities of each level due to each phase is being completed entirely before moving on to the next one. So the deadlines can be managed easily. 


Disadvantages of using Waterfall Model 


Not dynamic in usage. Once any of the stages have been completed, it is difficult to go back to make changes. So, before implementing Waterfall model, the end result must be finalized. 


Lack of feedback due to the delivery stage is at the end of the process. The client will not get any working software until everything is completed. This may cause issues if the client requires more frequent updates regarding the progress and its its usage. 


Late testing period since testing level is at the end of the development process. So it will take a long time to find defects and to solve them.



- Sumithu.R

Comments

Popular Posts