Information Technology Reference
In-Depth Information
reception (for instance, the event
e 1 precedes the event
e 3 ,andtheevent
e 2 pre-
cedes the event
is obtained. Note
that the events within an individual lifeline are totally ordered only if each event
is unique. To ensure the uniqueness of each event, we use a unique identifier for
each event.
We will denote by
e 4 ). Then, by transitivity, the partial order
T
e
e
. The type of an event indicates
whether an event is a send event or a receive event. We will denote by
(
), the type of an event
min
(
E
)=
{e ∈ E|∀e ∈ E, e ≤ e ⇒ e =
e}
, the set of minimal events of
E
, i.e., the set
of events which have no causal predecessor. We will denote by
pred ≤,E (
e
)=
{e
∈ E|e
≤ e}
, the set of predecessors of the event
e
,andby
succ ≤,E (
e
)=
{e
∈ E|e ≤ e }
, the set of successor of
e
. These two notations can be used
E
E )=
{e ∈ E|∃e
∈ E ,e ≤ e }
with a subset
of the set
E
:
pred ≤,E (
and
E )=
{e ∈ E|∃e
∈ E ,e
succ ≤,E (
≤ e}
. Slightly misusing the notation, when
M is a bSD which is a “part” of a bSD
M )astheset
M
, we will denote
pred
(
M plus the set of predecessors of the events of
M . Finally, we will
of events of
{e ∈ E|e <e}
also use, for instance, the notation
pred <,E (
e
)=
to denote the
set of strict predecessors of the event
).
Basic SDs alone do not have sucient expressive power: they can only define
finite behaviors, without real alternatives. For this reason, they can be com-
posed with operators such as sequence, alternative and loop to produce a SD
called combined SDs (cSD) (also called UML 2.0 Interaction Overview Diagram).
Figure 1 shows two equivalent views of the same cSD called
e
(order
<
instead of
log in
(one view is
more compact). This cSD
represents the specification of a customer log
onaserver.Ifthecustomermakestwobad attempts, then he/she is rejected.
Else, he/she is accepted. We can see that the cSD allows an alternative be-
tween the bSDs Accept and Retry, and between the bSDs Accept and Rejected.
The cSD also composes sequentially the bSDs Propose and Accept (denoted
P ropose•Accept
log in
), the bSDs Propose and Retry (denoted
P ropose•Retry
), etc...
The notion of sequential composition (noted
with the UML2 notation)
is central to understanding the semantics of cSD. Note that we use the notion
of weak sequential composition presented in the UML 2.0 specification [21](p
454). Roughly speaking, (weak) sequential composition of two bSDs consists of
gluing both diagrams along their common lifelines. Note that the sequence op-
erator only imposes precedence on events located on the same lifeline, but that
events located on different lifelines in two bSDs
or
seq
M
1and
M
2 can be concurrent
in
M
1
• M
2. Sequential composition can be formally defined as follows:
Definition 2 (Sequential Composition) 3
The sequential composition of two bSDs
M 1 =(
I 1 ,E 1 , ≤ 1 ,A 1 1 1 , ≺ 1 ) and
M 2 =(
I 2 ,E 2 , ≤ 2 ,A 2 2 2 , ≺ 2 ) is the bSD
M 1 • M 2 =(
I 1 ∪ I 2 ,E 1 E 2 , ≤ 1 2
1 2 = 1
,A 1 ∪ A 2 1 ∪ α 2 1 ∪ φ 2 , ≺ 1
2 ) ,where:
2
{
(
e 1 ,e 2 )
} .
E 1 × E 2 | φ 1 (
e 1 )=
φ 2 (
e 2 )
3 We recall that we use the notion of weak sequential composition. It also exists a
strong sequential composition. In a strong sequential composition of two bSDs M 1
and M 2 ,alltheeventsof M 1 have to occur before an event of M 2 can occur.
 
Search WWH ::




Custom Search