Rhapsody 2003년 3월 12일 배대호
Contents Introduction Dishwasher example Use Case Diagram Sequence Diagram Object Model Diagram Statechart Animating the Application
Introduction UML is the standard modeling language endorsed by the OMG Rhapsody is a “visual” design tool for developing object-oriented software Analyze Use Case Diagrams, Sequence Diagrams Design Object Model Diagram, Statecharts Implement define configuration, generate code Test using Animation
System Example: Dishwasher Three components to control: a tank, a jet, a heater The dishwasher washes dishes by spraying the water stored in the tank using the jet The jet sprays the water to rinse the dishes and sends pulses of water to wash them After dishes are clean, the heater activates to dry them Dishwasher’s cycle: washing, rinsing, drying Cycle mode: Quick, Normal, Intense Dishwasher can be stated only if the door is closed
Use Case Diagram A Use Case Diagram shows typical interactions between the system Under design and external actors who may want to interact with it. Actors Packages Use Case Generalization Arrows Association Lines Stereotypes <<Uses>> <<Extends>> <<Inheritance>> System boundary
Use Case Diagram Toolbar
Use Case Diagram of Dishwasher
Sequence Diagram A sequence diagram can show possible scenarios in the execution of a use case Instance Lines Cancelled Arrows Message Arrows System Boundary Creation Arrows Destruction Arrows Time Intervals Conditional Arrows Partition Lines Timeout Arrows
Sequence Diagram Toolbar
Sequence Diagram of Dishwasher
Object Model Diagram Object Model Diagrams show the static structure of a system. Classes Association Lines Actors Simple Classes Directed Association Lines Composite Classes Aggregation Lines Packages Dependency Lines Inheritance Arrows
Object Model Diagram Toolbar
Object Model Diagram of Dishwasher
Statechart Statecharts define the behavior of objects. History Connectors States Transitions Junction Connectors Default Transitions Diagram Connectors Orthogonal States Termination Connectors Condition Connectors
Statechart of Dishwasher(1/3) AcmeHeater AcmeJet
Statechart of Dishwasher(2/3) AcmeTank
Statechart of Dishwasher(3/3)
Animating the Application Creating a component Creating a configuration for component Generating component code. Building the component application Running the component application