The use of computers to solve problems.
Development of algorithms to solve problems.
Using abstraction, decomposition and algorithmic thinking.
Representing 'real world' problems in a computer using variables and symbols and removing / hiding unnecessary elements from the problem.
Breaking down a large problem into smaller sub-problems.
Smaller problems are easier to solve
They can be solved independently of the other problems
They can be tested independently then combined to produce the full solution.
There is not always one right answer.
A problem could decomposed in several valid ways.
Identifying the steps involved in solving a problem.
What are the steps involved in the calculation 200 ÷ 12?