1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc...
-
Upload
pamela-simmons -
Category
Documents
-
view
217 -
download
0
Transcript of 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc...
![Page 1: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/1.jpg)
1
Towards formal manipulations of scenarios represented by High-level Message Sequence Charts
Loïc Hélouet
Claude Jard
Benoît Caillaud
IRISA/PAMPA (INRIA/CNRS/Univ. Rennes)Campus de Beaulieu, F-35042 RENNES,France.
http://www.irisa.fr/[email protected]
![Page 2: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/2.jpg)
2
Motivations
Formal methods and tools to improve the development process of (distributed) software
Need to instrument at early stages of the development Interest of graphical scenario languages like Message
Sequence Charts in the SDL framework or Sequence Diagrams of the popular Unified Modelling Language
Problems with their formal semantics Problems with their declarative (high-level) nature :
Normal forms ? State-finiteness ? Executability ?
![Page 3: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/3.jpg)
3
Contributions
Partial-order semantics of the High-level Message Sequence Charts (HMSC is the ITU/Z.120 standard)
Effective notion of equivalence based on event-structures and graph-grammars
Normal form of HMSCs Towards new efficient methods :
to decide divergence, to simulate and to check properties
![Page 4: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/4.jpg)
4
Outline
MSC et HMSC Event structures Partial order semantics of HMSC Covering graphs of event structures Graph grammars Regularity of graph grammars Equivalence Applications Conclusion and perspectives
![Page 5: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/5.jpg)
5
Basic Message Sequence Charts (BMSC)
Instances, events and messages
Ordering of events : due to sequentiality of
instances due to message causality
Partial order M= ( E,<,,A,I ) E : events < : causal ordering : labelling of events
: E -> A x I A : action names I : instance names
![Page 6: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/6.jpg)
6
High-level Message Sequence Charts (HMSC)
Hierarchical graph of MSCs
Sequence, choice and loop operators
Non-deterministic choice
Sequence is communication-closed but without synchronization
![Page 7: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/7.jpg)
7
Sequencing
Instance by instance, maximal events of the first HMSC are linked to the minimal events of the second HMSC
![Page 8: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/8.jpg)
8
Choice : union of scenarios
![Page 9: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/9.jpg)
9
Recursion (unfolding)
![Page 10: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/10.jpg)
10
Specifications which are not implementable
Non-local choices Divergence
![Page 11: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/11.jpg)
11
Infinite family of partial orders
Paths of the HMSC graph form (generally) an infinite family of partial orders
This family can be uniquely represented by an event structure (communication closed assumption)
![Page 12: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/12.jpg)
12
Event structures
Compact representation of partial order families. Used in concurrency theory
ES = (E, <, #, , A , I ) E : events < : partial order (causality) # : conflict relation
(symmetric, inherited by causality)
: labelling
![Page 13: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/13.jpg)
13
Reduction to minimal conflicts
![Page 14: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/14.jpg)
14
From HMSCs to event structures
Sequencing : as for partial orders; conflicts are inherited
Choice : creates new conflicts
Recursion : unfolding
![Page 15: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/15.jpg)
15
HMSC partial order semantics
HMSC Semantics = the corresponding event structure
Strong notion of equivalence given by isomorphism of event structures
Isomorphism of (infinite) graphs can be computed using graph grammars [Caucal 92] such that :
the graph is regular the graph is finitely branching
Based on the computation of normal forms of the grammars
![Page 16: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/16.jpg)
16
Non regular specifications
![Page 17: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/17.jpg)
17
Irregular graphs
Cannot be represented by a graph grammar
![Page 18: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/18.jpg)
18
Covering graphs with conflict inheritance edges
![Page 19: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/19.jpg)
19
Transformation into a regular graph
![Page 20: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/20.jpg)
20
Graph grammar
Hyperarc :
s1. . . .sn
Hypergraph :
Graph + hyperarcs Rule : (Hyperarc,
Hypergraph) Graph grammar =
G = (Axiom,Rules)
![Page 21: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/21.jpg)
21
Graph rewriting
![Page 22: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/22.jpg)
22
From HMSCs to graph grammars (ends)
![Page 23: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/23.jpg)
23
From HMSCs to graph grammars (sequence)
![Page 24: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/24.jpg)
24
From HMSCs to graph grammars (choice)
![Page 25: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/25.jpg)
25
From HMSCs to graph grammars (recursion)
![Page 26: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/26.jpg)
26
From HMSCs to graph grammars (conflict inheritance arcs)
Context management
![Page 27: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/27.jpg)
27
Example (HMSC)
![Page 28: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/28.jpg)
28
Example (graph grammar)
![Page 29: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/29.jpg)
29
Example (graph grammar)
![Page 30: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/30.jpg)
30
Properties of covering graphs
Covering graphs with inheritance edges are regular (can be finitely described by graph grammars)
Branching of conflicts is finite Branching of causality is generally infinite But ignoring them preserves the isomorphism of the
event structures (the infinite branching can be reconstructed from the simplified graph)
![Page 31: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/31.jpg)
31
Decision of equivalence
Let us consider two HMSCs H1 and H2 Compute their graph grammars G1 and G2 Replace the inheritance edges that are not made from choice to
choice by the corresponding conflicts (minimization of basic event structures)
Compute grammars G’1 and G’2 by eliminating redundancies (to avoid global optimization)
Compute FBG1 and FBG2 by eliminating infinite branchings within G’1 and G’2
Compute FNG1 and FNG2, the normal forms of FBG1 and FBG2 If FBG1 and FBG2 have the same normal forms up to a
renaming, then H1 and H2 are equivalent
![Page 32: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/32.jpg)
32
Normal forms
Global transformation to ensure a certain distance between the hyperarcs
PolynomialA rule which is not normalized
![Page 33: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/33.jpg)
33
Example of two equivalent HMSCs
![Page 34: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/34.jpg)
34
Their covering graph
![Page 35: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/35.jpg)
35
Decision of divergence
An HMSC is not divergent iff the communication graph of each simple loop is symmetricCan be computed on the graph grammar by finite rewriting
![Page 36: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/36.jpg)
36
Summary
Towards formal manipulations of scenario languages Partial order semantics of the HMSC standard Equivalence defined as a structure isomorphism Use of graph grammars and of recent decision
algorithms
ftp://ftp.inria.fr/INRIA/publication/RR/RR-3499.ps.gz
![Page 37: 1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.](https://reader035.fdocuments.in/reader035/viewer/2022062407/56649cfe5503460f949cee22/html5/thumbnails/37.jpg)
37
Perspectives
Short term : Implementation Weaker notions of equivalence Animation (using normal forms)
Middle term : HMSCs with values Parallel composition Integration in the UML meta-model
Long term : Decision of properties Quantitative analysis using Max + techniques Generation of squeletons, protocol synthesis