Computational Thinking
IB Syllabus: B1.1: Approaches to Computational Thinking
Overview
Computational thinking (CT) is the thought process involved in formulating a problem and expressing its solution in a way that a computer (or a human) can carry out. CT is not the same as coding. It is the thinking that comes before the coding.
| # | Topic | Syllabus | Key Concepts | Level |
|---|---|---|---|---|
| 1 | Problem Specification | B1.1.1 | Problem statements, constraints, objectives, inputs, outputs, evaluation criteria | SL + HL |
| 2 | CT Concepts | B1.1.2 | Decomposition, pattern recognition, abstraction, algorithmic design, and how to apply them | SL + HL |
| 3 | Flowcharts | B1.1.4 | Standard symbols, drawing flowcharts, tracing algorithms visually | SL + HL |
The CT Process
Every computational solution follows a process:
- Problem Specification: clearly define the problem, constraints, and goals
- Decomposition: break the problem into smaller, manageable parts
- Pattern Recognition: identify similarities to known problems
- Abstraction: focus on what matters, ignore unnecessary detail
- Algorithmic Design: create step-by-step instructions to solve each part
- Testing and Evaluation: check the solution against the original goals
These are not rigid steps: you will often move back and forth between them as your understanding of the problem grows.