The Waterfall Model was first Process Model to be presented. It is additionally alluded to as a straight successive  life cycle model. It is  exceptionally basic  to  comprehend and  utilization. In a waterfall  model, every stage must  be finished before the following stage can start and there is no covering in the stages.

Waterfall model is  the  most punctual SDLC approach that was utilized for programming advancement .The waterfall Model outlines the product improvement transform in a straight

consecutive stream; henceforth it is additionally alluded to as a direct successive life cycle model. This implies that any stage in the advancement procedure starts just if the past stage is finished. In waterfall model stages don't cover..

Waterfall Model Design

Waterfall methodology was first SDLC Model to be utilized broadly as a part of Software Engineering to guarantee achievement of the undertaking. In "The Waterfall" approach, the entire procedure of programming improvement is separated into partitioned stages. In Waterfall model, commonly, the result of one stage goes about as the data for the following stage consecutively.

Following is a diagrammatic representation of different phases of waterfall model.

The sequential phases in Waterfall model are:

              Prerequisite Gathering and examination All conceivable necessities of the framework to be created are caught in this stage and archived in a necessity determination doc.

Framework Design: The prerequisite details from first stage are concentrated on in this stage and framework configuration is arranged. Framework Design helps in indicating equipment and framework necessities furthermore helps in characterizing general framework building design.

Usage: With inputs from framework plan, the framework is initially grown in little projects called units, which are incorporated in the following stage. Every unit is created and tried for its usefulness which is alluded to as Unit Testing.

Coordination and Testing: All the units grew in the usage stage are incorporated into a framework in the wake of testing of every unit. Post coordination the whole framework is tried for any deficiencies and disappointments.

Sending of framework: Once the useful and non utilitarian testing is done, the item is conveyed in the client environment or discharged into the business.

Upkeep: There are a few issues which come up in the customer environment. To settle those issues patches are discharged. Likewise to improve the item some better forms are discharged. Support is done to convey these progressions in the client environment.

Every one of these stages are fell to one another in which advance is seen as streaming relentlessly downwards (like a waterfall) through the stages. The following stage is begun strictly when the characterized arrangement of objectives are attained to for past stage and it is closed down, so the name "Waterfall Model". In this model stages don't cover.

Waterfall Model Application

Each product created is distinctive and obliges a suitable SDLC way to deal with be taken after in view of the inner and outside components. A few circumstances where the utilization of Waterfall model is most fitting are:

Prerequisites are extremely very much recorded, clear and settled

Item definition is stable

Innovation is comprehended and is not progressive

There are no questionable prerequisites

Plentiful assets with obliged mastery are accessible to backing the item

The undertaking is short

Waterfall Model Pros & Cons

The playing point of waterfall advancement is that it considers departmentalization and control. A calendar can be set with due dates for every phase of advancement and an item can continue through the improvement procedure model stages one by one. Advancement moves from idea, through outline, execution, testing, establishment, investigating, and winds up at operation and upkeep. Every period of improvement continues in strict request.

The hindrance of waterfall improvement is that it doesn't consider much reflection or modification. Once an application is in the testing stage, it is exceptionally hard to retreat and change something that was not very much recorded or thought upon in the idea stage.

The following table lists out the pros and cons of Waterfall model:

§               Some working functionality can be developed quickly and early in the life cycle.
§               Results are obtained early and periodically.
§               Parallel development can be planned.
§     Progress can be measured.
§               Less costly to change the scope/requirements.
§     Testing and debugging during
smaller iteration is easy.
§               Risks are identified and resolved during iteration; and each iteration is an easily managed milestone.
§               Easier to manage risk - High risk part is done first.
§     With every increment operational
product is delivered.
§               Issues, challenges & risks identified from each increment can be utilized/applied to the next increment.
§     Risk analysis is better.
§     It supports changing requirements.
§     Initial Operating time is less.
§               Better suited for large and mission- critical projects.
§     During life cycle software is
produced early which facilitates customer evaluation and feedback.

§     More resources may be required.
§               Although cost of change is lesser but it is not very suitable for changing requirements.
§               More management attention is required.
§     System architecture or design issues
may arise because not all requirements are gathered in the beginning of the entire life cycle.
§     Defining increments may require
definition of the complete system.
§     Not suitable for smaller projects.
§     Management complexity is more.
§               End of project may not be known which is a risk.
§               Highly skilled resources are required for risk analysis.
§               Projects progress is highly dependent upon the risk analysis phase.