Waterfall model

This is also called as Linear Sequential model. The stages in this model include

Requirements Analysis:

Requirements are gathered from the end-user and feasibility analysis is done on possibility of incorporating the requirements. The output of this phase is a Requirement Specification document which serves the purpose of guideline for the next phase of the model.

System and Software Design:

In this stage the requirements flowing from the first stage are identified as software or hardware requirements. The software requirements are then translated in such a way that they can be readily transformed into computer programs.

Coding:

This is the stage where the programs are created. Each program is called a unit and unit testing is the verification that every unit meets its specification.

Testing:

All the units are combined and now the whole is tested. When the combined programs are successfully tested the software product is finished.

Maintenance:

Most software products include this stage of the development. It involves correcting the errors that have gone undetected before, improvement and other forms of support. This stage is part of the life cycle of software product

Advantages:

• Best suited if the requirements are constant
• Allows for departmentalization and managerial control

Disadvantages:

• Waterfall model requires well defined and frozen requirements but it is often difficult for the customer to state all requirements explicitly.
• Application will not be available until late in the project time-span
• Although the waterfall model can accommodate iteration, it does so indirectly. As a result, change can cause confusion as the project team proceeds.
• Each phase should be completed before starting the next phase
• It’s difficult to go back to the earlier phase if any problem is occurred.