Information Technology Reference
In-Depth Information
'Update GBA Data'
and
'Send Notifications'
show different behavioural con-
straints in the models in Fig. 1. To consider such differences, we approach the
aforementioned questions based on a set algebra for behavioural profiles. Be-
havioural profiles are a behavioural abstraction that focusses on order constraints
and is insensitive to causal constraints between activities, such as skipping an
activity. Fig. 1 illustrates that such differences are often observed among pro-
cess variants due to additional process entries and exits. Behavioural profiles
have been found to provide a suitable abstraction to reason about consistency
of process variants [16].
2.2 Formal Model
We use a notion of a process model that is based on a graph containing activity
nodes and control nodes. It captures the commonalities of process description
languages. For illustration purposes, we use a subset of BPMN and EPCs.
Definition 1. (Process Model)
A
process model
is a tuple
P
=(
A, s, e, C, F, T
)
where:
◦
A
is a finite non-empty set of activity nodes,
◦
C
is a finite set of control nodes,
◦
N
=
A
∪
C
is a finite set of nodes with
A
∩
C
=
∅
,
◦
F
⊆
N
×
N
is the flow relation, such that
(
N, F
)
is a connected graph,
n
∈
(
n
,n
)
n
∈
(
n, n
)
◦•
n
=
{
N
|
∈
F
}
and
n
•
=
{
N
|
∈
F
}
denote direct pre-
decessors and successors, we require
∀
a
∈
A
:
|•
a
|≤
1
∧|
a
•|≤
1
,
◦
s
∈
A
is the only start node, such that
•
s
=
∅
,
◦
e
∈
A
is the only end node, such that
e
•
∅
=
,
◦
T
:
C →{and, xor}
associates each control node with a type.
The start and end activity nodes are assumed to carry no semantic meaning
but indicate initialisation and termination of a process. Refactoring may be
applied to arrive at these start and end activity nodes [22]. We assume trace
semantics for process models. Execution semantics of a process model is defined
by a translation into a Petri net following on common formalisations, cf., [23].
As our notion of a process model comprises a dedicated start and end activity
nodes, the resulting Petri net is a workflow net (WF-net) [24]. All control nodes
are of type
and
or
xor
, such that the WF-net is free-choice [24]. The translation
into WF-nets defines the behaviour of a process model
P
=(
A, s, e, C, F, T
),
which is captured by a set of
traces
T
P
. It comprises a set of lists of the form
A
∗
, which represent the execution order of activities.
s
·
2.3 Behavioural Profiles
A behavioural profile captures behavioural characteristics of a process model by
three relations between pairs of activity nodes. These relations are based on the
notion of
weak order
. Two activities of a process model are in weak order, if
there exists a trace in which one activity occurs after the other. Note that we
require only the
existence
of such a trace.