Show understanding of why different development life‑cycles are required for different types of programmes.
All life‑cycle models are built from these stages; they differ only in the order, repetition and overlap of the stages.
| Model | How the five stages are performed | Flexibility | Typical Use‑case | Key Advantages | Key Disadvantages |
|---|---|---|---|---|---|
| Waterfall | Each stage is completed once, in strict order. | Low | Stable, well‑specified systems (e.g., embedded firmware). | Clear milestones, easy cost/schedule estimation, thorough documentation. | Very inflexible; changes are expensive; problems discovered late. |
| Iterative | Full set of stages repeated in a series of cycles, each delivering a more refined version. | Medium | Projects where requirements mature over time. | Early feedback, risk reduction, accommodates change. | Requires good configuration management; cost estimation harder. |
| Rapid Application Development (RAD) | Quick prototype built with high‑level tools, then iteratively refined; testing throughout. | Very High | GUI‑intensive business apps with strong user input. | Fast time‑to‑market, high user involvement, reusable components. | Less suitable for large or safety‑critical systems; quality depends on prototype testing; tool‑dependency. |
| Incremental | System built as a series of functional increments; each increment passes through all five stages once. | Medium | Web portals or systems needing phased delivery. | Early usable parts, stakeholder sees value quickly, risk spread. | Overall architecture must be solid; integration testing becomes more complex. |
| Prototyping | First a quick, often incomplete prototype is produced; later cycles refine it into the final system. | High | Systems with unclear UI/UX or ambiguous requirements. | Clarifies requirements, encourages user participation, reduces risk of building the wrong system. | Users may mistake prototype for final product; shortcuts in prototype can be hard to replace. |
| Spiral | Iterative cycles each begin with explicit risk analysis before proceeding to the next set of stages. | Medium‑High | Large, high‑risk or safety‑critical projects (e.g., aerospace, medical). | Systematic risk handling, flexible iteration, strong decision documentation. | Complex to manage, costly for small projects, needs risk‑assessment expertise. |
| Agile (Scrum, XP, etc.) | Short, time‑boxed sprints; each sprint includes analysis, design, coding, testing and a mini‑maintenance review. | Very High | Fast‑changing markets – mobile apps, SaaS platforms. | Welcomes change at any time, frequent delivery, close collaboration, self‑organising teams. | Less upfront documentation (problematic for regulated domains); success depends on disciplined teams and active customers. |
| Factor | Guidance for Model Choice |
|---|---|
| Clarity of requirements | Well‑defined → Waterfall or Iterative. Vague / evolving → Prototyping, RAD, Agile. |
| Project size & complexity | Small → Incremental or Iterative. Large / high‑risk → Spiral or scaled‑Agile. |
| Time‑to‑market pressure | Need early release → Incremental, RAD, or Agile. |
| Stakeholder involvement | High, continuous involvement → Agile or Prototyping. Low involvement → Waterfall. |
| Risk tolerance | Low → Spiral (explicit risk analysis). Medium → Iterative or Incremental. High → Agile. |
| Tool & technology constraints | Availability of rapid‑development tools → RAD. Strict standards (e.g., aerospace) → Waterfall/Spiral. |
Your generous donation helps us continue providing free Cambridge IGCSE & A-Level resources, past papers, syllabus notes, revision questions, and high-quality online tutoring to students across Kenya.