Learn in your language
Skip to content
IGCSE · Cambridge (CIE) · 0478

Use the program development life cycle

Connect analysis, design, coding and testing as stages that can repeat while a solution improves.

Section 7 · Algorithm design and problem-solving

Cambridge IGCSE Computer Science 0478 · Algorithm design and problem-solving · 2026–2028 Version 6 · 7

This sequence follows Cambridge IGCSE Computer Science 0478, 2026–2028 syllabus Version 6. It covers subject content Topic 7 only. The separately published 2029–2031 syllabus is not mapped here. Practice is original, self-checked and does not award an official Cambridge grade. Full timed papers and human subject-teacher review remain outstanding.

Before you begin

  • No programming language is required. Be comfortable with place value and multiplication; each lesson introduces the computer-science notation it uses.

Work on paper. Try each question before revealing help, and explain why your method works.

Quick readiness check

What should analysis establish before a solution is designed?

What you will learn

  • Name the four development stages
  • Explain the purpose of each stage
  • Describe how testing can lead back to design or coding

A solution develops through four stages

Analysis identifies the problem, users, inputs, required processes and outputs. Design plans a solution using methods such as structure diagrams, flowcharts or pseudocode. Coding turns that design into a program.

Apply and check the rule

Testing uses test data to check whether the program works as intended. When a test reveals a problem, the developer may return to analysis, design or coding and test again. The cycle is iterative: a program is not ready merely because it runs once.

Pause and explain

A test fails because the code applies the wrong discount. What is the sensible next action?

Put the idea to work

Worked example

A library app gives the wrong overdue total. Which development stages should the team revisit?

Show the worked solution
  1. Testing exposed a failure against the requirement.
  2. Review the analysis to confirm the correct rule.
  3. Amend the design or code, then test again.

Answer Review the requirement and design, amend the code, and repeat the relevant tests.

Try a topic test

Choose Easy, Normal or Difficult. Save your answers and open worked review after finishing.

Test this topic →

From guided practice to a new situation

Write your answer and reasoning first. Use a hint only if you are stuck. The model solution is for self-checking; your written work is not automatically marked.

1 · Guided

Put analysis, design, coding and testing in a sensible first-cycle order and state each role.

Give me a hint

Start by deciding what problem must be solved.

Compare my reasoning
  1. Analysis identifies the problem and requirements.
  2. Design plans the steps; coding implements them.
  3. Testing checks the implementation with data.

Analysis → design → coding → testing; testing may lead to a revised design or code.

Look for these in your work

  • Four stages
  • Order
  • Iteration recognized
2 · Independent

A program meets its written requirement but users cannot enter a required value. Which stage was likely incomplete, and what should happen next?

Give me a hint

Consider where user needs and inputs are identified.

Compare my reasoning
  1. Analysis may have missed a user input requirement.
  2. Update the requirements and design the input step.
  3. Code and test the revised program.

Return to analysis to clarify the input requirement, update the design and code, then test it.

Look for these in your work

  • Stage identified
  • Requirement fixed
  • Further stages
3 · Transfer

A team says a program is complete because it passed one normal test. Explain why its development cycle is not yet well evidenced.

Give me a hint

One typical input cannot cover all requirements and error cases.

Compare my reasoning
  1. Analysis must capture the required behaviour.
  2. Testing needs suitable normal, invalid and boundary data for important rules.
  3. Failures should be corrected and the revised program retested.

One normal test only provides limited evidence. Test the requirements with suitable data, correct any failures, and retest the changes before judging the program.

Look for these in your work

  • Evidence limitation
  • Broader tests
  • Iteration

Common mistakes

  • Treating testing as the final step that can never lead to changes
  • Starting coding before understanding the problem
Recall without your notes

What can you explain now?

Which stage checks a program with test data?

Compare with the explanation

Testing

Testing compares program behaviour with expected results for selected inputs.

After trying it yourself, choose your next review. This is your self-assessment.

Your review choice appears on Today. Sign in to sync it across devices.

Make it stick

Name the four development stages and explain how they can repeat.

If you needed the solution, close it and solve the problem again from a blank page. A correct answer is stronger when you can explain the reason for each step.

Keep learning Computer Science

Course scope and assessment

165 original lessons map the listed objectives across all 10 main topics in the 2026–2028 Version 6 syllabus, with worked explanations and guided, independent and transfer practice. This is mapped teaching coverage, not proof of full exam readiness. Three earlier starter lessons remain available but are not counted as syllabus-mapped teaching. Practical programming experience in an executable browser workspace, full timed-paper practice, human subject-teacher review and the separate 2029–2031 syllabus remain outstanding. Practice is self-checked and does not award an official Cambridge grade.

StudyForA · Learn with understanding

Original teaching content and links to official sources. Check your exam year and qualification before using a resource.