Waterfall model referred to as a linear-sequential model. In this model, the software development activity classified into different phases, and each phase consists of a list of tasks and has different purposes. It divided into phases and output of one phase becomes the input of the next phase. It is compulsory for a phase to completed before the next phase starts. In short, there is no overlapping in the Waterfall model. In waterfall, development of one phase only begins when the previous phase is finished. Because of this environment, every phase of the waterfall model is quite exact well defined. Since the phases come from a higher level to the lower level, like a waterfall, it described as the waterfall model.
The various phases of waterfall model are as follows:
1. Requirement (Software Requirement Specification): Requirement Specification is an essential phase of the waterfall model. In this phase, all the project team along with the customer prepare the list of user requirements.
The document that holds all the data is known as SRS. It involves understanding what you need to design and what its function, etc. If this phase completed successfully, it ensures the smooth working of the remaining stages.
2. Design: The design is an important stage that relies on the early stage for its proper implementation. The appropriate design in this stage ensures an execution in the next phase. This system design helps in defining hardware and system requirements and aids in determining the overall system structure.
3. Implementation: In the coding phase, based on the algorithm or flowchart the actual coding of the software is given out. That is the stage where the idea and flowchart of the application physically created or materialized. Proper execution of the previous stage assures the stable and more straightforward implementation of this stage. In this phase, systems are developed in programmes called unit and these units are integrated into the next stage. That referred to as Unit Testing.
4. Verification: The programmes that separated into units are integrated into a complete system and tested for proper coordination among modules and system, and behaves as per the specifications. Proper performance of this stage assures that the customer involved in the developed software and will be satisfied with the complete product. If there are any defects, the software development process must move back to the design phase. In the design phase, changes implemented and then the following stages of coding and testing are again carried out. Once the testing finished, the software product delivered to the customer.
5. Maintenance: When the software product delivered to the customer, then some problems come up in the customer environment. Those problems fixed in this phase. If the customer requires more improvements in the existing software, then the development process must begin a new, right from the first phase, i.e., requirements.
When to use SDLC Waterfall Model?
Some Circumstances where the use of the Waterfall model is most suited are:
Advantages(Pros) of Waterfall model:
Disadvantages(Cons) of Waterfall model: