Introduction to the waterfall model
The waterfall model is a classic model that has been used in the system development life cycle. It helps the employees generate a linear and sequential approach to their work. As the model itself develops in a downward fashion from one stage to another, it is called a waterfall model.
This model is divided into various stages. The workflow is determined based on the output of the previous stage. Every single stage must be completed before the next phase starts, and, as a result, there is no overlapping of the phases.
Phases Of The Waterfall Model
The sequential phases outlined in the Waterfall model are:
Requirement Gathering-All probable requirements are obtained in product requirement documents.
Analysis Read -The requirement is based on analysis that defines the schemes, models, and business rules.
System Design -Based on the analysis design of the software architecture.
Implementation-Development of the software in small units with functional testing.
Integration And Testing -Integrating every unit developed in the previous and post-integration tests the entire system for any faults.
Deployment Of System -Make the product live in the production environment after all the functional and non-functional testing is completed.
Maintenance-Fixing issues and release a new version with the issue patches as needed.
Advantages And Disadvantages of the Waterfall-Model
Advantages
- Before the next phase of software development, each phase needs to be completed
- Ideal for smaller projects where requirements are well defined
- They execute quality assurance tests (Verification and Validation) before completing each stage.
- Detailed documentation is performed at every phase of the software's development cycle.
- The project is completely dependent on a project team with minimum client intervention.
- Any changes in software are done during the process of development.
Disadvantages
- Any errors can be fixed only during the phase in which they occur
- Cannot be used in a complicated project in which the requirement changes frequently
- The testing period happens after the developmental process
- Developers and testers must spend a lot of time during documentation
- Small errors can cause many problems
When To Use The Waterfall Model
This model is employed only when the requirements are fixed. These requirements are: - Stable product definition. - Well-understood Technology. - No vague requirements - Extensive resources available - Short-term projects.
In the Waterfall model, there is hardly any customer interaction during the development of the product. The product is only demonstrated when it is ready.