Download - Object Oriented Design
Object Oriented Design
OOD
OOD characteristics - I
• conceptual compatibility with OOA
• notational consistency with OOA
• clean traceability of OOA results
• direct inclusion of OOA results
=> avoids the classical, conceptual “gap” between Analysis and Design
OOD regards
the OOA model as a problem-oriented
“Miniworld”
that needs to be supported and organized
by a computer-based system.
OOD characteristics - II
• OOD extends and refines OOA results
• OOD bridges the gap to the available infrastructure
• OOD is very much about reuse of– objects, – patterns, – and whole architectures
Object-Oriented DesignInfluence Factors & Relations
OOD
OOA Model
Architectures
OOD Model
Patterns
Infrastructure
OOA
Process
The Levels of the OOD Process -
High-Level Design• extend the OOA Model [Coad/Yourdon]
– include “domain components” in the model• acknowledge that we develop a computer-based
system
• include human interface, data management, communications and control aspects (task mgmt)
– decide on a general system architecture• how to organize the above aspects into a well specified
structure (and behavior)
• reuse existing patterns and solutions
The Levels of the OOD Process - Detailed Design
• refine and
• map the OOA Model to the infrastructure– detailed algorithms and datastructures– implementation of OO structures– implementation of states and transitions– optimization– maximize reuse– exception handling– etc.
The OOD “Co-Design” ProcessMatrix of Domain Components and Levels
TMCHIC PDC DMC
high-levelDesign
detailedDesign
Miniworld
extend
refine &map
Object Oriented Design means
to navigate the domain/level matrix
with the purpose
to complete all associated tasks
in a meaningful sequence.
OOD and SW-Architectures
• A clear general architectural concept and a good matching infrastructure will simplify.
• Detailed design is a means to work around mismatches between infrastructure and (architectural) high-level design.
=> specify widely applicable, generic architectures
=> develop compatible, stable infrastructures
OOD Deliverables - I
• extended Static Objectmodel – Coad & Yourdon:
• Problem Domain Component (PDC)
• Human Interaction Component (HIC)
• Task Management Component (TMC)
• Data Management Component (DMC)
• on the level of high-level (and detailed) design
OOD Deliverables - II
• completed & extended Scenarios – extend old scenarios across domains
• reflect the chosen architecture’s dynamics
• build links between domain components
– add new scenarios to accommodate internal organization
• e.g. data backup, rollback, load/save
• on the level of high-level design as diagram
• on the level of detailed design in the dictionary• diagram as necessary
Scenarios
TMCHIC PDC DMC
high-levelDesign
detailedDesign
extend
refine &map
OOD Deliverables - III
• Object Dictionary – document & specify the added domain components
• very much like during analysis: objects, structures, ...
• for high-level design
– map and refine existing specifications• translate structures, STDs, ...
• map to existing patterns and objects
• document optimizations
• for detailed design
• As in OOA it holds for OOD: Static Model and Scenarios are documented as graphical Views of the more complete Object Dictionary.
The OOAD Documentation
TMCHIC PDC DMC
high-levelDesign
detailedDesign
Miniworld
Dictionary
Scenarios
StaticModel
Dictionary
Scenarios
StaticModel