object-oriented modeling sequence diagrams

26
Object-oriented modeling Sequence diagrams Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”

Upload: roza

Post on 23-Feb-2016

72 views

Category:

Documents


0 download

DESCRIPTION

Object-oriented modeling Sequence diagrams. Karolina Muszyńska. Based on : S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”. Object Modeling. Dynamic view – sequence diagrams role and types of sequence diagrams basic concepts advanced concepts examples. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Object-oriented modeling Sequence diagrams

Object-oriented modeling

Sequence diagrams

Karolina Muszyńska

Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”

Page 2: Object-oriented modeling Sequence diagrams

Dynamic view – sequence diagrams◦ role and types of sequence diagrams◦ basic concepts◦ advanced concepts◦ examples

2

Object Modeling

Page 3: Object-oriented modeling Sequence diagrams

Sequence diagram is a kind of interaction diagram, describing interactions among system classifiers in the form of sequence of messages interchanged between them during a certain period of time.

Sequence diagrams are closely related to use case scenarios as they document their functionality.

Interaction is shown on the sequence diagram in two dimensions:o Horizontal - static dimension where the system classifiers

taking part in the interaction are placed o Vertical – dynamic dimension, with the time line showing

chronically arranged messages

3

Sequence Diagram –role

Page 4: Object-oriented modeling Sequence diagrams

Depending on the degree of abstraction three types of sequence diagrams can be specified: Conceptual sequence diagram – using only

basic concepts, for quick and general overview of the system interactions

Generic sequence diagram – is the basis for software specification and uses all available concepts; this type of diagram includes the main and all alternative scenarios of a use case and it can be used for automatic generation of program code

Instance sequence diagram – a diagram describing one particular scenario of a use case; there may be several instance diagrams for one generic diagram

4

Sequence Diagrams –types

Page 5: Object-oriented modeling Sequence diagrams

Classifier – abstract category of system modeling in UML (e.g. actor, object, interface, component, package, etc.)

Message – describes a control flow in the system; it determines the sequence and place of execution of operations; messages are arranged according to the sequence of their appearance – the later they occur the lower they appear on the diagram

Each classifier has a lifeline that represents its life time; the “X” mark at the end of the lifeline indicates the point at which the object ceases to exist in the system

The execution specification shows time period during which the classifier performs an operation (processing, calculating, communicating with other classifiers or executing complex algorithms); the execution specification is initiated with an activation and ended with deactivation.

5

Sequence Diagrams –basic concepts

Page 6: Object-oriented modeling Sequence diagrams

6

Sequence Diagrams –basic concepts

Classifier (actor, object,

interface, package)

Message

Lifeline

Page 7: Object-oriented modeling Sequence diagrams

7

Sequence Diagrams –basic concepts

Activation

Execution specification

Deactivation

Page 8: Object-oriented modeling Sequence diagrams

Types of messagesCreating and destroying objectsGuard conditionsCombined fragments with interaction

operators Interaction occurrences

8

Sequence Diagrams – advanced concepts

Page 9: Object-oriented modeling Sequence diagrams

Message types: synchronous message – passes control from the

sender classifier to the receiver classifier asynchronous message – does not pass control,

does not wait for an answer from the receiver, may continue processing

return message – indicates control return to the sender classifier after synchronous message and may also initiate a certain operation

self message – message sent by the classifier to itself resulting in calling its own operation; self message is a certain kind of iteration, which creates a nested execution specification

9

Sequence Diagrams – advanced concepts

Page 10: Object-oriented modeling Sequence diagrams

10

Sequence Diagrams – advanced concepts

Asynchronous message

Synchronous message

Page 11: Object-oriented modeling Sequence diagrams

11

Sequence Diagrams – advanced concepts

Self messageReturn message

Page 12: Object-oriented modeling Sequence diagrams

Other message types: lost message – message sent from a known

sender to an unknown receiver (temporary message)

found message – message whose sender is unknown (may be an external signal, stimulus)

balking message – message which will not be handled by the receiver classifier if it cannot be handled immediately

timeout message – similar to balking message although sender classifier is willing to wait for handling the operation for a specified period of time

12

Sequence Diagrams – advanced concepts

Page 13: Object-oriented modeling Sequence diagrams

Creating and destroying objects: „create” stereotype message – results in

creation of an object, which is situated below the primary existing classifiers, corresponding with the time of its creation

„destroy” stereotype message – results in destruction of an object

13

Sequence Diagrams – advanced concepts

Page 14: Object-oriented modeling Sequence diagrams

14

Sequence Diagrams – advanced concepts

<<Destroy>> message

<<Create>> message

Page 15: Object-oriented modeling Sequence diagrams

Guard condition – a criterion connected with the message, on fulfillment of which depends the execution of a specified operation.

If a condition referring to a certain message is not met the operation indicated by the message is not executed.

Conditions are placed in square brackets before the message name

Realization of a message can be conditioned by more than one condition

15

Sequence Diagrams – advanced concepts

Page 16: Object-oriented modeling Sequence diagrams

16

Sequence Diagrams – advanced concepts

Guarding condition

Page 17: Object-oriented modeling Sequence diagrams

alt – alternativeopt – optionbreak – interruptionloop – iterationneg – improper functionalitypar - concurrency

critical – critical regionassert – formulaconsider – significanceignore – insignificancestricte – strict orderseq – weak order

17

Sequence Diagrams – advanced concepts

Combined fragment – is a logically consistent area of interaction, a part of a sequence diagram characterized by specific properties defined by the interaction operator

Interaction operator – specifies the functionality realized by the combined fragment

Interaction operators:

Page 18: Object-oriented modeling Sequence diagrams

18

Sequence Diagrams – advanced concepts

Selected, most common operators: alternative (alt) – means a possibility to choose only

one of all presented interaction operands within the combined fragment, depending on the condition assigned to the operand

option (opt ) – means that the operand within the combined fragment will occur or will be omitted, depending on the condition

interruption (break) – is a abbreviated form of alt with only one defined operand and when the combined fragment is executed other interactions are ignored

iteration (loop) – means repeating the operand a specified number of times

Page 19: Object-oriented modeling Sequence diagrams

19

Sequence Diagrams – advanced concepts

Page 20: Object-oriented modeling Sequence diagrams

20

Sequence Diagrams – advanced concepts

Page 21: Object-oriented modeling Sequence diagrams

21

Sequence Diagrams – advanced concepts

Page 22: Object-oriented modeling Sequence diagrams

22

Sequence Diagrams – advanced concepts

Page 23: Object-oriented modeling Sequence diagrams

23

Sequence Diagrams – advanced concepts

Interaction occurrence – is a reference to a linked interaction diagram, placed within the base diagram

Interaction occurrences are especially useful in case of extensive sequence diagrams, which refer to other diagrams defined earlier

Interaction occurrence can be invoked either by a message or by time factor

Page 24: Object-oriented modeling Sequence diagrams

24

Sequence Diagrams – advanced concepts

Interaction occurrence

Page 25: Object-oriented modeling Sequence diagrams

25

Building a sequence diagram Analysis of a selected use case and its

scenarios Identification of classifiers taking part in the

interaction Development of conceptual sequence diagram

including (identified classifiers, messages and execution specifications)

Development of a generic sequence diagram on the basis of the conceptual diagram by adding advanced concepts like: different message types, conditions, combined fragments, interaction occurrences

Optional development of instance sequence diagrams for a selected generic diagram