10 - interaction diagram

21
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Faculty of Computer Scienc University of Indonesia 1 IKI30202 - Rekayasa Perangkat Lunak Term 1 - 2011/2012 Lecturers: Dr. Indra Budi, S.Kom., M.Kom. Puspa Indahati Sandhyaduhita, S.T., M.Sc. Satrio Baskoro Yudhoatmojo, S.Kom., M.T.I.

Upload: suladria

Post on 03-Dec-2014

114 views

Category:

Documents


1 download

TRANSCRIPT

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

Faculty of Computer Science University of Indonesia

IKI30202 - Rekayasa Perangkat LunakTerm 1 - 2011/2012Lecturers: Dr. Indra Budi, S.Kom., M.Kom. Puspa Indahati Sandhyaduhita, S.T., M.Sc. Satrio Baskoro Yudhoatmojo, S.Kom., M.T.I.1

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

Faculty of Computer Science University of Indonesia

Interaction Diagram

2

Acknowledgement

Main Material [Dennis, 2010] Dennis, Alan, et al, System Analysis and Design with UML, 3rd Edition, John Wiley & Sons, New Jersey, 2010.

Supplementary Materials [Miles & Hamilton, 2006] Miles, Russ, and Kim Hamilton. Learning UML 2.0. Beijing: O'Reilly, 2006. Print. [OMG, 2005] Unified Modeling Language: Superstructure. Object Management Group, 2005. Print.3

Key Ideas

Behavioral models describe the internaldynamic aspects of an information system that supports business processes in an organization

Key UML behavioral models are:sequence diagrams, collaboration diagrams, and statechart diagrams

4

BEHAVIORAL MODELS

5

Behavioral Models

Systems have static &dynamiccharacteristics Structural models describe the static aspects of the system Behavioral models describe the dynamics and interactions of the system and its components

Behavioral models describe how theclasses described in the structural models interact in support of the use cases.6

INTERACTION DIAGRAMS

7

Interaction Diagrams

Use cases and classes alone are not enabling use to model how the system is actually going to its job. Use cases allow your model to describe what your system must be able to do. Classes allow your model to describe the different types of parts that make up your systems structure.

Interaction diagrams model important runtime interactions between the parts that make up your system.Source: [Miles & Hamilton, 2006]8

Interaction Diagrams

Logical View

Process View

Use Case View

Physical View

Development View

Source: [Miles & Hamilton, 2006]9

Interaction Diagram Components

Objects an instantiation of a class

Operations the behaviors of an instance of a class

Messages information sent to objects to tell them to execute one of their behaviors10

Sequence Diagrams

Capture the order of interactionsbetween parts of your system

Illustrate the objects that participate in ause-case Describe which interactions will be triggered when a particular use case is executed and in what order those interactions will occur [Miles & Hamilton, 2006]

Show the messages that pass betweenobjects for a particular use-case11

Sequence Diagram SyntaxParticipants are parts of your system that interact with each other during the sequence. A participant can represent an actor, an object of a class, a table of a database, or anything that is part of your system. Participants will send / receive a sequence of messages. A lifeline denotes the life of an object during a sequence. If the participant is no longer participating in the interaction then at the end of the lifeline there would be an X symbol. An execution occurrence is a long narrow rectangle placed atop of lifeline which denotes when a object is sending or receiving messages. Message conveys information one object to another one. An operation call is labeled with the message being sent and a solid arrow and a return is labeled with the value being return and shown as a dashed arrow. A guard condition represents a test that must be met for the the message to be sent. For participant destruction, an X is placed at the end of a participants lifeline to show that it is going out of existence. A frame or border indicates the context of the sequence diagram. 12

An Example of a Sequence Diagram

Source: [Miles & Hamilton, 2006]13

Steps to Build Sequence Diagrams1. Set the context 2. Identify which objects will participate

3. Set the lifeline for each object4. Lay out the messages from top to bottom of the diagram based on the order in which they are sent 5. Add execution occurrence to each objects lifeline 6. Validate the sequence diagram14

BEHAVIORAL STATE MACHINES

15

Behavioral State Machines

A dynamic model that shows the different states through which a single object passes during its life in response to events, along with its responses and actions For example, they can be used to model the behavior of individual entities (e.g., class instances) [OMG, 2005]. Its helpful to model states of an object and the events causing state changes [Miles & Hamilton, 2006].

Typically not used for all objects Just for complex ones16

Components of State Machines

States

Events

values of an objects attributes at a point in time

Transitions

change the values of the objects attributes

Actions

movement of an object from one state to another

Activities

atomic, non-decomposable processes

non-atomic, decomposable processes17

State Machine Syntax

18

An Example of a State Machine

State machine diagram of an AccountApplication (Source: [Miles & Hamilton, 2006])19

Steps to Build a State Machine1. Set the context 2. Identify the initial, final, and stable states of the object 3. Determine the order in which the object will pass through the stable states 4. Identify the events, actions, and guard conditions associated with the transitions 5. Validate the behavioral state machine20

Q&A