Information Technology Reference
In-Depth Information
that take place at a later stage of the process than specified receive the same
treatment. We reduce their initial annotation value, and create a new
FlowData
annotation where we actually observed the message. When we have not observed
a message type at all, we reduce all instances of the respective
FlowData
anno-
tation. At the end, we clean the process model from rarely used
FlowData
anno-
tations that would otherwise interfere with the message state model as message
would be activated too early or remain expected too long (line 24). Experiments
have identified a suitable cutoff value of 0
.
1. Arcs, however, that are inactive
at the end of the process (due to explicit user skipping or non executed XOR
branches) need no refreshing and are ignored. We insure this in Algorithm 1 by
providing only the set of active
FlowDirections
in
FD
active
in the first place.
Algorithm1
Self-learning Dependencies Algorithm
.
(
PM,Se
AM
,FD
active
).
A
1:
for all
tup
(
msg, act
)
∈
Seq
AM
do
For each activity-message tuple.
2:
N
←
P M.startNode
List of nodes that we haven't checked yet
3:
found
←
false
while
!
found
∨
!
N.empty
do
While not found and not at the process end
4:
5:
for
i
=
N.size
→
0
do
6:
Node n
←
N
i
7:
N
←
N
−
n
8:
for all
F lowDirection df
∈
n.outF low
()
do
9:
if
fd.getActivity
==
act
then
10:
actOk
←
true
Found the correct activity
11:
F lowData data
==
fd.get
(
msg
)
12:
if
data
=
null ∨ actOk ∨ fd.dir
==
tup
(
msg, act
)
.dir
then
13:
increaseByEW MA
(
data
)
14:
FD
active
←
FD
active
−
data
15:
msgOk
←
true
16:
if
actOk
∨
!
msgOk
∨
fd.dir
==
tup
(
msg, act
)
.dir
then
17:
fd
←
fd
+
FlowData
(
msg
)
Add a new
FlowData
to the arc
18:
msgOk
←
true
19:
found
←
actOk
∨
msgOk
20:
Adding the next set of nodes to the search list
21:
N ← n.getSuccessorNodes
()
22:
for all
F lowDatadata ∈ FD
active
do
23:
reduceByEW MA
(
data
)
24:
removeF lowData
(
cutoffV alue
)
if
!
found
then
remove rarely occurring
FlowData
.
6 Evaluation
We evaluate our approach based on the motivating scenario in Section 1.1. Specif-
ically, we are interested in the time it takes to learn an evolved message flow
given a fixed process model. In addition, we observe how the updated message
states and
FlowData
annotation affect activity recommendations. We simulate