Waterfall Model
Sequential development model with defined phases and formal handovers, suited for projects with stable requirements.
Classification
- ComplexityMedium
- Impact areaOrganizational
- Decision typeOrganizational
- Organizational maturityIntermediate
Technical context
Principles & goals
Use cases & scenarios
Compromises
- Lack of user involvement during development
- Late integration causes costly rework
- Rigid contracts lead to conflicts on changes
- Validate detailed requirements early with stakeholders
- Define clear acceptance and review gates
- Maintain and version documentation continuously
I/O & resources
- Complete requirements specification
- Project plan with milestones
- Fixed budget and resources
- Acceptable final product
- Complete development and test documentation
- Acceptance records and release approvals
Description
The Waterfall model is a sequential software development approach with distinct phases such as requirements analysis, design, implementation, testing, and maintenance. It emphasizes thorough upfront planning, formal handovers and defined roles, making projects with stable requirements predictable. However, it offers limited flexibility for late changes.
✔Benefits
- Predictability of time and cost for stable requirements
- Clear responsibilities and intermediate deliverables
- Suitable for regulatory and contractual requirements
✖Limitations
- Low flexibility for late requirement changes
- Risk of late defect discovery in the project cycle
- High upfront documentation effort
Trade-offs
Metrics
- Schedule adherence
Measures whether milestones are met according to plan.
- Number and severity of reworks
Captures effort and cost for fixes after integration.
- Documentation completeness
Rates completeness of specifications, tests and handovers.
Examples & implementations
Control software for industrial plant
Delivery of a complete control module according to predefined specifications with formal acceptance by the operator.
Government IT procurement
Project with fixed requirements and contractual scope where Waterfall is used to satisfy compliance.
Migration of a legacy subsystem
Planned, phased migration with extensive documentation and final integration testing.
Implementation steps
Collect and document full project scope and requirements
Create comprehensive project plan with milestones and roles
Execute phase-wise, test and perform formal acceptances
⚠️ Technical debt & bottlenecks
Technical debt
- Architectural choices that hinder later changes
- Lack of automated integration tests
- Incomplete infrastructure documentation
Known bottlenecks
Misuse examples
- Using it for highly uncertain or exploratory projects
- Applying it without formal approvals in regulated projects
- Relying on documentation instead of actual testing
Typical traps
- Overestimating requirement stability
- Underestimating rework costs
- Lack of end-user involvement until acceptance
Required skills
Architectural drivers
Constraints
- • Fixed contractual scope
- • Limited user availability for iterations
- • Sequential phases with gate reviews