Cambridge IGCSE · Topic 7 (1-2)
IGCSE Computer Science 0478 / Topic 7 / IGCSE

Plan before you code.

Good programs are not typed in one go. Programmers work through four stages: they analyse the problem, design a solution, code it and test it. Each stage has its own tools, and the exam expects you to name them and say what happens at each one.

The key idea

The program development life cycle has four stages. Analysis: identify the problem and its requirements, using abstraction (keep the important details, remove the rest) and decomposition (break it into smaller parts). Design: plan the solution with structure diagrams, flowcharts and pseudocode. Coding: write the program code, with iterative testing of each part as it is written. Testing: test the finished program with planned test data.

The program development life cycle AnalysisDesign CodingTesting iterative testing identify the problemrequirementsabstractiondecomposition decompositionstructure diagramsflowchartspseudocode write program codetest each moduleas it is written whole programtested withplanned test data
Fig. 1: the four stages, with iterative testing looping back during coding
Section 01

Analysis: understand the problem.

Before anyone designs anything, they must know exactly what the program has to do. Analysis turns a vague request ("we need a system for the school library") into a clear list of requirements.

Worked example Abstraction
A program will plan the fastest bus route between two stops. Give two details to keep and one detail to remove.
  1. Ask: does this detail change the answer to the problem?
  2. Keep: the stops on each route and the journey time between stops (also: departure times).
  3. Remove: the colour of the buses or the names of the drivers; they do not affect the fastest route.
Answer: Keep stops and journey times; remove details such as bus colour
Examiner trap

Abstraction is not the same as decomposition. Abstraction removes unnecessary detail; decomposition splits the problem into smaller parts. Questions often ask you to describe one of them, so do not mix them up.

Section 02

Design: plan the solution.

In the design stage the programmer works out how the program will meet the requirements, before writing any real code. The design is a plan another programmer could follow.

Your turn
Name the stage of the life cycle in which a flowchart is drawn, and the stage in which test data is used on the whole program.
Stage 1 · Learn

Check what the sim just showed you

Four quick checks. Each correct answer earns XP and records this skill on your profile.

Quick check+10 XP

Which stage of the program development life cycle comes directly after analysis?

Quick check+10 XP

What is abstraction?

Quick check+10 XP

In which stage are structure diagrams, flowcharts and pseudocode produced?

Quick check+10 XP

What is meant by iterative testing?

Section 03

Coding and testing.

Try running a short program in the lab. Change one line, run it again and check the trace table: that is iterative testing in miniature.

StageWhat happensTypical tools or outputs
AnalysisIdentify the problem and the requirementsAbstraction, decomposition, requirements list
DesignPlan how the solution will workStructure diagrams, flowcharts, pseudocode
CodingWrite the program; test each module as it is written and fix it (iterative testing)Program code in a high-level language
TestingTest the completed program to check it meets the requirementsNormal, abnormal, extreme and boundary test data
Examiner trap

Iterative testing belongs to the coding stage: small parts are tested and corrected repeatedly while they are being written. The testing stage is when the whole program is tested with test data.

Stage 2 · Exam

Exam-style questions

Unlocks once the four checks above are done. Worth more XP, written to IGCSE Paper 1 standard.

Finish the four checks above to unlock the exam questions
Exam style+20 XP

A programmer writes a list of everything a new booking system must do. Which stage is this?

Exam style+20 XP

Which task is carried out in the testing stage?

Exam style+20 XP

Which pair of tasks both belong to the analysis stage?

Exam style+20 XP

A weather app shows only temperature and rain, not air pressure readings. Which technique is this?

Skill unlocked

Life cycle, mastered.

This skill is now recorded on your profile. Keep the chain going.

-Rank -Level -Score -Topics
Go deeper · practice
Six original Cambridge-style questions
The four stages of the program development life cycle and the tasks carried out at each one.