Featured Post

Step Wise Project Planning

Planning is the most difficult process in project management. The framework described is called the Stepwise method to help to distinguis...

  1. Home

Waterfall Model


The Waterfall Model was first process model to be introduced. In a waterfall model, each phase must be completed before the next phase can begin and there is no overlapping in the phases.

In " waterfall model" approach, the whole process of software development is divided into phases separate phases. In waterfall model, typically the outcome of one phase acts as the input for the next phase sequentially.



  1. Feasibility study:- the first phase is known as feasibility study. the purpose of this phase is to produce a feasibility study document that evaluates the costs and benefits to application.
  2. Requirement Analysis & Specification :- the goal of this phase is to understand the exact requirement of the customer. this activity is usually executed together with the customer, as the goal is to document all functions. all possible requirements of the system to be developed are captured and documented in a requirement specification documents usually known as "SRS" (software requirement specification)
  3. Design :- the goal of this phase is to transform the requirement specification into a structure that is suitable for implementation. here, overall software architecture is defined, and the high level and detailed design work is performed. this work is documented and known as " software design description" (SDD).
  4. Implementation & Unit testing :- with inputs from design, the system is first developed in small programs called units which are integrated in the next phase. each unit is developed and tested for its functionality which is referred to as Unit testing.
  5. Integration & System testing :- all the units developed in the implementation phase are integrated into a system after testing of each unit. it is a very expensive activity and consumes one-third to one-half of the cost of the typical development project. system testing involves the testing of the one entire system, whereas software is a part of the system.
  6. Operation & maintenance :- there are some issues which come up in the client environment. to fix those issues patches are released. also to enhance the product some better versions are released. maintenance is done to deliver these changes in the customer environment.
Advantage:-
  1. it is a linear model
  2. it is a simple one
  3. it has proper documentation
Disadvantage:-
  1. it is difficult to define all requirements at the beginning of a project
  2. this model is not suitable for accommodating any change
  3. it does not scale up well to large projects
  4. real projects are rarely sequential


Previous
Next Post »