Waterfall Model
Definition
The Waterfall Model (proposed by Winston Royce, 1970) is a linear, sequential SDLC model where each phase must be completed before the next begins, like water flowing downward through steps — no going back.
Phases
Requirement Analysis
│▼
System Design
│▼
Implementation
│▼
Testing
│▼
Deployment
│▼
Maintenance
Each phase produces a document/deliverable that feeds into the next (e.g., SRS from Requirements phase feeds Design phase).
Characteristics
- Each phase has clear entry and exit criteria
- Heavy emphasis on documentation
- No overlapping of phases (in pure form)
- Feedback loop only to the immediately preceding phase (in the "with feedback" variant Royce actually proposed)
Advantages
- Simple to understand and manage
- Clear milestones and deliverables at each phase
- Well suited to projects with stable, well-understood requirements
- Easy to measure progress (phase completion = % done)
Disadvantages
- Inflexible — hard to accommodate changing requirements
- Working software is only available at the very end
- High risk if requirements are misunderstood — the mistake isn't caught until late (testing), which is very expensive to fix
- Not suitable for large, complex, or evolving projects
- Customer sees the product only at the end — no early feedback
When to Use
- Small to medium projects with clear, fixed, well-documented requirements
- Projects with short timelines and stable technology
Exam tip: Draw the phase diagram with the "waterfall" downward arrows, and always mention the key weakness: no phase overlap + late detection of errors = high cost of change.