Describe what you understand by abstraction, and how it is relevant to software engineering.

Two parts: Abstraction: Separating ideas from reality / implementationHiding (irrelevant) details from the userA representation / simplification of a concept Application: Object oriented programming is full of abstractions e.g. polymorphism, inheritance, objects themselves are an abstraction of real life concepts.Software engineering will rely on behaviours and attributes, not how a real-life object behaves e.g. in a racing game how is the car programmed?Modularity : functions will be used in order to abstract unnecessary data or operations from the user. For example, in Python there is a list.sort() method. Which algorithm is used here? Do we need to know?Layering from the Operating System : e.g. a command in HLL e.g. Python is much simpler than in LLL. We do not need to concern ourselves with how the command works, hence we can focus on the logic behind it.

JN
Answered by Jacob N. Computing tutor

2446 Views

See similar Computing A Level tutors

Related Computing A Level answers

All answers ▸

What is the difference between RAM & ROM and the ways they are used within a computer system?


Given an unlimited number of light bulbs (that break at a certain height), and a building with 100 floors, how do you determine the height that the light bulb breaks?


Explain a bubble sort. You may use pseudocode and/or diagrams to help demonstrate your answer.


Project Euler Question 3: What is the largest prime factor of the number 600851475143?


We're here to help

contact us iconContact ustelephone icon+44 (0) 203 773 6020
Facebook logoInstagram logoLinkedIn logo

© MyTutorWeb Ltd 2013–2025

Terms & Conditions|Privacy Policy
Cookie Preferences