1 Problem Decomposition
Decomposition means breaking a large, complex problem into smaller, more manageable sub-problems. Each sub-problem is easier to solve individually, and the solutions combine to solve the whole.
Problem: build an online shop
→ Decompose into:
1. Display products
2. Handle user login
3. Manage a shopping cart
4. Process payment
5. Send confirmation email
Decomposition is one of the four pillars of computational thinking (alongside pattern recognition, abstraction, and algorithm design). It makes large projects tractable and allows different people or teams to work on sub-problems in parallel.