Modelling Timed Concurrent Systems Using Activity Diagram Patterns - - PowerPoint PPT Presentation

modelling timed concurrent systems using activity diagram
SMART_READER_LITE
LIVE PREVIEW

Modelling Timed Concurrent Systems Using Activity Diagram Patterns - - PowerPoint PPT Presentation

KSE 2014 October 10th, 2014 Hanoi Modelling Timed Concurrent Systems Using Activity Diagram Patterns tienne Andr, Christine Choppy, Thierry Noulamo Universit Paris 13, Sorbonne Paris Cit, LIPN, CNRS, France University of


slide-1
SLIDE 1

KSE 2014 October 10th, 2014 Hanoi

Modelling Timed Concurrent Systems Using Activity Diagram Patterns

Étienne André, Christine Choppy, Thierry Noulamo∗ Université Paris 13, Sorbonne Paris Cité, LIPN, CNRS, France

∗University of Dschang, IUT Fotso Victor, LAIA, Bandjoun, Cameroun André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 1 / 20

slide-2
SLIDE 2

Introduction

Introduction

Activity diagrams: rich, permissive syntax, favours mistakes Semantics in natural language prevents formal verification

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 2 / 20

slide-3
SLIDE 3

Introduction

Introduction

Activity diagrams: rich, permissive syntax, favours mistakes Semantics in natural language prevents formal verification Our contributions Activity diagram patterns: TADC (Timed Activity Diagram Components) Modular composition mechanism (also refinement) Semantics with time Petri nets

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 2 / 20

slide-4
SLIDE 4

Outline

Outline

1

Timed Activity Diagrams Patterns

2

Translation into Time Petri Nets

3

Conclusion and Perspectives

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 3 / 20

slide-5
SLIDE 5

Timed Activity Diagrams Patterns

Outline

1

Timed Activity Diagrams Patterns

2

Translation into Time Petri Nets

3

Conclusion and Perspectives

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 4 / 20

slide-6
SLIDE 6

Timed Activity Diagrams Patterns UML Activity Diagrams

UML Activity Diagrams

initial node, activity/flow final nodes, decision nodes (guards), fork/join nodes Global variables typed with finite domains (e.g. enumerated types) Activities may involve global variables discrete, instantaneous modifications (assignment, function call with side-effects)

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 5 / 20

slide-7
SLIDE 7

Timed Activity Diagrams Patterns Timed Activity Diagram Components

Timed Activity Diagram Components (TADC)

input connectors, output connectors “well-formed” activity diagrams, restricted construct set, adding timed constructs modular specification with possible refinement inductive mechanism

TADC 1 2 n 1 2 m

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 6 / 20

slide-8
SLIDE 8

Timed Activity Diagrams Patterns 10 TADC patterns

10 TADC patterns

initial node, flow final node, simple activity . . .

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 7 / 20

slide-9
SLIDE 9

Timed Activity Diagrams Patterns 10 TADC patterns

10 TADC patterns

initial node, flow final node, simple activity . . . sequence, non-deterministic delay, deterministic delay, deadline,

TADC1 TADC2

sequence input connectors = TADC1 input connectors

  • utput connectors = TADC2 output connectors

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 7 / 20

slide-10
SLIDE 10

Timed Activity Diagrams Patterns 10 TADC patterns

10 TADC patterns

initial node, flow final node, simple activity . . . sequence, non-deterministic delay, deterministic delay, deadline,

TADC1 TADC2

sequence

TADC1 TADC2

  • d

deterministic delay d ∈ R≥0

TADC1 TADC2

  • [0, d]

non-determi-

  • nistic delay

TADC1 A TADC2

  • d

TADC3

deadline

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 8 / 20

slide-11
SLIDE 11

Timed Activity Diagrams Patterns 10 TADC patterns

10 TADC patterns

initial node, flow final node, simple activity . . . sequence, non-deterministic delay, deterministic delay, deadline,

TADC1 A TADC2

  • d

TADC3

deadline TADC1 execution activity A TADC2 starts after at most d units of time alternatively, TADC3 starts after exactly d units

  • f time

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 9 / 20

slide-12
SLIDE 12

Timed Activity Diagrams Patterns 10 TADC patterns

10 TADC patterns (followed)

decision, merge, synchronisation (cf UML)

TADC TADC1 TADCn · · ·

[ c

  • n

d1 ] [ c

  • n

dn ]

decision

TADC1 TADCn TADC · · ·

merge

TADC1 TADCn TADC′

1

TADC′

m

· · · · · ·

synchronisation

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 10 / 20

slide-13
SLIDE 13

Translation into Time Petri Nets

Outline

1

Timed Activity Diagrams Patterns

2

Translation into Time Petri Nets

3

Conclusion and Perspectives

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 11 / 20

slide-14
SLIDE 14

Translation into Time Petri Nets Time Petri Nets

Time Petri Nets [Merlin, 1974] with global variables

A kind of automaton

Bipartite graph with places (“standard” tokens) and transitions Transitions associated with a firing interval Enabled (tokens present) transitions must fire at the end of their firing interval (unless meanwhile disabled by another transition) Global variables typed by a finite domain, used to express guards, updated when transition fired Global variables: syntactic extension only Note: Time Petri Nets with global variable: similarities with coloured Petri nets

p1 [1, 3] {¬b} [2, 4] i := i + i p2 p3

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 12 / 20

slide-15
SLIDE 15

Translation into Time Petri Nets Time Petri Nets

Time Petri Nets [Merlin, 1974] with global variables

A kind of automaton

Bipartite graph with places (“standard” tokens) and transitions Transitions associated with a firing interval Enabled (tokens present) transitions must fire at the end of their firing interval (unless meanwhile disabled by another transition) Global variables typed by a finite domain, used to express guards, updated when transition fired Global variables: syntactic extension only Note: Time Petri Nets with global variable: similarities with coloured Petri nets

p1 [1, 3] {¬b} [2, 4] i := i + i p2 p3 p1 bF bT i [1, 3] [2, 4] p2 p3

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 12 / 20

slide-16
SLIDE 16

Translation into Time Petri Nets Translation mechanism

Translation mechanism

each TADC is translated into a TPN fragment where the connectors are translated into places two TPN fragments can be composed by fusing the corresponding connector places together simple activity: TPN transition connected to input and output places (to be used for composition)

A /action action

assignments are easily translated functions involving a user input → non-deterministic choice

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 13 / 20

slide-17
SLIDE 17

Translation into Time Petri Nets Translation mechanism

Translation mechanism (cont’d)

Deterministic delay

TADC1 TADC2

  • d

Tr(TADC1) [d, d] Tr(TADC2)

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 14 / 20

slide-18
SLIDE 18

Translation into Time Petri Nets Translation mechanism

Translation mechanism (cont’d)

Deadline

TADC1 A TADC2

  • d

TADC3

Tr(TADC1) [0, d] [d, d] Tr(TADC2) Tr(TADC3)

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 15 / 20

slide-19
SLIDE 19

Translation into Time Petri Nets Translation mechanism

Translation mechanism (cont’d)

Decision

TADC TADC1 TADCn · · ·

[ c

  • n

d1 ] [ c

  • n

dn ]

[cond1] [condn] Tr(TADC) Tr(TADC1) Tr(TADCn) · · ·

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 16 / 20

slide-20
SLIDE 20

Conclusion and Perspectives

Outline

1

Timed Activity Diagrams Patterns

2

Translation into Time Petri Nets

3

Conclusion and Perspectives

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 17 / 20

slide-21
SLIDE 21

Conclusion and Perspectives

Conclusion

Activity diagram patterns with timed constructs for modular composition Semantics in terms of time Petri nets

[André et al., 2013]: “precise” activity diagram patterns to model

business processes, modular, coloured Petri nets semantics Here: focus on time extension, less restrictive patterns (arbitrary number of input and output connectors), easier to “plug in” a higher level scheme.

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 18 / 20

slide-22
SLIDE 22

Conclusion and Perspectives

Conclusion

Element [UML, 2013] [André et al., 2013] This work Activities Yes Yes Yes Data Limited Yes Limited Participants Limited Yes No Initial / final nodes Yes Yes Yes Decision Yes Restricted Yes Merge Yes Restricted Yes Fork Yes Restricted Yes Join Yes Restricted Yes Timed transitions Limited No Yes

Table: Summary of the syntactic aspects considered

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 19 / 20

slide-23
SLIDE 23

Conclusion and Perspectives

Perspectives

Enrich with more complex features, e.g., timed synchronization of activities Refinement Tool ...

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 20 / 20

slide-24
SLIDE 24

Bibliography

Bibliography

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 21 / 20

slide-25
SLIDE 25

Bibliography

References I

(2013). OMG unified modeling language. version 2.5 beta 2, 2013-09-05. http://www.omg.org/spec/UML/2.5/Beta2/PDF/. André, É., Choppy, C., and Reggio, G. (2013). Activity diagrams patterns for modeling business processes. In SERA, volume 496 of Studies in Computational Intelligence, pages 197–213. Springer. Jensen, K. and Kristensen, L. M. (2009). Coloured Petri Nets – Modelling and Validation of Concurrent Systems. Springer. Merlin, P. M. (1974). A study of the recoverability of computing systems. PhD thesis, University of California, Irvine, CA, USA.

André, Choppy, Noulamo (Paris13/Dschang) Activity Diagram Patterns Oct 10th, 2014 22 / 20