Object-Oriented Analysis and Modeling Using The Uml: Mcgraw-Hill/Irwin
Object-Oriented Analysis and Modeling Using The Uml: Mcgraw-Hill/Irwin
Object-Oriented Analysis and Modeling Using The Uml: Mcgraw-Hill/Irwin
McGraw-Hill/Irwin
Objectives
Define object modeling and explain its benefits. Recognize and understand the basic concepts and constructs of object modeling. Define the UML and its various types of diagrams. Evolve a business requirements use-case model into a system analysis use-case model. Construct an activity diagram. Discover objects and classes, and their relationships. Construct a class diagram.
10-2
10-3
Object modeling a technique for identifying objects within the systems environment and the relationships between those objects.
10-4
10-5
10-7
Object Classes
Object Class a set of objects that share common attributes and behavior. Sometimes referred to as a class.
10-9
10-10
Inheritance
Inheritance the concept wherein methods and/or attributes defined in an object class can be inherited or reused by another object class.
10-11
Inheritance (cont.)
10-12
10-14
Object/Class Relationships
Object/class relationship a natural business association that exists between one or more objects and classes.
10-15
Aggregation
Aggregation a relationship in which one larger whole class contains one or more smaller parts classes. Conversely, a smaller part class is part of a whole larger class
In UML 2.0 the notation for aggregation has been dropped
10-17
Composition
Composition an aggregation relationship in which the whole is responsible for the creation and destruction of its parts. If the whole were to die, the part would die with it.
10-18
Messages
Message communication that occurs when one object invokes another objects method (behavior) to request information or some action
10-19
Polymorphism
Polymorphism the concept that different objects can respond to the same message in different ways.
10-20
Override a technique whereby a subclass (subtype) uses an attribute or behavior of its own instead of an attribute or behavior inherited from the class (supertype).
State Machine
10-21
Composite Structure
Communication
Interaction Overview
Timing
Component
Deployment Package
10-22
10-23
10-25
Use-Case Narrative
10-26
10-27
10-28
10-30
10-31
10-32
10-33
10-34
3.
4.
10-35
6.
10-36
8.
10-37
10-38
Is it a synonym of another object? Is it outside the scope of the system? Is it a role without unique behavior, or an external role? Is it unclear or in need of focus? Is it an action or an attribute that describes another object?
Actor Action
Step 1: The member requests the option to enter a new order. Step 3: The Member browses the available items and selects the ones they wish to purchase along with the quantity. Step 5: The member verifies demographic information (shipping and billing addresses). If no changes are necessary they respond accordingly (to continue).
System Response
Step 2: The system responds by displaying the catalogue of the SoundStage products. Step 4: Once the member has completed their selections the system retrieves from file and presents the members demographic information (shipping and billing addresses). Step 6: For each product ordered, the system verifies the product availability and determines an expected ship date, determines the price to be charged to the member, and determines the cost of the total order. If an item is not immediately available it indicates that the product is backordered or that it has not been released for shipping (for pre-orders). If an item is no longer available that is indicated also. The system then displays a summary of the order to the member for verification. Step 8: The system checks the status of the members account. If satisfactory, the system prompts the member to select the desired payment option (to be billed later or pay immediately with a credit card).
10-40
Step 7: The member verifies the order. If no changes are necessary they respond accordingly (to continue).
10-41
10-42
10-43
10-45
Generalization/Specialization Hierarchies
10-46
Transient object class a class that describes an object that is created temporarily by the program and lives only during that programs execution.
10-47
Class Diagram
10-48