Introduction & SDLC · Software Engineering

Waterfall Model

Watch lectures

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.

Official AppAndroid App

PYQDeck for Android

Solve BEU previous-year exam papers anywhere, anytime. Fast search, offline paper viewing, and step-by-step solutions designed specifically for your phone.

← All Software Engineering modules