- Year not given · 5 marks
Alternative models to waterfall
Short answer
Alternatives address waterfall's rigidity: incremental model delivers prioritized working parts early; prototyping clarifies unclear requirements via throwaway or evolutionary prototypes; spiral model adds risk-driven iterations; RAD uses component reuse and parallel teams for speed; component-based model assembles existing components; agile methods use short iterations with continuous customer involvement and change acceptance.
Explain alternative model for waterfall model.
The waterfall model assumes fixed requirements and a strict sequence of phases, so changes are costly and working software appears only at the end. Several alternative process models were developed to overcome these problems.
1. Incremental model
The system is split into increments. Requirements are prioritised, and each increment (design, code, test) delivers a working part of the system, highest priority first.
- Customer gets useful software early.
- Changes can be put into later increments.
- Lower risk of total failure; important parts get the most testing.
Inc 1: Req -> Design -> Code -> Test -> Deliver v1
Inc 2: Req -> Design -> Code -> Test -> Deliver v2
Inc 3: Req -> Design -> Code -> Test -> Deliver v3
2. Prototyping / evolutionary development
A quick prototype is built from initial requirements, shown to users and refined repeatedly.
- Throwaway prototyping clarifies unclear requirements, then the prototype is discarded.
- Evolutionary prototyping keeps refining the prototype into the final system.
- Solves waterfall's problem of users not knowing requirements at the start.
3. Spiral model
A risk-driven iterative model (Boehm). Each loop: set objectives, assess and reduce risks (often with prototypes), develop and validate, plan the next loop. Good for large, high-risk projects; it can contain waterfall and prototyping as special cases.
4. RAD (Rapid Application Development)
A high-speed incremental model using component reuse, 4GL/code generators and parallel teams, delivering a full system in a short time (about 60–90 days) when requirements are well understood and the system can be modularised.
5. Component-based (reuse-oriented) model
The system is assembled from existing components and COTS products, reducing cost and time.
6. Agile models (XP, Scrum)
Short iterations of 1–4 weeks, a working product each iteration, continuous customer involvement and acceptance of change.
| Waterfall problem | Alternative that addresses it |
|---|---|
| Unclear requirements | Prototyping |
| Late delivery of working software | Incremental, agile |
| No risk handling | Spiral |
| Long development time | RAD, component-based |
| Changing requirements | Agile, evolutionary |
✓ Answer checked by Claude Sonnet 5.5
Related questions
- Current process models; why waterfall is not accurate · Software Engineering, chapter 1
- Waterfall model: advantages and limitations · Software Engineering, chapter 1
- Waterfall versus spiral; user participation · Software Engineering, chapter 1
- Software runaways; waterfall and prototyping inside spiral · Software Engineering, chapter 1
- Conventional waterfall model · ICT Project Management, chapter 4
- Compare software models; propose a fourth model · Instrumentation II, chapter 9
- Software reliability; waterfall vs prototyping; embedded software · Instrumentation II, chapter 9
- Software process models and effort estimation · Instrumentation II, chapter 9 · asked 2×