Study Guide

Software lifecycle

CIE A-Level Computer ScienceΒ· 20 min read

1. Core Stages of All Software Lifecyclesβ˜…β˜…β˜†β˜†β˜†β± 5 min

All software lifecycle models are structured frameworks for building and maintaining software. Regardless of the specific model used, they all share core high-level stages that map the process from initial idea to final retirement.

πŸ“˜ Definition

Software Lifecycle

A structured framework that describes all stages involved in developing, deploying, and maintaining a software product from initial conception to final retirement.

Stage

Key Activities

Feasibility

Assess technical, financial, operational project viability

Requirements analysis

Gather and document required software functionality

Design

Plan architecture, data structures and user interfaces

Implementation

Write code and build the working software

Testing

Verify requirements are met and fix defects

Deployment

Release software to end users

Maintenance & Retirement

Update/fix software, retire when obsolete

πŸ“ Worked Example

List the core stages of the software lifecycle that occur after a feasibility study is approved, and before deployment.

  1. 1
    1. After feasibility approval, the first stage is requirements analysis. The team meets with stakeholders to gather and document all functional and non-functional requirements, which are then signed off.
  2. 2
    1. Next, the design stage produces architecture diagrams, database schemas, and interface mockups that meet the documented requirements.
  3. 3
    1. Implementation follows, where developers write code based on the design specifications to build the software.
  4. 4
    1. Finally, testing verifies that the software works as required and fixes all identified defects, before progressing to deployment.

2. The Waterfall Modelβ˜…β˜…β˜†β˜†β˜†β± 5 min

The Waterfall model is the original traditional sequential lifecycle model, where each stage is completed fully in order, and you cannot return to a previous stage once it is finished.

πŸ“˜ Definition

Waterfall Model

A linear, sequential lifecycle model where each stage is completed fully before progressing to the next, with no built-in backtracking or iteration.

Example:

Used for small, low-risk projects with completely fixed, agreed requirements where changes are not expected.

πŸ“ Worked Example

A small local business needs a simple static website, with all requirements fixed and agreed in writing. Explain why the Waterfall model is appropriate for this project.

  1. 1
    1. Waterfall is ideal for small projects with stable, fixed requirements, which matches the description of this project.
  2. 2
    1. Waterfall has very low administrative overhead compared to iterative models, making it efficient and cost-effective for a low-budget small project.
  3. 3
    1. No changes are expected after requirements are agreed, so there is no need for the flexibility of an iterative model. The project can be completed quickly in a single sequential pass.

Exam tip:

In CIE exams, always link the properties of the model to the specific scenario when justifying your choice, to earn full marks.

3. Iterative, Incremental and Agile Modelsβ˜…β˜…β˜…β˜†β˜†β± 6 min

Iterative models break development into repeated cycles, refining the product each cycle to incorporate feedback. Incremental models deliver working software in small, functional chunks, adding new features each cycle. Modern Agile methodologies (like Scrum) combine both approaches.

πŸ“˜ Definition

Agile Software Development

A flexible, iterative approach to software development that prioritizes rapid delivery of working software, responding to changing requirements, and continuous customer feedback.

πŸ“ Worked Example

A startup is building a new consumer mobile app, and needs to release new features monthly to respond to user feedback and changing market trends. Justify why Agile is the right model here.

  1. 1
    1. Agile uses short 2-4 week development cycles (sprints) that allow the team to deliver new working features every month, matching the startup's requirement for regular releases.
  2. 2
    1. Agile is designed to accommodate changing requirements, so the team can easily incorporate user feedback and market changes into future sprints.
  3. 3
    1. Early delivery of working software allows the startup to test the product with real users early, reducing the risk of building a product that does not meet market needs.

4. Spiral and RAD Modelsβ˜…β˜…β˜…β˜…β˜†β± 4 min

Two other common models tested in CIE 9618 are the Spiral model (for high-risk projects) and Rapid Application Development (RAD, for fast, user-focused development). The Spiral model combines Waterfall structure with iterative development and a strong focus on risk management.

πŸ“˜ Definition

Spiral Model

A risk-driven iterative lifecycle model that requires a formal risk assessment and mitigation step before each new development cycle.

πŸ“ Worked Example

A large aerospace company is developing new safety-critical flight control software for commercial aircraft. Which lifecycle model is most suitable, and why?

  1. 1
    1. The Spiral model is the most suitable choice for this project.
  2. 2
    1. This is a large, high-risk project: any software defect could have catastrophic consequences, so rigorous risk analysis is required before every development stage.
  3. 3
    1. The Spiral model requires explicit risk identification and mitigation at the start of each cycle, which matches the safety requirements of this project.
  4. 4
    1. Repeated prototyping and testing in each spiral cycle also reduces the chance of critical defects being missed, which is essential for a safety-critical system.

5. Common Pitfalls

Wrong move:

Claiming Agile does not include all core software lifecycle stages

Why:

All core stages are still completed in Agile, just repeated incrementally across sprints instead of done once at the start

Correct move:

State that core stages are repeated for each increment, rather than omitted entirely

Wrong move:

Claiming Waterfall is never used in modern development

Why:

Waterfall is still appropriate for small projects with completely fixed requirements and low overhead needs

Correct move:

Justify Waterfall for small, fixed-requirement scenarios where iteration is unnecessary

Wrong move:

Confusing incremental and iterative development

Why:

The terms describe different concepts, even though modern models combine both

Correct move:

Remember: incremental = adding new functionality in chunks, iterative = refining the product through repeated cycles

Wrong move:

Selecting Agile for all large projects

Why:

Agile lacks the rigorous documentation and formal risk analysis required for regulated safety-critical projects

Correct move:

Select Spiral or Waterfall for safety-critical, regulated projects with fixed requirements

Wrong move:

Forgetting to include maintenance as a core lifecycle stage

Why:

Most software spends most of its lifetime in the maintenance stage after deployment

Correct move:

Always include maintenance (and eventual retirement) when listing lifecycle stages in exams

6. Quick Reference Cheatsheet

Model

Best For

Key Advantage

Key Disadvantage

Waterfall

Small, fixed requirements, low risk

Simple, low overhead, clear documentation

Cannot handle changes, late testing

Agile

Dynamic requirements, consumer products

Fast delivery, adapts to change

Higher overhead, less formal documentation

Spiral

Large, high-risk, safety-critical projects

Explicit risk management

Time-consuming and expensive

RAD

Fast development, user-focused projects

Quick delivery, early user feedback

Poor focus on non-functional requirements

When this came up on past exams

AI-estimated based on syllabus patterns β€” cross-check with official past papers for accuracy. Use only as revision-focus signals.

  • 2022 Β· 1

    Justify model selection scenario

  • 2023 Β· 1

    Compare Waterfall and Agile

  • 2024 Β· 1

    Describe Spiral model use case

What's Next

Understanding software lifecycle models is a foundational topic for CIE 9618 Paper 1, and is assessed almost every year in both multiple choice and structured response questions. You will often be asked to select and justify a model for a given scenario, so practicing matching model properties to scenario characteristics is key to earning full marks. This knowledge underpins all subsequent software development topics, where you will explore individual lifecycle stages in more detail for exam assessment.