D.1.1 Outline the general nature of an object
D.1.3 Construct Unified Modelling Language (UML) diagrams to represent objects.
D.1.4 Interpret UML diagrams.
D.1.2 Distinguish between an object (definition, template or class) and instantiation.
D.1.5 Describe the process of decomposition into several related objects.
4.1.17 Identify examples of abstraction.
4.1.18 Explain why abstraction is required in the derivation of computational solutions for a specified situation.
4.1.19 Construct an abstraction from a specified situation.
4.1.20 Distinguish between a real-world entity and its abstraction.
D.2.10 Explain the advantages of modularity in program development.
D.2.4 Explain the advantages of encapsulation.
D.2.8 Describe the disadvantages of OOP.
D.2.9 Discuss the use of programming teams.
D.1.10 Describe how data items can be passed to and from actions as parameters.
4.1.1 Identify the procedure appropriate to solving a problem.
4.1.2 Evaluate whether the order in which activities are undertaken will result in the required outcome.
4.1.3 Explain the role of sub-procedures in solving a problem.
4.1.11 Explain the need for pre-conditions when executing an algorithm.
4.1.12 Outline the pre- and post-conditions to a specified problem.
4.3.12 Discuss the need for sub-programmes and collections within programmed solutions.
4.3.13 Construct algorithms using pre- defined sub-programmes
D.4.6 Construct algorithms that use reference mechanisms.
D.3.5 Construct code to implement assessment statements D.3.1–D.3.4.
D.2.1 Define the term encapsulation.
D.3.1 Define the terms: class, identifier, primitive, instance variable, parameter variable, local variable.
D.3.2 Define the terms: method, accessor, mutator, constructor, signature, return value.
D.3.3 Define the terms: private, protected, public, extends, static.
D.4.5 Define the term object reference.
Define the term decomposition.
Define the term abstraction.