Information Technology Reference
In-Depth Information
Note that to detect successive join points in a base bSD
M
, we start to apply
Algorithm 1 on
M
to obtain the first join point, which we denote
J 1 (more
precisely, we obtain an isomorphism
μ
=(
μ 0 1 2 ) which defines
J 1 ). Secondly,
J 1 ) to obtain the second join point
J 2 , and then we continue in this way as long as the last join point obtained is
not null.
M =
M − pred
we apply Algorithm 1 on
(
4.2
Specialization of the Abstract Algorithm
Enclosed Part Detection
For the detection of enclosed part, the function
findSetsOfEvent
is equivalent
{v ∈ E M
to
V i =
|∃u, w, w i =
u.v.w ∧ α
(
v
)=
α
(
π i (
P
))
}
. For a word of events
w i on the object
i
, the function
findSetsOfEvent
returns a set
V i where each
element
V i is a strict sequence of events which have the same action names
as the events of
v
of
P
on the object
i
.
With the function
min
, it remains to check if the order of the events of
P
M . For that, we check if
is the same as the order of the events associated to
M at the same
position also form a pair of sending-reception of events. Then, we take the first
(or minimum) set of events satisfying the properties. More formally, the function
min
for all pairs of sending-reception of events of
P
, the events of
can be rewritten by:
min
v 1 ,...,v |I P | ∈ V 1 ×···×V |I P | |
) ∈≺ M
∈≺ P , Γ v φ ( e ) ( e ) ◦ β E P (
aaaaaaaaaaaaaaaa
(
e, f
)
e
)
v φ ( f ) ( f ) ◦ β E P (
f
In Fig. 10, with the pointcut
P
and the bSD
M
, we are going to show how
Algorithm 1 works in a practical way if the function
min
are defined as above. The table in Fig. 10 represents the values of some variables
used in the algorithm. The two first variables
findSetsOfEvent
and
)) (used in
line 3 of the algorithm) represent, respectively, the label of the projection of
α
(
π I 1 (
P
)) and
α
(
π I 2 (
P
P
on
the objects
I
1and
I
2. These two labels are equal to
ab
. The two next variables
w I 1 and
w I 2 (in Fig. 10, in table) represent the projection of
M
on respectively
the objects
I
1and
I
2 (computed in line 2 of the algorithm). Then, for
I 1 ,with
the function
findSetsOfEvent
, the algorithm computes the sets of successive
events of
w I 1 which have the same action names (or labels) as
α
(
π I 1 (
P
)). We
{e 5 e 6 ;
e 7 e 8 }
e 5 e 6 and
e 7 e 8 are equal to
obtain
V I 1 =
since the labels of
ab
.We
{e 11 e 12 ;
e 14 e 15 ;
e 17 e 18 }
dothesamefor
I 2 and we obtain
V I 2 =
. At line 5, with
min
the function
, the algorithm computes the first (or minimum) set of events
whichformanenclosedpart.Thefirstsetofeventsis
{v I 1 =
e 5 e 6 ;
v I 2 =
e 11 e 12 }
,
but it does not satisfy the properties of line 5. Indeed,
( e 1 ,e 3 )
∈≺ P ,
Γ v φ ( e 1 ) ( e 1 ) ◦ β E P ( e 1 ) v φ ( e 3 ) ( e 3 ) ◦ β E P ( e 3 )
=
=( e 5 ,e 11 ) ∈≺ M .
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Γ v I 1 ,I 1 (1) v I 2 ,I 2 (1)
 
Search WWH ::




Custom Search