KS3 · Computer Science

Abstraction in computational thinking

Describe your best friend and you could go on for ages. A birthday-reminder app needs almost none of it. Choosing what to ignore has a name: abstraction.

Abstraction · Keep or leave out?

Same friend, two different models

Meet Sam, a made-up friend with lots of details. Pick a purpose, then sort every detail: does this model need it, or can it be left out? When you've finished, switch purpose and sort the SAME details again.

The app has one job: remind you on the right day, and tell you whose birthday it is.

Still to sort

Keep (0)

This purpose needs it.

Where the line is: Ask: would the model do its job worse without this detail? If yes, keep it.

Leave out (0)

This purpose doesn't need it.

Where the line is: Leaving a detail out is a deliberate choice, not a mistake — it keeps the model simple.

7 of 7 still to sort.

Once you've done both sorts, compare them. Same seven details, but the Keep pile changed completely. There's no single right model of Sam, only the right model for a purpose.

Computer Science · Structure

A train map that's 'wrong' on purpose

A made-up city's train map. Every gap between stops is drawn the same length, whatever the real distance. Tap a stop to see what the map keeps and what it leaves out.

Line 1Line 2

Tap any part of the diagram to see what it does.

Computer Science · Algorithms

Trace table — dry run the code

A made-up model of a game character. The columns x, score and lives are its STATE. Each 'when' line is a BEHAVIOUR rule. Step through and watch the rules change the state.

1x = 0
2score = 0
3lives = 3
4when right arrow pressed: x = x + 1
5when coin collected: score = score + 10
6when hit by enemy: lives = lives - 1
event
x
score
lives
Press Start to run the first line.
·

Ready when you are — step through one line at a time.

Evaluating an abstraction

Is this a good model for its job?

The claim

A made-up 'Do I need a coat?' app models tomorrow's weather using only three details: the temperature, the chance of rain, and the wind direction to the nearest degree. Everything else, including wind speed, is left out. Claim: this is a good abstraction for its purpose.

Place each piece of evidence to load the balance. Mark the strong ones — they count double.

  1. It keeps the temperature, one of the main things that decides whether you need a coat.

    Evidence 1: does it support or challenge the claim?
  2. It keeps the chance of rain, so it can warn you before a wet day.

    Evidence 2: does it support or challenge the claim?
  3. It leaves out lots of other weather readings, so the app stays quick and simple to use.

    Evidence 3: does it support or challenge the claim?
  4. Wind direction to the nearest degree is far more exact than a yes-or-no coat decision needs.

    Evidence 4: does it support or challenge the claim?
  5. Without wind speed, it could say 'no coat' on a mild but very windy day that feels cold.

    Evidence 5: does it support or challenge the claim?

Where abstraction fits

What does 'doing abstraction' actually mean?

Your friend says: "We've got to make a computer model of the school library so people can find books. First job: abstraction!"

What do you think doing abstraction will mean for this job?
How sure are you?

WHAT YOU'VE LEARNED

A quick recap of today's lesson.

Keep the details the problem needs. Hide the rest.

What you need to know

  • Abstraction keeps the important details and hides the rest.
  • Which details are important depends on what the model is for.
  • Computer models have state (data) and behaviour (rules), and a good one has just the right amount of detail.

The big picture

Abstraction means removing or hiding the details a problem doesn't need and keeping the ones that matter, so the problem becomes simpler to understand and solve. Which details matter depends on the purpose. A computer model of something records its state (its data at a moment) and its behaviour (the rules that change that data), and a good abstraction keeps enough detail to be useful without becoming complicated.

Key points

1Abstraction is removing or hiding details that are not needed to solve a problem, and keeping the ones that are important, so the problem is simpler to understand and solve.
2Importance depends on purpose: a detail that is essential for one problem can be useless for another, so the same thing can be abstracted in different ways.
3A transport map is an abstraction: it keeps stops, lines and connections, and leaves out exact distances, streets and buildings.
4A computational abstraction is a model a computer can work with. Its state is the data describing it at a given moment; its behaviour is the rules that change that state.
5Evaluate an abstraction by asking whether it has the right amount of detail: too much makes it complicated, too little makes it unhelpful or wrong for its task.
6Abstraction is one part of computational thinking, used alongside decomposition (breaking a problem into smaller parts) and designing algorithms.

Worked example

Problem

Design an abstraction of a pet dog, Biscuit, for a 'walk reminder' app that tells the owner when the dog is due its next walk. Say what the model keeps and leaves out, then name its state and one piece of behaviour.

⚠ Watch out

Thinking abstraction means removing as much as possible. Take away a detail the purpose needs — like the date of birth from a birthday reminder — and the model stops working. Abstraction keeps the important details and hides only the ones the problem doesn't need.

🧠

Memory hook

Keep what the job needs, hide the rest. A train map is 'wrong' about distance on purpose — and that's exactly why it's useful.

✓

Check yourself

A school wants a computer model of each classroom so that rooms can be booked for lessons. Name two details the model should keep and two it could leave out, and say why for each.

Flashcards

(13)
What is abstraction?
Removing or hiding details that aren't needed to solve a problem, and keeping the important ones, so the problem is simpler to understand and solve.
What decides which details are important in an abstraction?
The purpose of the problem. A detail that is essential for one problem can be irrelevant to another.
Can one real-world thing have more than one good abstraction?
Yes. Different purposes need different details, so the same thing can be modelled in different ways.
What does a transport map keep?
The stops, the lines, and how they connect.
What does a transport map leave out, and why?
Exact distances, streets and buildings — because planning a route only needs the connections.
What is a computational abstraction?
A model of a real-world problem or system that a computer can work with.
What is the state of a model?
The data that describes it at a given moment — for example, a game character's position and score.
What is the behaviour of a model?
The rules that describe how its state changes — for example, 'when a coin is collected, add 10 to the score'.
What are you judging when you evaluate an abstraction?
Whether it keeps enough detail to be accurate and useful for its purpose, while leaving out enough to stay manageable.
Too much detail or too little: what goes wrong with each?
Too much makes the model complicated. Too little makes it unhelpful or wrong for its task.
What is decomposition?
Breaking a problem into smaller parts.
Abstraction or decomposition: which one chooses the details to keep?
Abstraction. Decomposition splits the problem into parts; abstraction decides which details each model needs.
Name three techniques that are part of computational thinking.
Abstraction, decomposition and designing algorithms.

Tap any card to flip it, or use Study as deck to go through them one at a time. In the full lesson these run as a spaced-repetition deck — you rate each card Hard, Good or Easy and the tricky ones keep coming back until they stick.

Learning with Lightbulb is opening soon

You can use this lesson now. Join the waitlist and we'll let you know when the full Lightbulb experience is ready.

Keep me posted

More KS3 Computer Science topics

See the full KS3 Computer Science curriculum →

How this lesson was checked. This KS3 Computer Sciencelesson was published through Lightbulb Learning's human-designed editorial process — the educational standards, accuracy rules and publication checks it must pass were authored and approved by Philip Halpin. It passed subject-specific assessment, automated educational checks and technical publication verification before going live (publication checks completed 1 October 2026). Published pages are monitored, human spot-checking is ongoing across the lesson library, and anything found wrong is corrected or withdrawn. How our lessons are made and checked. Spotted a mistake? Email hello@lightbulblearning.co and we'll review it.