Choose exam board for KS4 Computer Science (GCSE)
Choose exam board for KS4 English
Choose exam board for KS4 French
Choose exam board for KS4 Geography
Choose exam board for KS4 German
Choose exam board for KS4 History
Choose tier for KS4 Maths
Choose exam board for KS4 Music
Choose exam board for KS4 Physical education (GCSE)
Choose exam board for KS4 Religious education (GCSE)
Choose exam board for KS4 Spanish

      Programming project: iteration I

      Lesson details

      Learning outcome

      I can use a project brief to plan a program using flowcharts.

      Key learning points

      1. The logical flow of a program is described step by step, showing the sequence of actions, decisions, and outcomes.
      2. Implementation involves writing and structuring code to match a planned design.

      Keywords

      • Decomposition - breaking down a problem into smaller parts to make the task more manageable

      • Pre-condition loops - a loop that checks its condition at the start before any code inside the loop is run

      • Post-condition loop - a loop that runs its code first, then checks the condition at the end to decide if it should repeat

      Common misconception

      I don’t need to follow the project brief to draw a flowchart.

      The project brief gives you the purpose and requirements of the program. A flowchart must reflect those to show how the program will work step by step.

      Teacher tip

      Model how to break the project brief into smaller parts using decomposition. Show how each part becomes a section of the flowchart.

      Equipment

      Pupils will need access to a device that can edit and run Python programs. Examples in this lesson use the RPF Code Editor https://oak.link/python-editor

      Licence

      This content is © Oak National Academy Limited (2026), licensed on Open Government Licence version 3.0
      except where otherwise stated. See Oak's terms & conditions
      (Collection 2).

      Lesson video

      Loading...

      Prior knowledge starter quiz

      6 Questions

      Q1.
      What does it mean for a program to be robust?

      It runs quickly.
      It uses fewer resources.
      Correct answer: It handles errors without crashing.
      It has a user-friendly interface.

      Q2.
      Which of the following is an example of exception handling?

      Correct answer: using try and except blocks
      writing clean code
      adding comments to code
      optimising program speed

      Q3.
      Why is exception handling important in programming?

      It ensures that the program runs faster.
      It makes the code easier to write.
      It improves the program’s visuals.
      Correct answer: It prevents the program from crashing due to errors.

      Q4.
      Which keyword is used in Python to handle exceptions?

      Correct answer: except
      handle
      error
      catch

      Q5.
      What is a common method to test the robustness of a program?

      writing more code
      running the program on different devices
      Correct answer: providing unexpected inputs to see how the program handles them
      using only valid inputs during testing

      Q6.
      What Python statement is used to handle a specific exception, such as a value error?

      Correct Answer: except ValueError:

      6 Questions

      Q1.
      When you are designing a program, what does a project brief provide?

      Correct answer: the purpose and requirements of the program
      the program’s flowchart
      the program’s code
      the expected runtime of the program

      Q2.
      What term describes breaking a problem into smaller, more manageable parts in programming?

      Correct Answer: decomposition, decomposing

      Q3.
      Correctly order the steps in a pre-condition loop’s execution:

      1 - Check the loop condition.
      2 - Run the code inside the loop.
      3 - Repeat if the condition is True.

      Q4.
      What is used to visually represent the logical flow of a program, including actions, decisions and outcomes?

      Correct Answer: flowchart, flow chart

      Q5.
      Why is it necessary to follow the project brief for a program when designing the program's flowchart?

      It ensures that the flowchart is visually appealing.
      Correct answer: It ensures that the flowchart reflects the program's purpose and requirements.
      It reduces the time needed to draw the flowchart.
      It allows the flowchart to include extra features not required by the program.

      Q6.
      Match each keyword to its correct definition or description:

      Correct Answer:decomposition,breaking down a problem into smaller, manageable parts

      breaking down a problem into smaller, manageable parts

      Correct Answer:pre-condition loop,a loop that checks its condition at the start before running the code

      a loop that checks its condition at the start before running the code

      Correct Answer:post-condition loop,a loop that runs its code first, then checks the condition

      a loop that runs its code first, then checks the condition

      Correct Answer:validation,ensuring that input data is correct and appropriate

      ensuring that input data is correct and appropriate

      Correct Answer:robust,a program that handles errors or unexpected inputs without crashing

      a program that handles errors or unexpected inputs without crashing


      To help you plan your 10 computer science lesson on: Programming project: iteration I, download all teaching resources for free and adapt to suit your pupils' needs...