What is Object Orientation? What is OO development? OO themes; Evidence for usefulnessof OO development; OO modeling history. Modeling as Design Technique: Modeling;abstraction; The three models.
Object and class concepts; Link and associations concepts; Generalization and inheritance;A sample class model; Navigation of class models; Practical tips. Advanced object andclass concepts; Association ends; N-array associations; Aggregation; Abstract classes;Multiple inheritance; Metadata; Reification; Constraints; Derived data; Packages; Practicaltips
State Modeling: Events, States, Transitions and Conditions; State diagrams; Statediagram behavior; Practical tips. Advanced State Modeling: Nested state diagrams; Nestedstates; Signal generalization; Concurrency; A sample state model; Relation of class and statemodels; Practical tips.
Interaction Modeling: Use case models; Sequence models; Activity m o d e l s . Usecase relationships; Procedural sequence models; Special constructs for activity models.
Process Overview: Development stages; Development life cycle. System Conception:Devising a system concept; elaborating a concept; preparing a problem statement.
Overview of analysis; Domain class model; Domain state model; Domain interaction model;Iterating the analysis. Application Analysis: Application interaction model; Application classmodel; Application state model; adding operations.
Overview of system design; Estimating performance; Making a reuse plan; Breaking a systemin to sub-systems; Identifying concurrency; Allocation of sub-systems; Management ofdata storage; Handling global resources; Choosing a software control strategy; Handlingboundary conditions; Setting the trade-off priorities; Common architectural styles;Architecture of the ATM system as the example. Class Design: Overview of classdesign; Bridging the gap; Realizing use cases; Designing algorithms; Recursingdownwards, Refactoring; Design optimization; Reification of behavior; Adjustment ofinheritance; Organizing a class design; ATM example.
What is a pattern and what makes a pattern? Pattern categories; Relationships between patterns; Pattern description.
Introduction, structural decomposition, Organization of work, Model View Controller;Communication Patterns: Forwarder-Receiver; Client-Dispatcher-Server; Publisher-Subscriber; Management Patterns: Command processor; Whole Part, Master Slave, ViewHandler;