Computers can be used to help solve problems. However, before a problem can be tackled, it must first be understood. Computational thinking helps us to solve problems.
decompositionBreaking down a complex problem or system into smaller parts that are more manageable and easier to understand. 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.
If a problem is not decomposed, it is much harder to solve. Dealing with a complex problem is much more difficult than breaking a problem down into a number of smaller problems and solving each one, one at a time. Smaller problems are easier to understand and can be examined in more detail.
For example, suppose that a crime has been committed. Solving a crime can be a very complex problem as there are many things to consider.
A police officer would need to know the answer to a series of smaller problems:
what crime was committed
when the crime was committed
where the crime was committed
what evidence there is
if there were any witnesses
if there have recently been any similar crimes
The complex problem of the committed crime has now been broken down into simpler problems that can be examined individually, in detail. Once the individual information has been gathered and collated, the police officer may be able to solve the crime.
Question
How might you decompose the complex problem of how to create an app?
what kind of app you want to create
what your app will look like
who the target audience for your app is
what your graphics will look like
what audio you will include
what software you will use to build your app
how the user will navigate your app
how you will test your app
where you will sell your app
These smaller problems, solved individually, may help you to create an app.