TMPA-2017: Compositional Process Model Synthesis based on Interface Patterns

25
Compositional Process Model Synthesis based on Interface Patterns TMPA-2017 Roman A. Nesterov Irina A. Lomazova [email protected], [email protected] Laboratory of Process-Aware Information Systems National Research University Higher School of Economics (Moscow) March 3, 2017

Transcript of TMPA-2017: Compositional Process Model Synthesis based on Interface Patterns

Compositional Process Model Synthesis based onInterface Patterns

TMPA-2017

Roman A. Nesterov Irina A. [email protected], [email protected]

Laboratory of Process-Aware Information SystemsNational Research University

Higher School of Economics (Moscow)

March 3, 2017

Agenda

1. Introduction2. Preliminaries

• Petri nets and their properties

3. Related Work4. Composing Petri nets via interfaces

• General description• Composition patterns

5. Conclusion

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 2 / 25

Introduction

Problem• Distributed systems with several interacting components –

large-scale models• Coordination and verification problems – too many possible

states to check

Approach• Study a system compositionally – a system inherits

component properties• Composition patterns for constructing system models – a

library of patterns to obtain correct system models

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 3 / 25

Petri netsStructure

A B

B

B

A Petri net is a bipartite graph N = (P,T,F,m0,L), where:1. P = {p1, p2, p3, ..., pn}2. T = {t1, t2, t3, ..., tm}, P ∩ T = ∅3. F ⊆ (P × T) ∪ (T × P)4. m0 ⊆ P5. L : T → {A, τ}

•t = {p ∈ P|(p, t) ∈ F}, t• = {p ∈ P|(t, p) ∈ F}, •t• = •t ∪ t•

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 4 / 25

Petri netsBehavior and correctness

A B

B

B

A occurred

1. A transition is enabled at m iff •t ∈ m and m ∩ t• = ∅2. A marking m is final iff ∀p ∈ m : p• = ∅3. A marking m is dead iff it enables no transitions (deadlock),

except for a final one4. A net N is correct iff:

• There are no deadlocks• A final marking is reachable

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 5 / 25

Related workComposing Petri nets by merging places, transitions [Reisig, 2013]

D

E

C

p

A

B p

D

E

CA

B p

N1

N2 Composition

• Straightforward way to compose nets• Correctness of a composed net?

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 6 / 25

Related workComposing Petri nets by net morphisms [Pomello et al., 2007-1014]

C D

A

B

A

B

E F

A1A

B

E F

A

C D

B

N1

N2 Composition

• Interacting nets are refinements of an abstract system modelR. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 7 / 25

Related workAlgebra of web services [Hamadi et al., 2003]

S1

S2

S1S

2

S1

S2

Sequencing Choice Concurrency

Correct

services

• Web services are correct Petri nets• Input-output relations between interacting services

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 8 / 25

Motivating exampleCausality on inner actions of interacting Petri nets

B

A

A

B

Components

Interface

A correct

Petri net

• Two components• Observable actions A, B• Correct behavior

ProblemHow to compose nets to get:

• correct composition;• property inheritance;• concurrency preservation?

SolutionTo adjust approach based onmorphisms to this case

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 9 / 25

MorphismsDefinition

Let Ni = (Pi,Ti,Fi,mi0) for i = 1, 2 be two Petri nets,

Xi = Pi ∪ Ti. The ω-morphism is a map φ : X1 → X2 such that:1. φ(P1) = P2, φ(m1

0) = m20.

2. ∀t1 ∈ T1 : φ(t1) ∈ T2 ⇒ φ(•t1) = •φ(t1) andφ(t1•) = φ(t1)•.

3. ∀t1 ∈ T1 : φ(t1) ∈ P2 ⇒ φ(•t1•) = {φ(t1)}.

A

A’ A

B

B’

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 10 / 25

Composing Petri nets via morphismsStep 1. Constructing canonical representations

NC is a canonical representation with respect to an interface

A

A B

A A B

B

A

A B

A

A BB

N Interface NC

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 11 / 25

Composing Petri nets via morphismsStep 2. Defining morphisms and merging nets

C D

A

B

A

B

E F

A1A

B

E F

A

C D

B

N1

N2 Composition

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 12 / 25

Composing Petri nets via morphismsPreservation of properties

How properties are preserved?Let N1 and N2 be two Petri nets representing components, and Nbe their composition obtained via the interface Petri net NI andω-morphisms as described above.

1. The Petri net N is deadlock-free, if N1, N2 and NI aredeadlock-free.

2. The Petri net N terminates properly, if N1, N2 and NIterminates properly.

A composed net is correct iff component nets are correct

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 13 / 25

Compositional patternsGeneral idea

Compositional pattern is a ready-to-use instrument for modellingand studying distributed systems with several interactingcomponents:

• Patterns are developed for typical workflows• Pattern correctness is justified via net morphism usage• Pattens can be applied without theoretical knowledge

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 14 / 25

Pattern 1: Simple causalityProblem statement

B

A

A

B

Components

Interface

A

B

Extended interface

Termination

Start

A correct

Petri net

• Extended interface is weakly bisimilar to the original one• Preservation of concurrency

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 15 / 25

Pattern 1: Simple causalityPrimary composition result

N1(S1)

A

N1(S2)

B

N2(S1)

B

N2(S2)

A

A

B

N1(S1)

A

N2(S1)

B

N1(S2)

N2(S2)

Morphisms

Composition

N1

N2

To be

removed

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 16 / 25

Pattern 1: Simple causalityReduced composition result

N1(S1)

A

N1(S2)

B

N2(S1)

B

N2(S2)

A

A

B

N1(S1)

A

N2(S1)

B

N1(S2)

N2(S2)

Morphisms

Composition

N1

N2

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 17 / 25

Pattern 2: Extended causalityProblem statement

N1(S3)

A

N1(S4)

N1(S2)

N1(S1)

A

N2(S3)

B

N2(S4)

N2(S2)

N2(S1)

A

A

B

Components

Interface

A B

A A

Extended interface

N1

N2

Termination

Start

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 18 / 25

Pattern 2: Extended causalityComposition result and implications

N1(S3)

A

N1(S4)

N1(S2)

N1(S1)

A

N2(S3)

B

N2(S4)

N2(S2)

N2(S1)

A

Result• Introducing additional

controlling places• Clearly identified behavior

of components• Component properties are

inherited by construction

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 19 / 25

Pattern 3: Conditional causalityProblem statement

N1(S3)N1(S2)

N1(S1)

A B

N1(S5) N1(S4)

N2(S1)

C

N2(S2)

A

BC

C

Components

Interface

N1

N2

Problem2 copies of C will not allow to definemorphisms as surjective maps

SolutionReconstruction of the interface net

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 20 / 25

Pattern 3: Conditional causalityInterface modification

A C

A C

2

1

B

3

C

4

Construction idea1. Restrict execution of C2. Remember execution of A3. Restrict execution of B4. Forbid execution of B when

A occurs

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 21 / 25

Pattern 3: Conditional causalityComposition result and implications

N1(S1)

A A

N1(S2) N1(S3)N2(S1)

A BC

N2(S2)N1(S4)

C

N1(S5)

To sum up...Morphisms help organize connectionof inner actions of componentsimmediately by construction

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 22 / 25

Conclusion

• Compositional approach to modeling distributed systems• Component relations can be defined on inner actions• Patterns for composition (causality and its generalizations)

Future research directions• Coverage of over relations (e.g., choice)• Combination of patterns• Relations on several actions

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 23 / 25

References

1. Reisig, W.: Understanding Petri nets. Springer-Verlag BerlinHeidelberg (2013)

2. Bernardinello, L., Mangioni, E., Pomello, L.: Composition ofelementary net systems based on morphisms. CEUR WorkshopProceedings 853, 87–101 (2012)

3. Bernardinello, L., Monticelli, E., Pomello, L.: On PreservingStructural and Behavioural Properties by Composing Net Systemson Interfaces. Fundamenta Informaticae 80(1-3), 31–47 (2007)

4. Pomello, L., Rozenberg, G., Simone, C.: A survey of equivalencenotions for net based systems. Advances in Petri Nets 1992 pp.410–472 (1992)

5. Hamadi, R., Benatallah, B.: A Petri net-based model for webservice composition. Proceedings of the 14th Australasian DatabaseConference 17, 191–200 (2003)

6. Murata, T.: Petri Nets: Properties, Analysis and Applications.Proceedings of the IEEE 77(4), 541–580 (1989)

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 24 / 25

Thank you for your attention!

Compositional Process Model Synthesisbased on Interface PatternsRoman A. Nesterov Irina A. Lomazova

[email protected], [email protected]

Laboratory of Process-Aware Information SystemsNational Research University

Higher School of Economics (Moscow)

March 3, 2017

R. Nesterov, I. Lomazova Higher School of Economics March 3, 2017 25 / 25