Title: Decomposition of Message Sequence Charts
1Decomposition ofMessage Sequence Charts
Loïc Hélouët, Pierre Le Maigat
SAM 2000
2Outline
- Motivations
- bMSC Decomposition
- Normalisation of HMSCs
- Conclusion
3Motivations
- Time Analysis Granularity
No finite time model Reduce the
language or Consider bMSCs as the granularity of
the method
M1
M1
M2
4Motivations
A
B
C
m1
c
m1
c
A
B
C
m1
?
A
B
c
A
m2
B
C
?
m3
m3
m2
m2
B
m3
5bMSC Decomposition
- bMSC Independance
- I(M1) ? I(M2)? ? M1M2 ? M2M1 ? M1?? M2
bMSC M1
m1
A
B
?
M2
?
M1
??
bMSC M2
C
D
m2
Decomposition?
6bMSC Decomposition
Preserve messages
B
A
m1
B
A
m1
Preserve coregions
?
7bMSC Decomposition
Message Crossing can not be separated
A
B
C
m1
m2
But may involve all instances !
m3
8bMSC Decomposition
9bMSC Decomposition
Cuts
10bMSC Decomposition
Valid Cuts
11bMSC Decomposition
Basic patterns Sets of events that are not
partitionned by valid cuts
B
A
C
B1
B2
a
m1
B2
??
B1
B3
m2
m3
B3
12bMSC Decomposition
G(M)
G(M) Order relation on events Cycles
between pairs of events that must not be
separated
A
B
m1
m2
13bMSC Decomposition
Basic patterns are the strongly connected
components of G(M) ? Use Tarjan s
algorithm
14bMSC Decomposition
Exemple
B
A
C
m1
a
m2
m4
m3
b
m5
15bMSC Decomposition
Exemple
m1
a
m2
b
m4
m3
m5
16bMSC Decomposition
Exemple
bMSC M1
bMSC M3
bMSC M2
bMSC M4
bMSC M5
17Normalisation of HMSCs
- HMSC bMSC Automata
- Generate local sequencing
- of bMSC
- Decomposition ?
- Normal form ?
18Normalisation of HMSCs
Factorisation
M1
?
??
M1
M2
??
M1
M3
M2
M3
Lift Up
M1
??
M1
M3
If I(M1) ? I(m3)?
?
??
M2
M3
M2
19Normalisation of HMSCs
Caution when factorizing bMSCs!
M1
M2
?
M1
M3
M4
??
M2
M3
??
M2
M4
M1
?
M2
Preserve cycles
M3
M4
20Normalisation of HMSCs
Caution when Shifting bMSCs!
M1
??
M2
M1
?
M3
M2
M3
M2
Even if I(M1) ? I(m3)?
21Normalisation of HMSCs
Let H be a HMSC Algorithm Split all bMSCs of H
into Basic Patterns Repeat Factorize
(H) Lift(H) Until Hn Hn1
22Normalisation of HMSCs
??
M12
M11
M1
Lift UP
M2
Factorize
M5
M6
M3
M6
??
M51
M32
M31
M7
M4
M7
M52
M4
23Conclusion
Decomposition
- for analysis (time, concurrency,)
- as an equivalence
-
http//www.irisa.fr/pampa/perso/helouet/LHpage.htm
l