Waterfall
Definition
Waterfall is a sequential software development methodology in which each phase, requirements, design, implementation, testing, and deployment, must be completed and signed off before the next phase begins.
Winston Royce described what became known as waterfall in a 1970 paper on managing large software projects. Ironically, Royce's paper actually argued that the sequential model was flawed and recommended iterative development, but the sequential model stuck and became the dominant approach in defense and enterprise software through the 1980s and 1990s.
The five classic phases:
- Requirements: Gather and document all system requirements before design begins
- Design: Create the system architecture and technical design from the requirements
- Implementation: Write code according to the design
- Testing: Verify the system meets requirements
- Deployment: Release to production and maintain
The fundamental problem with waterfall is the assumption that requirements can be fully known and frozen at the start of a project. In practice, requirements change, business conditions shift, and what made sense in Phase 1 doesn't make sense by Phase 4. Because testing comes so late, defects discovered there are expensive to fix, the code may need to be redesigned, not just patched.
Waterfall remains appropriate in some contexts: regulated industries where requirements are fixed by law or contract, hardware development where physical constraints limit iteration, and projects where the domain is extremely well understood. In software product development, where learning and adaptation are competitive advantages, agile methods have largely replaced it.
Examples
- Defense software contract: fixed requirements document → architecture review → coding begins → government acceptance testing → deployment
- Enterprise ERP implementation: requirements gathering (6 months) → design (3 months) → development (12 months) → UAT (3 months) → go-live
- Medical device software: IEC 62304 compliance drives sequential phases with mandatory review gates between each
- Infrastructure project: civil engineering requirements are fixed; waterfall is appropriate because rework after construction is extremely costly
Related terms
Snap a waterfall. Ship its actions.
BoardSnap turns any whiteboard, including this one, into a summary and action plan.