Course content The Object-Oriented Approach· - Program organisation for managing complexity·
- OO approach vs functional decomposition·
- Software reuse and change tolerance
Object-Oriented Programming Languages· - State/function encapsulation·
- Interface/implementation partitioning·
- Inheritance and polymorphism
Modelling in General· - Models and abstraction·
- Static and dynamic modelling·
- Characteristics of models
Overview of the UML· - History of the UML·
- Overview of the UML diagram types
Class Properties· - UML class icon, attributes and operations·
- Mapping class properties to language constructs
Class Relationships· - Generalisation, aggregation and association·
- Multiplicity, navigation and roles·
- Automatic code generation
Common UML Features· - Packages to organise your development work·
- Extending UML with stereotypes, tagged values and constraints
Instances and Scenarios· - Instances used for understanding and testing abstractions·
- Object diagrams for modelling scenarios
Interactions· - Modelling object collaborations·
- Sequence diagrams and collaboration diagrams
The Use Case Model· - Modelling system requirements·
- The use case diagram·
- Use cases - documenting and testing
State Diagrams· - Reconciling flow charts and state diagrams·
- Modelling behaviour with statechart diagrams·
- Modelling workflow with activity diagrams
Physical Models· - Modelling the physical implementation·
- Component diagrams and deployment diagrams
|