What is Waterfall model -Different phases,advantages,and disadvantages
What is Waterfall model?
Waterfall Model is a sequential model that divides software development into different phases. It is In the waterfall model, progress is as flowing steadily downwards (like a waterfall) through the phases of the feasibility study, analysis, design, coding, testing, implementation, and maintenance.
Different phases of the waterfall model
- Feasibility study
This phase is used to check whether the new proposed system is economically, technically, and operationally feasible or not.
In this phase, information is gathered about what outputs to be produced, what input is required, and what process can be used and then different solution strategies are formulated.
The output of this phase is a feasibility report. - Requirement analysis and specification
This phase analyzes and specifies the requirement of users/customers and documents them properly.
Finally, the requirements organized systematically in the form of a document called a software requirement specification (SRS) document.
The output of this phase is a software requirement specification (SRS) document. - System and software designing phase
In the design phase, the overall structure or architecture is developes which is the transformation of the requirement specified in software requirement specification (SRS). - Coding and module testing
In this phase, system design is translating into source code also called program code.
The output of this phase is a programmed module. - Integration and system testing
The individually tested module is integrating here according to the planned system to develop the system.
There are two main testings: Alpha testing – Which is done at the developer end and Beta testing – Which is done at the user end.
The output of this phase is the testing and integration report. - Implementation / Installation and maintenance
In this phase, the system is installed at the user end and it is checked if there is any up-gradation required in hardware or software element at the user end.
Advantages and disadvantages of waterfall model
Pros of model
It is easy to use and understand.
No overlapping between the phases.
This model is suitable for small projects.
It is a linear sequence model. It works in a flow step by step.
Each phase generates output for the next phase that’s why its visibility is high.
It provides more flexibility.
This model provides better documentation for the employees.
Low cost.
It is easy to maintain.
Cons of model
This model does not work well for large projects.
We cannot go back to the previous phase to change anything or any requirement.
It can take a long time to complete the project.
It is a very hard task to make any changes in the project if the customer not satisfies.
High risk to make a project.