← IGCSE Computer Science Paper 2

The analysis stage

The first stage of the PDLC: work out exactly what problem must be solved and what the program must do, using abstraction and decomposition, before any design or code.

Understanding The analysis stage in IGCSE Computer Science Paper 2

What it does: Decomposition is the analysis task of breaking a problem into smaller parts. The PDLC order puts analysis first. Design, coding and testing only start once the problem and requirements are clear. Abstraction means focusing on what matters for the problem and ignoring detail that is not needed. Flowcharts, hierarchy charts and pseudocode show how the solution will work, so they belong to design, not analysis.

Common mistakes: The PDLC order is Analysis, Design, Coding, Testing. Stage 3 should be Coding, not Testing, because there is no program to test until it has been coded. Analysis is the first stage of the PDLC. Stage1 should be "Analysis", because the problem must be understood before any coding.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 1–16) and word search (Modules 1–26).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
Which stage of the program development life cycle comes first?
AnalysisCoding
Matches
A student starts writing code in the analysis stage
↓
Code is written in the coding stage, not in analysis. Analysis only works out the problem and what the program must do, before any design or code.
Applying
Meanings
Term
Analysis
Meaning
The first stage of the PDLC: work out exactly what problem must be solved and what the program must do, using abstraction and decomposition, before any design or code.
Practice
// ANALYSIS: school quiz program
Testing
Gaps
// Stage 1:
Check Answer
Spots
2OUTPUT "Stage 2: Design"
3OUTPUT "Stage 3: Testing"

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Lion's Mane Jellyfish' badge — Set Operator, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. Which stage of the program development life cycle comes first?
A. Coding
B. Analysis ✓
Analysis is the first stage. The programmer must understand the problem before designing, coding or testing anything.
2. Which task belongs to the analysis stage?
A. Working out exactly what the program must do ✓
B. Writing the program in a programming language
Analysis is about understanding the problem and the requirements. Writing the program happens later, at the coding stage.
3. A student starts typing code before they understand the problem. What has gone wrong?
A. They skipped analysis ✓
B. They finished the testing stage early
Analysis must happen before any design or code, otherwise the program may not solve the right problem.
4. Which is a purpose of abstraction during analysis?
A. Keeping the important details and removing unnecessary ones ✓
B. Adding as many extra details as possible
Abstraction means focusing on what matters for the problem and ignoring detail that is not needed.
5. Which describes decomposition at the analysis stage?
A. Joining several small programs into one file
B. Breaking a large problem into smaller sub-problems ✓
Decomposition splits a complex problem into smaller parts that are easier to understand and solve.

Match the Pairs

Analysis → The first stage of the PDLC, where the programmer works out exactly what problem must be solved and what the program must do
Abstraction → Keeping only the details needed to solve the problem and hiding the ones that are not needed
During analysis, a big problem is split into smaller sub-problems that are easier to solve → Decomposition
Analysis happens before any design or coding, so the first stage comes before flowcharts, pseudocode and program code → Analysis -> Design -> Coding -> Testing
A student starts writing code in the analysis stage → Code is written in the coding stage, not in analysis. Analysis only works out the problem and what the program must do, before any design or code.
Analysis: draw a flowchart of the algorithm → Drawing a flowchart is a design task, not analysis. Analysis identifies the problem and requirements, using abstraction and decomposition.

Key Term

Analysis
The first stage of the PDLC: work out exactly what problem must be solved and what the program must do, using abstraction and decomposition, before any design or code.

Fill in the Blanks

1. // Stage 1: Analysis // Work out what the program must do
Hint: Type the name of the first stage of the PDLC.
2. // Analysis comes before design and coding
Hint: Type the word that describes when analysis happens compared with design and coding.
3. // Use abstraction to ignore extra detail
Hint: Type the technique that removes unnecessary detail from a problem.
4. // Decomposition splits a problem into parts
Hint: Type the technique that breaks a problem into smaller sub-problems.
5. // Analysis lists the requirements
Hint: Type the word for what the program must do, which is written down during analysis.

Spot the Error

Question 1
A OUTPUT "Stage 1: Analysis"
B OUTPUT "Stage 2: Design"
C OUTPUT "Stage 3: Testing"
D OUTPUT "Stage 4: Testing"
Line C — The PDLC order is Analysis, Design, Coding, Testing. Stage 3 should be Coding, not Testing, because there is no program to test until it has been coded.
Question 2
A Stage1 ← "Coding"
B Stage2 ← "Design"
C Stage3 ← "Coding"
D Stage4 ← "Testing"
Line A — Analysis is the first stage of the PDLC. Stage1 should be "Analysis", because the problem must be understood before any coding.
Question 3
A // Problem: bus timetable app
B // Keep: paint colour
C // Ignore: paint colour
Line B — Abstraction keeps only the details needed to solve the problem. Paint colour is irrelevant to a timetable app, so it should be ignored, and the kept details should be the bus number and time.
Question 4
A // Decompose: join problems
B // Part 1: ask questions
C // Part 2: mark answers
D // Part 3: show score
Line A — Decomposition means splitting a problem into smaller sub-problems, not joining problems together. The line should say split.
Question 5
A Problem ← "Mark a test"
B Input ← "Final score"
C Output ← "Final score"
D Process ← "Compare answers"
Line B — The final score is produced by the program, so it is an output. The input at the analysis stage is the student answers.

Student with a class code? Join your class →