💻 Computer Science · Topic 21 of 97

Decomposition and Abstraction

Decomposition breaks a big problem into smaller parts, and abstraction removes unnecessary detail to focus on what matters.

▶ Interact

Play with the controls to see the idea in action.

Loading animation…

📘 Learn

Decomposition breaks a big problem into smaller parts, and abstraction removes unnecessary detail to focus on what matters.

  • Solve small parts separately
  • A map is an abstraction
  • Both are parts of computational thinking

🧠 Quick quiz

Three questions. Score 2 or more to complete the topic.

What is Decomposition and Abstraction?

Within Computer Science, which covers algorithms, programming, data, networks, hardware and safe, responsible use of technology, this topic explains Decomposition and Abstraction. Computing topics explain how software, hardware and data work, with diagrams and models that show each step in order.

Check that you can explain Decomposition and Abstraction in your own words and give one example from everyday life. If you can do that, you have understood the core idea.

Understanding Decomposition and Abstraction helps you design, test and explain programs, websites and systems, from small projects to exam questions.

Decomposition and Abstraction in detail

Decomposition is breaking a complex problem into smaller, simpler sub-problems that can be solved separately and then combined. Planning a school trip, for instance, divides into transport, costs, permissions and activities. In programming, it leads to functions and modules.

Abstraction is removing unnecessary detail and focusing on the important features. A map of the Underground leaves out real distances and shows only stations and connections. Abstraction lets you build models and hide complexity, so a user can press a button without knowing how it works. Both are key parts of computational thinking.

How the interactive helps you understand Decomposition and Abstraction

Click a step, or use the Previous and Next buttons, to move through the sequence one stage at a time. Auto-play moves on for you.

Before you change anything, predict the result. Then change one value at a time and check whether your prediction was right. This is a quick way to build a correct mental model of Decomposition and Abstraction.

Real-life uses and examples

Common mistakes to avoid

Frequently asked questions about Decomposition and Abstraction

What is Decomposition and Abstraction?

Decomposition breaks a big problem into smaller parts, and abstraction removes unnecessary detail to focus on what matters.

What are the most important points about Decomposition and Abstraction?

The main points are: Solve small parts separately; A map is an abstraction; Both are parts of computational thinking.

Why is Decomposition and Abstraction useful?

Understanding Decomposition and Abstraction helps you design, test and explain programs, websites and systems, from small projects to exam questions.

How can I practise Decomposition and Abstraction?

Open the interactive at the top of this page and change the controls one at a time. Predict the result before each change, then take the three-question quiz. A score of two or more marks the topic as complete on this device.

Which topics are related to Decomposition and Abstraction?

Related topics in Computer Science include Variables and Data Types, Iteration: Loops, Functions and Procedures.

← PreviousPseudocodeNext →Pattern Recognition

Keep exploring Computer Science