Skip to main content
EnglandComputer ScienceSyllabus dot point

What are abstraction, decomposition and algorithmic thinking, and how do they help you solve a problem?

The principles of computational thinking: abstraction, decomposition and algorithmic thinking, and how each is used to analyse a problem and design a solution.

An OCR J277 2.1.1 answer on the principles of computational thinking: abstraction (removing unnecessary detail), decomposition (breaking a problem into smaller parts) and algorithmic thinking (a clear sequence of steps), with examples of how each is applied to a problem.

Generated by Claude Opus 4.89 min answer

Reviewed by: AI editorial process; not yet individually human-reviewed

Have a quick question? Jump to the Q&A page

Jump to a section
  1. What this dot point is asking
  2. Abstraction
  3. Decomposition
  4. Algorithmic thinking
  5. How the three fit together
  6. Try this

What this dot point is asking

OCR wants you to define and apply the three principles of computational thinking: abstraction, decomposition and algorithmic thinking. These are the problem-solving habits behind every algorithm you design, and the definitions are examined directly in Paper 2. You must be able to define each term precisely and give an example of how it is used on a real problem.

Abstraction

In programming, abstraction decides which data and rules to include in a model. A program that books cinema tickets needs the film, time, seat and price, but can ignore the audience's ages or the colour of the seats, because they do not affect the booking. Choosing the right level of abstraction, keeping the essential and dropping the irrelevant, is a key design skill.

Decomposition

Decomposition has clear benefits: each smaller part is easier to understand, write and test; different people can work on different parts at the same time; and a part can be reused or changed without rewriting everything. In code, decomposition naturally leads to subprograms (procedures and functions), each handling one sub-problem.

Algorithmic thinking

How the three fit together

The three principles are used together, not in isolation. Abstraction strips the problem down to what matters. Decomposition splits that down to manageable sub-problems. Algorithmic thinking turns each sub-problem into an ordered sequence of steps. The result is an algorithm you can write, test and refine. Recognising which principle a description illustrates, and applying each to a scenario, is exactly what the exam asks.

Try this

Q1. Define abstraction. [1 mark]

  • Cue. Removing or hiding unnecessary detail to focus on the important parts of a problem.

Q2. Define decomposition and give one benefit of using it. [2 marks]

  • Cue. Breaking a problem into smaller sub-problems; a benefit is that each part is easier to solve, or that parts can be worked on, tested or reused separately.

Q3. A weather app shows a simple sun or cloud icon rather than full meteorological data. Which principle of computational thinking does this illustrate? [1 mark]

  • Cue. Abstraction (unnecessary detail is removed, leaving only what the user needs).

Exam-style practice questions

Practice questions written in the style of OCR exam questions on this dot point, with worked answer explainers. The year tag is the paper they imitate, not the source.

OCR 20214 marksDefine the terms abstraction and decomposition, and for each give an example of how it is used when planning a program to manage a school library.
Show worked answer →

Award up to two marks per term (definition plus example).

Abstraction (up to 2): removing or hiding unnecessary detail so you can focus on the important parts of a problem. Example: a library program stores a book's title, author and ISBN but ignores irrelevant details such as the colour of the cover or the smell of the pages.

Decomposition (up to 2): breaking a large, complex problem down into smaller, more manageable sub-problems that can be solved separately. Example: the library system is split into separate parts for searching for a book, issuing a book, returning a book and managing members.

Markers reward a precise definition and a relevant example for each. Swapping the two definitions, or giving an example that does not match the term, loses marks.

OCR 20223 marksExplain what is meant by algorithmic thinking, and state two benefits of decomposing a problem before writing a program.
Show worked answer →

Algorithmic thinking (1 mark): identifying the steps needed to solve a problem and putting them in a clear, logical order so they can be turned into an algorithm.

Two benefits of decomposition (1 mark each): each smaller sub-problem is easier to understand and solve than the whole; different people can work on different parts at the same time; parts can be tested and reused independently; and the program is easier to maintain because a change is contained in one part.

Markers reward a clear description of algorithmic thinking as breaking a task into ordered steps, and two genuinely different benefits, not the same benefit reworded.

Related dot points

Sources & how we know this