The same four-stage framework from 10.4.1, now applied to bigger problems involving arrays, objects, and separating the interface from the backend.
| Stage | Grade 11 additions |
|---|---|
| Decomposition | Break problems into parts representable by arrays and objects; separate the interface (UI) from the backend (logic/data); identify what needs permanent storage |
| Pattern recognition | Identify similar data representable by arrays/classes; identify similar behaviour representable by methods; identify opportunities to reuse or adapt existing objects, methods, classes, or UI elements |
| Abstraction | Decide what's relevant; design classes to encapsulate fields and methods; use information hiding to protect and isolate data |
| Algorithm | Combine abstracted parts into pseudocode/flowcharts; apply design and testing principles so each part works individually and together |
| Evaluate | Analyse for errors/inefficiencies; code efficiency now specifically means using methods and parameters to avoid duplication; execution efficiency means stopping as soon as an item is found or a sort is complete |
💡 Exam Tip
The Grade 11 version of this subtopic is really about applying OOP thinking (encapsulation, classes, information hiding) to the same problem-solving process you already know — it's not a brand-new framework.