Laboratory of Advanced Network Technologies. MSC & SCStudio Mat - - PowerPoint PPT Presentation

laboratory of advanced network technologies msc scstudio
SMART_READER_LITE
LIVE PREVIEW

Laboratory of Advanced Network Technologies. MSC & SCStudio Mat - - PowerPoint PPT Presentation

Laboratory of Advanced Network Technologies. MSC & SCStudio Mat u s Madzin Faculty of Informatics Masaryk University Autumn 2011 1 / 30 Message Sequence Chart Message Sequence Chart (MSC) is a formalism for communication


slide-1
SLIDE 1

Laboratory of Advanced Network Technologies. MSC & SCStudio

Mat´ uˇ s Madzin

Faculty of Informatics Masaryk University

Autumn 2011

1 / 30

slide-2
SLIDE 2

Message Sequence Chart

Message Sequence Chart (MSC) is a formalism for communication description between a number of independent components.

2 / 30

slide-3
SLIDE 3

Message Sequence Chart

Message Sequence Chart (MSC) is a formalism for communication description between a number of independent components. Standardized by ITU-T as the Z.120 recommendation 1993: the first version ... 2011: current version

2 / 30

slide-4
SLIDE 4

Why?

Why should we use any formalism?

3 / 30

slide-5
SLIDE 5

Why?

Why should we use any formalism? automatic/computer processing model checking equivalence checking testing simulation theorem proving

3 / 30

slide-6
SLIDE 6

MSC Components

Which components does MSC provide for the user? communicating processes message ordering time information high-level form

4 / 30

slide-7
SLIDE 7

Advantages

What MSC is good for?

5 / 30

slide-8
SLIDE 8

Advantages

What MSC is good for? Both human and computer readable formalizm for: basic behaviour demonstration (use cases), high level system behaviour description, test case specification, and (test) log visualization.

5 / 30

slide-9
SLIDE 9

Disadvantages

What MSC is NOT good for?

6 / 30

slide-10
SLIDE 10

Disadvantages

What MSC is NOT good for? detailed specification (before implementation), hierarchical structure of communicating entities, implementation details (primitives for communication, detailed data manipulation), etc.

6 / 30

slide-11
SLIDE 11

Message Sequence Chart (MSC)

7 / 30

slide-12
SLIDE 12

Sequence Chart Studio

MSC drawing and verification tool developed at FI MU.

http://scstudio.sourceforge.net

8 / 30

slide-13
SLIDE 13

Message Sequence Chart (MSC) - semantics

9 / 30

slide-14
SLIDE 14

Message Sequence Chart (MSC) - semantics

9 / 30

slide-15
SLIDE 15

MSC Properties

What is an unwanted behaviour/property?

10 / 30

slide-16
SLIDE 16

MSC Properties

What is an unwanted behaviour/property? Fundamental problems in the specified model, e.g. an implementation of the model does not exist in the given environment.

10 / 30

slide-17
SLIDE 17

Acyclic/Cyclic property

cyclic dependency among events unrealizable in any environment

11 / 30

slide-18
SLIDE 18

Acyclic/Cyclic property

12 / 30

slide-19
SLIDE 19

FIFO/non-FIFO property

  • verleaping messages

13 / 30

slide-20
SLIDE 20

FIFO/non-FIFO property

  • verleaping messages

unrealizable in an environment preserving message order

13 / 30

slide-21
SLIDE 21

FIFO/non-FIFO property

  • verleaping messages

unrealizable in an environment preserving message order

13 / 30

slide-22
SLIDE 22

FIFO/non-FIFO property

  • verleaping messages

unrealizable in an environment preserving message order realizable in an environment with P2P channel but unrealizable in case of a global channel

13 / 30

slide-23
SLIDE 23

Race Condition

14 / 30

slide-24
SLIDE 24

Race Condition

14 / 30

slide-25
SLIDE 25

Race Condition

Informally, race is when some receive event can come earlier.

14 / 30

slide-26
SLIDE 26

Solution #1 - Coregion Construction

Let us demonstrate that some events are not ordered.

15 / 30

slide-27
SLIDE 27

Solution #1 - Coregion Construction

Let us demonstrate that some events are not ordered.

15 / 30

slide-28
SLIDE 28

Solution #1 - Coregion Construction

Let us demonstrate that some events are not ordered. Events in a coregion are not ordered; except of related by general

  • rdering.

15 / 30

slide-29
SLIDE 29

Solution #2 - List/set of all possibilities

16 / 30

slide-30
SLIDE 30

High-Level MSC (HMSC) - ITU-T Z.120

17 / 30

slide-31
SLIDE 31

High-Level MSC (HMSC) - ITU-T Z.120

18 / 30

slide-32
SLIDE 32

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-33
SLIDE 33

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-34
SLIDE 34

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-35
SLIDE 35

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-36
SLIDE 36

High-Level MSC (HMSC) - ITU-T Z.120

these events are not ordered!

19 / 30

slide-37
SLIDE 37

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-38
SLIDE 38

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-39
SLIDE 39

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-40
SLIDE 40

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-41
SLIDE 41

High-Level MSC (HMSC) - ITU-T Z.120

19 / 30

slide-42
SLIDE 42

Deadlock Property

20 / 30

slide-43
SLIDE 43

Livelock Property

21 / 30

slide-44
SLIDE 44

Find Flow

Is a given MSC included in a given HMSC?

22 / 30

slide-45
SLIDE 45

Find Flow

Is a given MSC included in a given HMSC?

22 / 30

slide-46
SLIDE 46

Universal Boundedness

What size of buffer is needed to be sure it will not overflow?

23 / 30

slide-47
SLIDE 47

Universal Boundedness

What size of buffer is needed to be sure it will not overflow? Every finite input buffer of Y can overflow.

23 / 30

slide-48
SLIDE 48

Universal Boundedness

What size of buffer is needed to be sure it will not overflow?

23 / 30

slide-49
SLIDE 49

Universal Boundedness

What size of buffer is needed to be sure it will not overflow? Buffers of size 1 will not overflow.

23 / 30

slide-50
SLIDE 50

Time Consistency

Are the given time conditions consistent?

24 / 30

slide-51
SLIDE 51

Time Tightening

Some time conditions can be tightened.

25 / 30

slide-52
SLIDE 52

Time Tightening

Some time conditions can be tightened.

25 / 30

slide-53
SLIDE 53

MSC - Summary

Basic MSC instances messages send events receive events conditions coregions general ordering inline expressions time constraints timers High-level MSC (HMSC) start node end node reference nodes connection points lines conditions time constraints

26 / 30

slide-54
SLIDE 54

MSC - Properties

Acyclic property FIFO property Race Condition Deadlock Livelock Find Flow Nonlocal Choice Universal Boundedness Existential Boundedness Time Race Condition Time Consistency Tighten Time

27 / 30

slide-55
SLIDE 55

MSC - Tools

IBM Rational, SanDriLa SDL, Cinderella SDL Sequence Chart Studio (SCStudio) MS Visio addon drawing, import, export checkers for all the mentioned properties MSCan academic tool

  • nly textual input

some checkers Mesa academic tool local choice and time checkers

28 / 30

slide-56
SLIDE 56

TCP Demonstration

known TCP diagram HMSC diagram detailed diagram

29 / 30

slide-57
SLIDE 57

Thanks for your attention

30 / 30