Lab 6 Software Engineering By Nouran Radwan Interaction Diagrams Interaction Diagrams The term interaction diagram is a generalization of specialized UML diagrams types: Sequence Diagram Communication Diagram Interaction Overview Diagram Timing Diagram
3 Communication Diagram Communication Diagram UML Communication diagrams, formerly known as collaboration diagrams, are used to explore the dynamic nature of your software. Communication diagrams show the message flow between objects in an object- oriented application, and also imply the basic associations (relationships) between classes. Communication Diagram Communication diagrams illustrate object interactions in a graph or network format, in which objects can be placed anywhere on the diagram. 7 Symbols used in Communication Diagrams 8 Communication Diagram for Fill shopping cart Strengths and Weaknesses
Interaction Overview Diagram Interaction Overview Diagram The Interaction Overview Diagram focuses on the overview of the flow of control of the interactions. It is a variant of the Activity Diagram where the nodes are the interactions or interaction occurrences. The Interaction Overview Diagram describes the interactions where messages and lifelines are hidden. You can link up the "real" diagrams and achieve high degree navigability between diagrams inside the Interaction Overview Diagram.
Interaction Overview Diagram Interaction overview diagrams help analysts understand complex use cases. Interaction overview diagrams extend activity diagrams through the addition of sequence fragments from sequence diagrams. Interaction Overview Diagram Examples Interaction Overview Diagram Examples Interaction Overview Diagram Examples Timing Diagram Timing Diagram Timing diagrams, which electrical engineers have been using for years, are a new addition to the UML. The primary purpose of the timing diagram is to show the change of state of an object in response to events over time. Timing diagrams are often used in the design of embedded software, such as control software for a fuel injection system in an automobile, although they occasionally have their uses for business software too.
Timing Diagram Timing Diagrams are used to show interactions when a primary purpose of the diagram is to reason about time. A timing diagram is a specific behavioral modeling diagram that focuses on timing constraints. You can think of a timing diagram as an inverted sequence diagram. Instead of different objects on the x-axis, time is passing on the x-axis from left to right. The different components of the system which interact with each other are stacked together on the y-axis. Graphic Nodes The following nodes and edges are typically drawn in a UML timing diagram. 1. Lifeline 2. State or Condition Timeline 3. Duration Constraint 4. Time Constraint 5. Destruction Event 6. Message 7. General value lifeline 19 Lifeline Is a named element which represents an individual participant in the interaction. Represent only one interacting entity. See lifeLine from sequence diagrams for more details. Is represented by the name of classifier or the instance it represents. It could be placed inside diagram frame .
20 Lifeline State or Condition Timeline 21 Timeline shows Virus changing its state between Dormant, Propagation, Triggering and Execution state Instance Name Stats Duration Constraint 22 EX : Ice should melt into water in 1 to 6 minutes Duration Constraint Classifier Name Time Constraint Time constraint is shown as graphical association between a time interval and the construct that it constrains. Typically this graphical association is a small line, between an occurrence specification and a time interval. 23 Person should wake up between 5:40 am and 6 am Destruction Event The destruction event is depicted by a cross in the form of an X at the end of a timeline. 24 Virus lifeline is terminated Example : An example of timing diagram which shows some duration constraints for a fabricated website to evaluate how long web user should wait to see something rendered on his display. 25 26 References
OMG Unified Modeling LanguageTM (OMG UML), Superstructure Systems Analysis and Design with UML Version 2.0, An Object-Oriented Approach, Second Edition, Alan Dennis. Scott W. Ambler, The Element of UMLTM2.0 Style, Cambridge University Press.