project with the focus to formally describe the BPMN
standard, we dealt with those inconsistency problems
and improved the meta-model structure to improve
reusability. Those problems appear in both, the ver-
tical refinements on one hand and the horizontal ex-
tensions to BPMN on the other. When formalizing
the BPMN meta-model, duplicates appeared to be the
reason for many of the inconsistencies in the existing
standard. Thus, we try to extract the common behav-
ior patterns, resulting in a revised, more compact, and
graspable meta-model.
This work is based on process diagram as de-
scribed in the BPMN 2.0 specification. This particular
notation is chosen since it is popular between process
designers and modelers and is the most commonly
used graphical representation for business processes
(Kubovy et al., 2012). We believe that the usability of
our outputs will be supported by the fact that the po-
tential reader does not have to work him/her-self into
a completely new process modeling notation.
We start with the BPMN modeling practices,
which contain among others gateway pairing or re-
striction of sequence flows on one flow node side
(Freund et al., 2010). This may improvereadability of
simple diagrams, increase clearness and reduce ambi-
guity of even complex diagrams, but increases com-
plexity of the diagrams in general since the amount of
flow nodes in a process diagram dramatically bursts.
By simplifying the meta-model, we achieve an un-
ambiguous, clear, correct and more graspable meta-
model, which is important for conformance and de-
ployment. But the complexity growth of such process
models may be harder to maintain during develop-
ment and lower sustainability of processes based on
such a meta-model.
One possible solution is to introduce containers
(for the use in graphical notations) or macros (for the
use in formal descriptions). We can demonstrate this,
e.g, by restricting all flow nodes except gateways to
only one incoming and one outgoing sequence flow.
Handling the splitting and merging behavior will then
remain only in one place, the gateway. Still, during
the modeling of a process diagram we will not want
to place a gateway in front or after every flow node
merging or splitting more sequence flows. Thus, con-
tainers may be introduced to model extended model-
ing elements. Such containers will then hold multiple
elements from the meta-model and establish a com-
plex element keeping the model clean from problems,
e.g., duplicate definitions, but enables the advantages
of simple or basic (read small and graspable) model-
ing elements. This way we may concentrate on the
essential purpose of the different flow node types and
compose the complex flow elements, defined in the
Figure 1: A BPMN activity composed using a container
with two simple gateways and one simple activity.
BPMN standard using such simple flow elements. An
example of a BPMN activity as a container using a
simple activity and two simple gateways is depicted in
figure 1). Here we define a Simple Activity limited to
exactly one incoming and one outgoing sequence flow
with no merging nor splitting behavior. The possibil-
ity of multiple incoming or outgoing sequence flows,
as described in the BPMN 2.0 standard, is enabled
with the two gateways in figure 1. The first is a simple
exclusive merge gateway, allowing only to merge the
flow using XOR-Join and the second is simple par-
allel split gateway allowing only to split the flow to
parallel paths. In the BPMN 2.0 standard both, the ac-
tivity and the exclusive gateway, define the exclusive
behavior and this leads to duplication in the standard
and may also lead to duplication in the implementa-
tion of a workflow engine. Similarly for parallel split
behavior of activity and parallel gateway. We identify
such behaviors, which can be extracted and defined
separately. We compose the complex flow elements
using such behaviors. An advantage of this approach
will be demonstrated by example in section 6 by ex-
tending the BPMN 2.0 meta-model with a sole exclu-
sive gateway.
3 ENABLING TOKEN SET
A token set is a set of tokens of the same instance,
from distinct incoming sequence flows of one flow
node. This set may potentially fire the given flow
node. However, this has to be decided by a fire con-
dition we will discuss later in this paper. We use
enablingTokenSets
shown in figure 2 to return sets
of such token sets. In every token set all tokens have
to belong to one instance. No two tokens residing in
the same sequence flow can be present in the same to-
ken set. For example, there will be a flow node with
three incoming sequence flows SF
1
, SF
2
and SF
3
on
which tokens from two different instances, I
A
and I
B
,
will reside. The token distribution is the following:
sequence flow SF
1
contains two tokens of instance I
A
and one token of instance I
B
, sequence flow SF
2
con-
tains one token of each instance and sequence flow
ICEIS2014-16thInternationalConferenceonEnterpriseInformationSystems
264