A-level Computing/AQA/Paper 1/Theory of computation/Decomposition





Decomposition
This is the first step we take in computational thinking. First, we need to decompose, or break down, the problem into the smaller problems. Then we can solve each problem separately. This will help us to simplify complex problems into each step we should analyse. Let's look at the example of a journey to London.

Real World Example
Think about taking a trip from Basingstoke to London Waterloo. The steps you take from your house to the train station seem quite complex. But if you break it down to the different stages of the trip, decomposition makes it easier. You need directions, transportation, times and prices for a successful journey. Work backwards from the time you need to be in London which is 12 noon.

1. Make sure you have a paper A-Z London with the tube map.
 * (You never know when your mobile may fail to connect to the internet!)

2. Which trains get into London before 12?
 * There is a train leaving Basingstoke at 10:57 that arrives at London Waterloo at 11:49.

3. Then think about how you would arrive at the train station. Do you need a bus, car, or can you walk?
 * You can walk to the train station and it takes you 10 minutes.

4. Finally, you need to have enough money for your journey and a snack.
 * By checking the train website, you find the journey will cost £22.50 return. You make sure you have £30 cash in total.

Now you have all the steps necessary to complete your journey. Decomposition ensures you have enough money, directions, transportation options and timings. You can now apply this method to computing with modular design.