Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lesson Objectives Aims Understand the following:

Similar presentations


Presentation on theme: "Lesson Objectives Aims Understand the following:"— Presentation transcript:

1 Lesson Objectives Aims Understand the following:
The nature of abstraction The need for abstraction The differences between an abstraction and reality You should be able to: Devise an abstract model for a variety of situations

2 Abstraction Another way of representing something That’s it. Shall we move on? Google says this is an abstraction…

3 Abstraction I LOVE abstraction Abstraction is:
“The removal of unnecessary detail, leaving only what is essential remaining” The noun “Abstract” means to summarise – “an abstract” is a general overview of something – and this is just what we want!

4 From the mouth of OCR Abstraction is required to enable complex procedures or events to be modelled. Computer programs cannot account for every single element of an event as this would be extremely complex and time consuming. Consider the causes of earthquakes; there are a variety of reasons and elements that lead to an earthquake. By pulling out the common themes and similarities between each earthquake and plotting these causes a model can be created. As more data becomes available more detail can be added, making the model more accurate.

5 Abstraction is used to:
Filter down a list into it’s most essential form Reduce the number of problems that need solving Focus on the crux of a problem Decide on a basic feature set for a piece of software/algorithm Make the production of an algorithm MUCH EASIER (because we discard the non-essential information)

6 Example Abstract Not abstract Make my dinner
I require a round plate, not square, slightly warm to the touch, but not too hot, fully laden with freshly cooked foods, a variety of tastes and textures, healthy but not too bland, to be served to me within the next hour.

7 But it’s never that simple
But this is only one way of looking at abstraction. In computer science, abstraction is used to/in: Represent real world objects in a way which can be processed Creating algorithms (removing the unnecessary) Modelling Encapsulate (object oriented programming) Layering (OSI model, TCP stack etc) Its so wide ranging that in computing almost anything can be seen as an abstraction of something else

8 And it’s not always about removing detail
Abstraction removes the unnecessary detail from the user’s experience, making it more accessible. In some instances the level of abstraction is reduced, as more detail is added to improve the model. Consider an old computer game where the player can only move up, down, left or right. Current game characters can jump, lean, swing and their individual joints move. In games, physics allows for more realistic modelling of interactions such as water, flight and properties of various materials and natural elements. In these examples more detail is being added to make the experience closer to the reality.

9 Abstraction Examples

10 Task Complete task 1 from the shared area

11 Task 2 Abstraction in programs involves hiding the real process and complex methods behind a simple user interface. Consider a simple currency conversion program; list all the stages of converting the currency from, say, pounds to dollars. You will note that there are several parts to the final program solution; abstraction attempts to hide these from the user to make the conversion of the currency appear a simple and easy process. Which parts or stages could be hidden from the user and why? What could happen if the user saw these other stages? Write the program or pseudo code to change/convert the currency value entered, thinking about which parts are being abstracted and why, and which unnecessary details are being removed from the user’s perspective.

12 June 2016

13

14 Practise paper

15

16 Review/Success Criteria
You should know: The


Download ppt "Lesson Objectives Aims Understand the following:"

Similar presentations


Ads by Google