Professional Documents
Culture Documents
Object Oriented Modeling Methods Object Oriented Analysis
Object Oriented Modeling Methods Object Oriented Analysis
➜ Variants ➜ Motivation
Coad-Yourdon OOA is (claimed to be) more ‘natural’
As a system evolves, the functions (processes) it performs tend to change, but
Shlaer-Mellor the objects tend to remain unchanged…
Fusion …so a structured analysis model will get out of date, but an object oriented
model will not…
UML
…hence the claim that object-oriented systems are more maintainable
➜ Advantages and Disadvantages OOA emphasizes importance of well-defined interfaces between objects
compared to ambiguities of dataflow relationships
University of Toronto Department of Computer Science University of Toronto Department of Computer Science
University of Toronto Department of Computer Science University of Toronto Department of Computer Science
Selecting Objects
Source: Adapted from Pressman, 1994, p244
Variants
See also: van Vliet 1999, section 12.3
Coad-Yourdon
Source: Adapted from Pressman, 1994, p242 and Davis 1990, p98-99
Coad Object diagrams
object Source: Adapted from Davis, 1990, p67-68
University of Toronto Department of Computer Science University of Toronto Department of Computer Science
Shlaer-Mellor Fusion
➜ Three analysis models: ➜ Combines several OO Message Sequence Charts
Information Model
models objects, relationships, and attributes of objects and relationships methods External
User System
uses associative objects to represent relationships between other objects. system
E.g. ‘title’ is an object that represents the relationship between ‘owner’ and ‘car’ ➜ Analysis phase: Event 1
1. HOME (H) Object model
1. HOME like Shlaer-Mellor
* address owns Is owned by Event 2
OWNER (HO) Operation model
* Unit at address
* Owner name formal definition of each operation,
• square feet Response
• address including pre- and post- conditions
• property tax fee
1. OWNERSHIP (O) Lifecycle model
Identifier * Address (R1) specifies admissible sequences of
* Unit at Address (R1) One or more interactions between system &
Associative Object environment
* Owner name (R1)
Exactly one Interaction model
• Date purchased Event 3
State model = operation model + lifecycle model
Response
Uses StateCharts to show the lifecycle of each object
Each object may be continuous or born-and-die (object is created & destroyed) ➜ Message Sequence Charts
Response
Process model help to develop the interaction
representation of each service (‘action’) of an object model
Uses standard Dataflow Diagrams to show information used
© 2001, Steve Easterbrook 11 © 2001, Steve Easterbrook 12
University of Toronto Department of Computer Science University of Toronto Department of Computer Science
Module Diagrams
Platform diagrams
© 2001, Steve Easterbrook 13 © 2001, Steve Easterbrook 14
References
van Vliet, H. “Software Engineering: Principles and Practice (2nd Edition)” Wiley,
1999.
chapter 12 is a thorough overview of object oriented analysis and design. van Vliet introduces all the
main notations of UML, and describes several older methods too.