Practise Decomposition and abstraction. 12 exam-style questions on this subtopic, at up to four difficulty levels, with full mark schemes and a progress tracker. Free, no account needed.
Cover the answers and test yourself. The app has these as flashcards that come back just before you'd forget them.
A student is designing a program to manage bookings for a school's after-school clubs. Define the term decomposition.
Breaking a problem down into smaller, more manageable sub-problems.
Sample questions
Written for this site in the style of Edexcel exam questions. They are not taken from real past papers.
Question 1Easy3 marks
A student is designing a program to manage bookings for a school's after-school clubs.
(a) Define the term decomposition.[1]
(b) Define the term abstraction.[1]
(c) Identify the example of abstraction in the booking program.[1]
Splitting the program into a login section, a booking section and a report section
Storing each pupil's name and form group, but not their home address or hair colour
Testing the program with boundary data
Adding comments to explain each subprogram
Show the answer and mark scheme
(a)Answer: Breaking a problem down into smaller, more manageable sub-problems.
breaking a (complex) problem down into smaller / more manageable sub-problems / parts
(b)Answer: Removing unnecessary detail so that only the important features of the problem are considered.
removing / ignoring unnecessary detail (to focus on what is needed to solve the problem)
(c)Answer: Storing each pupil's name and form group, but not their home address or hair colour
Question 2Medium4 marks
A city council plans to change the timings of the traffic lights at a busy junction. Before making the change, it uses a computer simulation to model the traffic.
Explain two advantages of using a simulation rather than trying out the new timings on the real junction.[4]
Show the answer and mark scheme
Answer: Safe (no one put at risk) and quick (many timings tested faster than real time, without disrupting traffic).
it is safe
because no real drivers or pedestrians are put at risk if the new timings cause problems
it is cheaper and causes no disruption
because traffic does not have to be stopped or diverted while timings are tested
many different timings can be tested quickly
because the simulation can run faster than real time and be repeated with the same conditions
unusual situations can be tested
e.g. very heavy traffic or an accident blocking one road
Question 3Hard4 marks
A city council's traffic simulation predicted that new traffic-light timings would reduce queues at a junction by 20%. When the timings were introduced, the queues only fell by 5%.
(a) Give two reasons why the simulation's results may have been different from what happened in reality.[2]
(b) Describe how the council could improve the simulation for the future.[2]
Show the answer and mark scheme
(a)Answer: The model left out real factors such as pedestrians and buses, and the traffic data may have been out of date.
the model is an abstraction: it leaves out some details that mattered, e.g. pedestrians, cyclists, buses, roadworks or weather
the data used may have been inaccurate, out of date or from a different time of year
real drivers do not always behave in the way the model assumes
the rules or calculations in the model may contain errors
(b)Answer: Compare its predictions with the new real data and adjust the model until they agree.
compare the simulation's predictions with the real data collected after the change
adjust the model's rules or data, or add the missing factors, until its predictions match reality more closely