Professional Documents
Culture Documents
Automatic User Support For Business Process Modeli
Automatic User Support For Business Process Modeli
net/publication/228367757
Article
CITATIONS READS
37 953
4 authors:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Andreas Oberweis on 20 May 2014.
1 Introduction
The main purpose of business process modeling is the representation and analy-
sis of alternative process designs by formal or semiformal process models. Many
modeling languages – most of them being based on textual programming lan-
guages or graphical notations such as Petri nets [20], EPCs [23] or BPMN [27] –
have been proposed for process modeling. Novel orchestration- and choreography
languages such as BPEL [1] focus on tracking and executing business processes
by business applications. To enable verification of BPEL [8] proposes a Petri
net semantics. Petri nets have been established as a suitable language for mo-
deling business processes with intuitive graphical notation. Furthermore, Petri
nets have a mathematical foundation, which enables simulation and analysis of
system behavior.
In this paper we will describe on-going work for autocompletion of Petri
net based business process models. Manual modeling of business processes is a
time-consuming task. Typos and structural modeling errors make it particularly
error prone to model business processes manually. Users can be assisted in mo-
deling business processes by providing an autocompletion function during the
modeling process. However, process element names might differ in syntax even
when they have the same meaning (homonyms) or one process can be modeled
in different ways even when utilizing the same modeling language. It is possible
that these process elements will not be suggested as fitting elements to provide
autocompletion.
To solve ambiguity issues caused by the use of different names for descri-
bing the same tasks a machine readable and interpretable format, which might
be used for machine reasoning, is required for Petri nets. Business processes
modeled with Petri nets can be translated into the Web Ontology Language
OWL [17], an unambiguous format which allows ontological reasoning. So-called
semantic business process models combine process modeling methods with se-
mantic technologies to achieve automatic processing of business process models
instead of manual processing. We will use a semantic description of Petri nets to
make it easier to find appropriate process templates (reference processes), which
can be proposed for autocompletion. During the modeling process, a recommen-
dation mechanism determines possible subsequent fragments of all templates by
computing similarities. If the system detects a high similarity between one ele-
ment of a template and a modeling element, then subsequent elements of this
element template are proposed for autocompletion. To ensure correct process
flow behavior the system has additionally to check properties such as deadlock-
freeness.
The structure of this paper is as follows. Firstly, we will recall the main no-
tions of Petri nets and a semantic description of Petri nets with OWL DL. In
Section 3 we will describe an approach for measuring similarity between semantic
business process models by utilizing syntactic-, linguistic- and structural simi-
larity measurements. To validate process behavior properties we will illustrate
analysis methods in Section 4. Modeler’s behavior can be observed and learned
with machine learning techniques, which we will briefly survey in Section 5.
Section 6 concludes the paper with an outlook on future research.
2 Foundations
Next subsection introduces Petri net notation and Petri net modeling of business
processes.
Petri nets are a graphical language and a formalism used to model business
processes and verify system behavior. Formally, a Petri net is a directed bipartite
graph with nodes and arcs. It can be described by the triple N = (P, T, F ),
where P is a set of places, T is a set of transitions (which is disjoint from P )
and F ⊆ (P × T ) ∪ (T × P ) is a flow relation. Elements of P are graphically
represented as circles, elements of T as boxes and elements of F as directed
arcs between places and transitions. A place p is an input place of a transition
t, if there exists a directed arc from p to t. A place p is an output place of a
transition t, if there exists a directed arc from t to p. The set of all input places
of a transition t is denoted by •t and is called preset. The set of all output places
is denoted by t• and is called postset.
Numerous Petri net variants have been proposed, which can be subsumed
in elementary or high-level Petri nets. In elementary Petri nets places contain
tokens, which represent anonymous objects. A transition t is enabled to change
the marking m of the net, if each place p in the preset contains at least one
token. If such a transition t occurs, then t consumes tokens from the preset and
inserts tokens in the postset. The occurrence sequence, which leads from m to
t
m0 is defined by m → m0 . A marking m0 is called reachable from m, if there
δ
exists an occurrence sequence from m to m0 (m → m0 ) with δ = t1 , t2 . . . tn .
For modeling system behavior or business processes with Petri nets we dis-
tinguish several process flow structures [26] as depicted in Figure 1. The flow
structure OR-split allows to model alternative branching. The two alternative
branches are again integrated by a so-called OR-join or a so-called AND-join
(synchronization). By the use of AND-split (concurrency) tokens are distributed
to two places.
The formal foundation of Petri nets allows to verify whether a modeled busi-
ness process meets certain properties such as deadlock-freeness. If a marking is
reached, which is not an intended final process state and which doesn’t enable
any transition, then the process is in a deadlock, as depicted in Figure 2.
subClass A1 v A2
intersection A1 u ... u An
union of A1 t ... t An
allValuesFrom ∀ P.A
someValuesFrom ∃ P.A
maxCardinality ≤ nP
minCardinality ≥ nP
In our Pr/T net ontology each Petri net element corresponds to an OWL
concept. P laces are described by the concept Place, transitions by Transition
and arcs by F romP lace (P × T ) and T oP lace(T × P ). For instance, the concept
PetriNet is defined by at least one transition, place and arc.
To the best of our knowledge, there exists no other approach that transforms
high-level Petri nets into OWL DL. In the next section we will explain how to
measure similarity between a pair of semantic business process model elements.
3 Measuring Similarity between Process Elements
However, each concept influences place names with different weights. There-
fore, we have determined different weights for the concepts as shown in Table
3. In business process models with a lot of places, attributes and transitions
weights play a less important role than in small processes with less process ele-
ments. The more instances are modeled in a SBPM the more extensive is the
context of instances. The processes modeled in this paper have only few places
and transitions3 . Furthermore, depending on the features the similarity mea-
sure might differ. To determine structural similarity between place names we
compute the syntactical similarity degree of names (measure for names is syn-
2
an english online lexical reference system, which provides synonym and hypernym
sets consisting of nouns, verbs, adjectives, and adverbs [18].
3
To make the business processes readable we did not assign values for attributes
tactical similarity) and the linguistic similarity degrees of their attributes, values
and subsequent transitions.
In the following section we will sketch a method for validating behavior pro-
perties of autocompleted business processes.
4 Analysis Methods for Petri nets
To check if a process model meets certain properties, several analyzing methods
have been proposed [25]. In our approach we utilize such methods to validate
that the insertion of the proposed process fragments does not cause deadlocks
and synchronization errors. Thus, our automatic user support includes more
than the recommendation of process fragments.
In the following we are focusing on validation of process properties by check-
ing if the autocompleted business process is deadlock free and without lack of
synchronization. While utilizing validation algorithms for Pr/T nets we are not
considering any inscriptions of places, transitions, or arcs. Instead we are fo-
cusing on the net structure of the modeled process by identifying all possible
flows based on instance subgraphs [22] (see Figure 5 where we have modeled the
instance subgraph for Figure 2). We assume, that the analysis of a specific Pr/T
net satisfies the following requirements: the Pr/T net has only one source place
and one sink place, every place p and every transition t is on the path between
the source and the sink [24]. Additionally, cycles in the net structure must be
regarded as single execution units.
6 Conclusion
In this paper we have presented on-going work for assisting users in business pro-
cesses modeling. Compared to manual process modeling we aim to improve the
reusability of business processes by an autocompletion mechanism. We propose
to use a recommendation system, which observes the user’s behavior and suggests
possible subsequent elements. Furthermore, the system facilitates validated pro-
cess properties of the automatically completed process to avoid deadlocks and
lacks of synchronization.
Modeling languages such as EPCs, BPMN or BPEL have no direct formal
foundations and thus do not enable analysis methods. Hence, if the process is
modeled with these languages the process to be automatically completed can
not be directly validated regarding deadlocks or lacks of synchronization.
Currently, we are developing an algorithm to automatically analyze hierar-
chical specifications of process elements and to detect errors in process models.
Processes with hierarchical specifications generally appear to be more intuitive
and easier to understand.
References