Decomposition is one of the four cornerstones of Computer Science. It involves breaking down a complex problem or system into smaller parts that are more manageable and easier to understand. The smaller parts can then be examined and solved, or designed individually, as they are simpler to work with.
We do many tasks on a daily basis without even thinking about - or decomposing - them, such as brushing our teeth.
To decompose the problem of how to brush our teeth, what would we need to consider?
It is only normally when we are asked to do a new or more complex task that we start to think about it in detail - to decompose the task.
Imagine that a crime has been committed. Solving a crime can be a very complex problem as there are many things to consider.
How would we decompose the task of solving a crime?