6 RELATED WORKS
Many researchers proposed semantics for sequence
diagram for various purposes. In (Micskei and Wae-
selynck, 2011) a survey on semantics of SD to over-
come problems that are not yet resolved by OMG.
Other semantics (Aredo, 2000), (Cengarle et al.,
2006), (Haugen et al., 2005), (St
¨
orrle, 2003) were
proposed to verify some SD properties such as safety
properties like deadlock freedom, or to verify the
properties of the relation of refinement of sequence
diagrams, like in (?), (Haugen et al., 2005), (St
¨
orrle,
2003). There are approaches which have defined se-
mantics by translating the SD into other formalisms to
benefit from their advantages. In (Whittle and Schu-
mann, 2000) statecharts were generated from a set
of SD and a set of OCL constraints. In (Cardoso
and Sibertin-Blanc., 2001), (Eichner et al., 2005) SD
were translated into Petri nets formalism. In (Grosu
and Smolka, 2005) SD were translated into B ¨uchi au-
tomata. However, by making the translation some
essential features of the SD are lost. These seman-
tics are not suitable for modeling all types of systems
especially for distributed systems. This mismatch
has motivated the work of (Sibertin-Blanc et al.,
2005), (Tahir et al., 2005) who proposed a causal
semantics for basic SD. Many works (Laleau R.,
2002), (Akram, 2006) have coupled UML and B-
method, in two ways, either to ensure the traceabil-
ity between the two formalisms or to check some
properties and to eliminate inconsistency of UML di-
agrams ((Lano et al., 2001), (Ledang and Souqui
`
eres,
2002)). The existing approaches provide semantics
closely related to the target translation formalisms.
In our approach, regardless of the translation lan-
guage, we have considered an existing semantics
for UML1.x SD, which is adequate for modeling of
the behaviours of distributed systems; we have ex-
tended it to support UML2.0 SD with the most popu-
lar CF (ALT, OPT, LOOP). We take care in the trans-
lation to preserve all the essential aspects of the SD,
by considering set theory and equivalence of traces
shared by the formalisms.
7 CONCLUSION AND
PERSPECTIVES
To help in preliminaries design steps of distributed
systems, we have equipped UML2.0 sequence dia-
grams with an appropriate causal semantics. We have
underlined the limitations of the existing UML2.0
semantics, which consists in i) imposing a total or-
der on events in each lifeline, ii) flattening the com-
bined fragments and, iii) the application of the weak
sequencing to derive the traces of SD. Therefrom,
we opted for the causal semantics initially proposed
for basic SD in the setting of distributed systems.
The causal semantics is based on partial order. We
have proposed an extension of this causal seman-
tics to cover the ALT, OPT and LOOP combined frag-
ments. We overcome the insufficiencies of the stan-
dard UML2.0 semantics by proposing a treatment
of CF which preserves their compact description: new
behavioural rules are described and formalized. We
have proposed an implementation in Event-B of the
SD equipped with this extended causal semantics.
The behaviour of SD (defined by their traces) can then
be checked by analysing the Event-B models. The
latter will also serve as the support for safety, live-
ness and fairness analysis. Several combinations of
nested CF must be studied in order to generalize, and
to extend our proposal to support nested CF; to cover
other concepts like the gates, and the state invariants,
which allow one to express more complex behaviours,
and to cover other CF, in particular those dedicated
to model invalid behaviours such as the NEG opera-
tor. Meanwhile, the current extension of causal se-
mantics serves as the basis of our work on the ver-
ification of the refinement relation between sequence
diagrams. The Rodin platform is extendable with plu-
gins. We currently creating a plugin for checking the
well-formedness of a given SD equipped with the ex-
tended causal semantics and for checking other prop-
erties. We are already conducting some experimenta-
tions on the refinement of SD.
REFERENCES
Akram, I. (2006). Couplage de sp
´
ecifications B et de
descriptions UML pour l’aide aux d
´
eveloppements
formels des syst
`
emes d’information: Approche par
m
´
eta-mod
´
elisation. In Actes du 24
`
eme congr
´
es IN-
FORSID, Tunisie.
Aredo, D. B. (2000). Semantics of UML sequence diagram
in PVS. Technical report, Online Proc. of UML2000
Workshop on Dynamic Behavior in UML models: Se-
mantic Questions.
Cardoso, J. and Sibertin-Blanc., C. (2001). Ordering actions
in sequence diagrams of UML. In 23rd Int. Conf. on
Information Technology Interfaces, pages 3–14.
Cengarle, M. V., Graubmann, P., Wagner, S., and Munchen,
T. U. (2006). Semantics of UML 2.0 Interactions with
Variabilities.
Eichner, C., Fleischhack, H., Meyer, R., Schrimpf, U., and
Stehno, C. (2005). Compositional semantics for UML
2.0 sequence diagrams using Petri Nets. Lecture Notes
in Computer Science, 3530:133–148.
Grosu, R. and Smolka, S. (2005). Safety-liveness semantics
ICSOFT-EA2015-10thInternationalConferenceonSoftwareEngineeringandApplications
346