What is decomposition?

What is decomposition?
The process of breaking down a problem into smaller manageable parts is known
as decomposition. Decomposition helps us solve complex problems and manage
large projects.
This approach has many advantages. It makes the process a manageable and
achievable one – large problems are daunting, but a set of smaller, related tasks
are much easier to take on. It also means that the task can be tackled by a team
working together, each bringing their own insights, experience and skills to the
task.
The problem of making breakfast can be decomposed into a number of tasks:
Decomposition is particularly important if we are trying to understand things that
are complex. Sometimes we break parts down further.
Barefoot Computing - Decomposition
page 1/5
Why is decomposition important?
Decomposing problems into their smaller parts is not unique to computing: it’s pretty
standard in engineering, design and project management.
Software development is a complex process, and so being able to break down a large
project into its component parts is essential – think of all the different elements that
need to be combined to produce a program, like PowerPoint.
The same is true of computer hardware: a smartphone or a laptop computer is itself
composed of many components, often produced independently by specialist manufacturers and assembled to make the finished product, each under the control of the
operating system and applications.
What does decomposition look like the
primary curriculum?
Decomposition is everywhere in primary practice. We are always asking pupils to find
out more, tell us more.
Whenever pupils are labelling, adding detail to concept maps, or creating instructions,
life cycles, and timelines they are breaking something down, and thinking about detail,
and so developing their decomposition skills.
If pupils undertake any kind of project or task, such as: putting on a school play, organising a cake sale, creating a news report, working out how to solve a maths problem,
making a sandwich or getting dressed for PE, they will need to break the task up into
manageable tasks or parts. That is decomposition.
Barefoot Computing - Decomposition
page 2/5
In primary settings, as pupils learn to decompose, they might create only a partial
decomposition. That is, they might not include all aspects or parts of a topic, but
only the things they currently know about. As they progress they should check that
they create a complete decomposition and do not miss any part of the whole. Also,
as they progress, they can further decompose each part into sub-parts and so on.
If making a computer game, a pupil might decompose the game into: plot, characters and setting. They might then further decompose the characters into actions
and appearance. The setting might be decomposed into obstacles, scoring objects
and background. In developing a robotic toy, pupils would need to consider the
hardware components, both individually and as a system, the algorithms they’ll
need to control their toy and how to write those as code. In general, technology =
hardware + algorithms + code.
EYFS
In the early years, practitioners often create opportunities for exploring detail. In
a shop role play, pupils think how to set up their shop and how to sell things, they
think about all the things they need such as things to sell, price tags, a till, money
for change. When making models, say an aeroplane, pupils will make the wings,
add these to the body of the plane and then add the wheels: the children have
thought about the parts and then put them together.
Model these skills and take it a step further by showing how to check (or evaluate)
that you have all the things needed.
As pupils label simple diagrams
and sequence familiar tasks or
processes they start to to recognise that we break things down
into their parts to help us learn
about things.
Barefoot Computing - Decomposition
page 3/5
KS1
Pupils continue to use role play to explore these concepts. Written forms of decomposition become more common, for example they label the parts of a flower in
science, they add detail to a concept map when they find out more about a place
in geography. Progression is similar to EYFS pupils as they become more aware of
and independent in exploring detail.
Provide opportunities for pupils to break things down into their parts, for example
work out the stages of a lifecycle, add detail to a mind map about about a topic,
think of the labels for a diagram.
Model how to take this
further by checking
they have not missed
a part (evaluation) and
encouraging pupils
to share their understanding with others
(collaboration).
KS2
Solve problems by decomposing them into smaller parts.
The computing curriculum expects that KS2 pupils can learn to ‘solve problems by
decomposing them into smaller parts’ ; it also expects pupils to design and create
a range of systems with particular goals in mind (here, system implies something
with a number of interconnected components).
Pupils explore subjects in more detail, decomposing to an increasing number of
levels. They check that they have not missed any parts as they add further detail.
Decomposition occurs in general project planning, planning a research project for
any subject or working collaboratively to deliver a group event. For example, if putting on a school play they might break the organisation of the play into advertising,
set, script, production, tickets, performance. Within each part they might assign
roles and further break down to tasks that they then tick off, checking that they
have not missed any crucial areas as they tease out the detail.
Organise programming projects such as making a computer game. Even for a relatively simple game the project would typically be decomposed as follows: planning,
design, algorithms, coding, animation, graphics, sound, debugging and sharing.
A project like this would lend itself to a collaborative, team-based approach, with
development planned over a number of weeks.
Barefoot Computing - Decomposition
page 4/5
As pupils plan their programs or systems, encourage them to use decomposition: to work out what the different parts of the program or system
must do, and to think about how these are inter-related. For example, a simple
educational quiz is going to need some way of generating questions, a way to
check if the answer is right, some mechanism for recording progress such as a
score and some sort of user interface, which in turn might include graphics, animation, interactivity and sound effects.
Plan opportunities for pupils to get some experience of working as a collaborative
team on a software development project, and indeed other projects in computing.
This could be media work such as animations or videos, shared online content
such as a wiki. For example, pupils could take the broad topic of e-safety, decompose this into smaller parts and then work collaboratively to develop pages for their
wiki, exploring each individual topic. The process of writing these pages can be
further decomposed, through planning, research, drafting, reviewing and publishing phases. Technology can help with this sort of collaborative group work, or can
even be a focus for it, and great collaborative tools are available in ‘cloud’- based
software.
In computing, teachers might model breaking down programs as a key approach
to debugging. Showing pupils how to break their program down into parts, then
thinking what each part should do, testing if it does as expected, to find where the
bug is so that it can be fixed.
By age 10-11, pupils should be starting to use decomposition independently to
help them add detail and precision to their work.
Find out more about decomposition
Thinking myself – decompose
Google Computational Thinking Decomposition
Decomposition, Computational Thinking In Primary Schools, Miles Berry, 2014
Literacy -planning writing
Science – adding detail to concept map
NRICH, ‘Planning a School Trip
Project Management Institute Educational Foundation, ‘Project Management
Toolkit for Youth’
Barefoot Computing - Decomposition
page 5/5