Computational thinking — OCR GCSE Computer Science
Teaching note checked against the official specification.
Test yourself on Computational thinking with OCR GCSE practice questions.
A week of Premium from your first lesson · Then the free plan continues · No card, no charge
Computational thinking explained
Computational thinking is a set of problem-solving principles used before code is written.
Read the full explanation
Abstraction removes unnecessary detail so only the essential features of a problem remain, for example modelling a bus timetable using stops and times while ignoring seat fabric. Decomposition breaks a large problem into smaller sub-problems that are easier to solve, test and maintain, such as splitting a game into player movement, scoring and collision detection. Algorithmic thinking means expressing a solution as a precise, ordered sequence of steps or rules that a computer could follow, often shown as pseudocode or a flowchart. Together these principles help you design efficient, correct and manageable solutions, and they are assessed by applying them to unfamiliar scenarios rather than by reciting definitions alone.
Your focus
- Define abstraction, decomposition and algorithmic thinking accurately.
- Apply the three principles to an unfamiliar problem scenario.
- Explain how each principle contributes to a correct and manageable solution.
Computational thinking flashcards
Card 1 of 10
Computational thinking
Computational thinking exam tips
Marking Points
- Defines abstraction as removing or hiding unnecessary detail to focus on the essential features needed to solve the problem.
- Defines decomposition as breaking a complex problem into smaller, more manageable sub-problems that can be solved separately.
- Defines algorithmic thinking as producing a precise, ordered set of steps or rules that solves the problem and can be followed mechanically.
- Applies the principles to a given scenario, for example identifying sub-problems in a booking system or stating which details a model can ignore.
- Explains a benefit such as simpler design, easier testing, reuse of sub-solutions or clearer communication of the solution.
- Distinguishes the three principles and uses correct terminology rather than treating them as interchangeable.
Examiner Tips
- 💡Read the scenario carefully and name the specific detail being removed or the specific sub-problem being separated, rather than giving a generic definition.
- 💡When asked to decompose, present sub-problems as short labelled parts and state briefly what each part must do.
- 💡Use the words abstraction, decomposition and algorithmic thinking accurately in your answer so the examiner can see which principle you are applying.
Common Mistakes
- Treating abstraction as simply making a program shorter; correction: abstraction is about selecting essential information and discarding irrelevant detail, which may not shorten code at all.
- Confusing decomposition with writing code line by line; correction: decomposition is the planning stage of splitting a problem into sub-problems before implementation.
- Describing algorithmic thinking as any list of ideas; correction: an algorithm must be precise, ordered and unambiguous so each step can be carried out exactly.