Today I’m going to discuss the Waterfall Model which is one of the Traditional Method of the SDLC process along with the Spiral Model and V-Model.
The Waterfall Model was the first process model to be introduced. It illustrates the System Development process in a linear sequential flow (i.e. any phase in the development process begins only if the previous phase is complete). The Waterfall Model originates in the manufacturing and construction industries; highly structured physical environments in which after-the-fact changes are prohibitively costly, if not impossible. Since no formal software development methodologies existed at the time, this hardware-oriented model was simply adapted for software development.
When to use the Waterfall Model:
- Software technologies and tools are well-known.
- Product definition is stable.
- New version of the existing software system is being created
- There are no ambiguous requirements.
General Overview of The Waterfall Model:
Planning -> Analysis -> Logical Design -> Physical Design -> Implementation -> Maintenance
Advantages of The Waterfall Model:
- Easy to manage due to the rigidity of the model: each phase has specific deliverables and a review process.
- Phases are processed and completed one at a time.
- Works well for smaller projects where requirements are very well understood.
- Simple and easy to use.
Disadvantages of The Waterfall Model:
- Once an application is in the testing stage, it is very difficult to go back and change something that was not well-thought out in the concept stage.
- No working software is produced until late during the life cycle.
- High amounts of risk and uncertainty.
- Not a good model for complex and object-oriented projects or for long and ongoing products.
- Not suitable for projects where requirements are at a moderate to high risk of changing.
In my next blog I will discuss the phases of the Waterfall Model in detail.