The final iteration of the four-stage framework — now involving collaboration with stakeholders and abstraction via inheritance.
| Stage | Grade 12 additions |
|---|---|
| Decomposition | Understand a large problem and its goals/sub-goals, working with other stakeholders (users, developers, testers) — real software isn't built in isolation |
| Pattern recognition | Select the best data structure — including existing classes — based on the actual data, behaviour and goals involved |
| Abstraction | Use abstraction tools like inheritance to reduce the complexity of the problem and solution |
| Algorithm | Combine abstracted parts; test that the solution works correctly alongside external, existing, or previous solutions (integration testing) |
| Evaluate | Code efficiency now specifically includes reuse of classes and inheritance; execution efficiency means no unnecessary processing |
💡 Exam Tip
The recurring theme across all three grades of this subtopic (10.4.1 → 11.4.1 → 12.4.1) is the same four stages — what changes each year is the sophistication of the tools you apply within each stage (loops → objects → inheritance).