Saturday, January 5, 2008

Waterfall Model

The waterfall model is a software development model in which development is seen as flowing steadily downwards (like a waterfall) through the phases of requirements analysis, design, implementation, testing (validation), integration, and maintenance.

This is also known as Classic Life Cycle Model (or) Linear Sequential Model (or) Waterfall Method. This has the following features:

  • It is least flexible and most obsolete of the life cycle models.
  • It is well suited to a project that has low risk in the areas of user interface and performance requirements, but high risk in budget and schedule predictability and control.

Stages involved in Software development process:

1. Requirements specification

2. Design

3. Construction

4. Integration

5. Testing and debugging

6. Installation

7. Maintenance

· The waterfall model derives its name due to the cascading effect from one phase to the other as is illustrated in the Figure. In this model each phase has a well defined starting and ending point, with identifiable deliveries to the next phase.

  • The waterfall model maintains that one should move to next phase only when its previous phase is complete and perfect. The phases of waterfall model are discrete and there is no jumping back and forth and there is no overlapping between the phases.

· The requirements in the waterfall model are freezed in advance. So the more

Time spent in understanding the requirements results in more efficient software.

· The waterfall model is preferred in situations where the requirements are stable and it is possible that designers are likely to identify the requirements in advance.

· The waterfall model is a documentation heavy model since formal documents are maintained after each phase or in other words partial documents are maintained.

Pitfalls OF WATERFALL model

1. Requirements of the client are freezed in advanced the development process begins.

2. Waterfall model is a documentation heavy model.

3. In waterfall model, it is difficult to determine the cost of each phase

4. Unless the clients specify and designer understands the exact requirements it is quite difficult to judge what software is going to be built.

5. Many a times what happens is clients changes its requirements due to changes occurred in external factors therefore in that situation the waterfall model does not work as in this model the requirements are freezed in advance.

6. Constant checking from design, implementation and verification is required to validate the phases preceding them.

2 comments:

Gaveet said...

This is a good post. This post gives truly quality informat


Gaveet construction

Joanne said...

Awesome post, thank you for sharing!
Basement Waterproofing