The Nature of Abstraction (OCR AS Computer Science): Revision Note

Exam code: H046

Robert Hampton

Written by: Robert Hampton

Reviewed by: James Woodhouse

Updated on

The Nature & Need of Abstraction

What is the nature and need for abstraction?

  • Abstraction is the process of removing unnecessary details of a problem to focus on the important features to implement in a solution

  • Examples of abstraction include modelling a real life object, environment, action, sequence of actions or concept. Implementations of these include:

    • a simulator such as a car or flight simulator,

    • a representation of a building or house in a program or game or,

    • a map of a bus or train route in a city

  • When creating a program, developers must identify important features that will contribute to solving the problem or have a role to play in the solution

  • A specific example of abstraction would be the London underground train route map; travellers do not need to know the geographical layout of the routes, only that getting on at stop A will eventually transport you to stop B

nature-of-abstraction-1-1

London Underground train route map 
Source: Wikipedia (opens in a new tab)

nature-of-abstraction-2-1

The geographical London underground train map
Source: Wikimedia (opens in a new tab)

  • Another example of abstraction would be implementing the trajectory of a projectile, such as a ball or dart, or the physics of a snooker ball on a snooker table

    • Is gravity or air resistance taken into account, if applicable? Is friction?

  • The closer the implementation is to reality, the less abstract the solution becomes

    • Pong is an example of a highly abstracted game of tennis or badminton

    • The momentum of the ball is constant and there are no extraneous factors that affect the game such as friction or gravity

You've read 0 of your 5 free revision notes this week

Unlock more, it's free!

Join the 100,000+ Students that ❤️ Save My Exams

the (exam) results speak for themselves:

Robert Hampton

Author: Robert Hampton

Expertise: Computer Science Content Creator

Rob has over 16 years' experience teaching Computer Science and ICT at KS3 & GCSE levels. Rob has demonstrated strong leadership as Head of Department since 2012 and previously supported teacher development as a Specialist Leader of Education, empowering departments to excel in Computer Science. Beyond his tech expertise, Robert embraces the virtual world as an avid gamer, conquering digital battlefields when he's not coding.

James Woodhouse

Reviewer: James Woodhouse

Expertise: Computer Science & English Subject Lead

James graduated from the University of Sunderland with a degree in ICT and Computing education. He has over 14 years of experience both teaching and leading in Computer Science, specialising in teaching GCSE and A-level. James has held various leadership roles, including Head of Computer Science and coordinator positions for Key Stage 3 and Key Stage 4. James has a keen interest in networking security and technologies aimed at preventing security breaches.