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 - dictionaries I

      Lesson details

      Learning outcome

      I can develop a set of success criteria from a project brief and use the criteria to start developing a solution.

      Key learning points

      1. Before you begin a large project, it can be helpful to write the success criteria.
      2. Success criteria are specific, measurable benchmarks used to determine if a project has been accomplished successfully.
      3. A code log is a document that you can use when developing a program to keep track of your progress.
      4. A code log can record any problems that you come across and how you solved them.

      Keywords

      • Success criteria - specific, measurable and realistic benchmarks used to determine if a project, task or outcome has been accomplished successfully

      • Code log - a document that you can use when developing a program to keep track of your progress throughout the project

      Common misconception

      A project brief always includes success criteria.

      Sometimes a project brief may not include success criteria, but a brief description of what the program needs to do. You may need to generate success criteria from the project brief.

      Teacher tip

      This lesson contains some additional materials that will support pupils. You could download these in advance of the lesson and make them available to pupils on a shared drive.

      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 is an identifier in programming?

      a function that deletes data
      Correct answer: a name for a variable or subprogram
      a type of data structure
      a way to store files

      Q2.
      What is the process of breaking a program into smaller, more manageable parts?

      Correct Answer: Decomposition

      Q3.
      What does abstraction mean in programming?

      breaking a program into smaller parts
      writing code without using variables
      Correct answer: hiding unnecessary details to focus on the essential features
      using only predefined functions

      Q4.
      What data structure uses key-value pairs to store and access data?

      Correct Answer: Dictionary

      Q5.
      Match the terms to their definitions.

      Correct Answer:subprogram,a sequence of instructions to perform a specific task

      a sequence of instructions to perform a specific task

      Correct Answer:record,a collection of attributes for a single entity

      a collection of attributes for a single entity

      Correct Answer:attribute,a property or characteristic of an entity

      a property or characteristic of an entity

      Correct Answer:dictionary,a data structure using key-value pairs

      a data structure using key-value pairs

      Q6.
      Why is it important to structure a program?

      Correct answer: to make it more manageable for the programmer
      to make the program run faster
      to reduce the size of the program
      to delete unnecessary data

      6 Questions

      Q1.
      What are success criteria?

      a list of project tasks to complete
      a way to record problems during development
      a description of the software being used
      Correct answer: specific, measurable and realistic benchmarks for a project

      Q2.
      Why is it important to write success criteria before starting a project?

      Correct answer: to provide clear goals for the project
      to determine the programming language to use
      to identify the software required
      to ensure the project is completed quickly

      Q3.
      Match the tasks to their purposes.

      Correct Answer:writing success criteria,to define clear goals for the project

      to define clear goals for the project

      Correct Answer:using a code log,to document progress and problems during development

      to document progress and problems during development

      Correct Answer:reviewing a project brief,to understand what the program needs to do

      to understand what the program needs to do

      Q4.
      What should you do if a project brief does not include success criteria?

      Correct answer: generate success criteria from the project brief
      skip writing success criteria
      use a code log instead
      start coding immediately

      Q5.
      What might a code log include?

      a list of success criteria
      a description of the project brief
      Correct answer: problems encountered and how they were solved
      a summary of software requirements

      Q6.
      What is the main purpose of success criteria?

      to document problems during development
      to describe the software being used
      to list programming languages
      Correct answer: to measure if the project is successful

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