Towards Flexibility in Business Processes by Mining Process Patterns
and Process Instances
Andreas B
¨
ogl
1
, Christine Natschl
¨
ager
2
and Verena Geist
2
1
pascom Kommunikationssysteme GmbH, Arbing, Austria
2
Software Competence Center Hagenberg, Hagenberg, Austria
Keywords:
Business Process Flexibility, Dynamic Adaptation, Process Mining, Process Pattern Library.
Abstract:
The possibility to react to unexpected situations in business process execution is restricted since all possible
process flows must be specified at design-time. Thus, there is need for a flexible approach that reflects the way
in which human actors would handle discrepancies between real-life activities and their representation in busi-
ness process definitions. In this paper, we propose a novel approach that supports dynamic business processes
and is based on a framework comprising a process pattern library with domain-specific patterns and execution
logs for mining related process instances. Given a running business process and an unexpected situation, the
proposed approach provides a largely automatic adaptation of the business process by replacing failed activi-
ties with fitting process alternatives identified by exploring existing process knowledge. The feasibility of the
approach is demonstrated by applying the main steps to a business scenario taken from the industry domain.
1 INTRODUCTION
Flexible business processes are a key issue for modern
enterprises to operate efficiently in highly competitive
markets. While many Business Process Management
(BPM) methods and techniques have reached a rela-
tively high level of maturity, the ability to flexibly re-
act to changing circumstances and to support process
changes at runtime are still matters of concern.
Thus, flexibility and dynamic adaptation of busi-
ness processes are among the most active research ar-
eas with great potential (Reichert and Weber, 2012;
Dixon and Jones, 2011). Also the Industry 4.0 project
of the German government especially emphasizes the
demand for flexible processes in traditional industries.
In this paper, we discuss in detail a novel approach
and framework for flexible business processes that
adapt to changing environments by applying prede-
fined process patterns and evaluating former process
executions. The overall idea was previously presented
in (B
¨
ogl et al., 2014). We now extend the four basic
steps to retrieve alternatives, retrieve instances, select
The research reported in this paper has been partly sup-
ported by the Austrian Ministry for Transport, Innovation
and Technology, the Federal Ministry of Science, Research
and Economy, and the Province of Upper Austria in the
frame of the COMET center SCCH. The paper has been
written within the FFG project AdaBPM (number 842437).
& rank alternatives, and integrate alternative with a
further step for manual process adaptation and pro-
vide detailed specifications of these steps. In addi-
tion, we put special emphasis on the process pattern
library and dynamic adaptation of business processes,
following previous research conducted in similar do-
mains (B
¨
ogl et al., 2009; Natschl
¨
ager et al., 2014).
This paper is structured as follows: Section 2 in-
troduces preliminary definitions and presents a run-
ning example that relates to an actual ordering process
of a sand and fertilizer producer. Section 3 describes
how the process pattern library, a key component of
the envisaged framework, can be built from existing
knowledge. The main steps of the proposed approach
are presented in Section 4. Related work is studied in
Section 5 and Section 6 concludes the paper with an
overview of the main results and future work.
2 PRELIMINARIES AND
BUSINESS SCENARIO
The chosen business scenario relates to an ordering
process (see Figure 1) of a sand and fertilizer producer
in Upper Austria, called S&F company, and is used as
a running example throughout this paper. The com-
pany’s products are mainly used for cultivating sport
Bögl, A., Natschläger, C. and Geist, V.
Towards Flexibility in Business Processes by Mining Process Patterns and Process Instances.
DOI: 10.5220/0005652704690476
In Proceedings of the 4th International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2016), pages 469-476
ISBN: 978-989-758-168-7
Copyright
c
2016 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
469
Figure 1: Ordering Process of a Sand and Fertilizer Producer in Upper Austria.
fields and golf courses, and for producing other final
products in the cement industry. In most cases, these
products are delivered to various destinations in Eu-
rope by ship due to low transportation costs and the
fact that the S&F company is located at the Danube
river and has an own harbour. Other alternatives are,
e.g., delivery by train, by truck, or by aircraft.
Figure 1 illustrates a running process for deliv-
ering 1,500 t quartz sand to Plattling (Germany) by
ship. It starts with checking the corresponding order
after its reception. Depending on this decision, the
order is either confirmed and executed or declined.
In the running example, three activities were exe-
cuted so far and process activity Ship Product is ac-
tivated. Thereby, properties and corresponding data
objects are assigned concrete values. For example,
process activity BookCargoShip assigns data object
ShippingDestination the value Plattling(DE).
The cargo ship transports the sand to Deggendorf,
where a local forwarding agency carries out the trans-
port to Plattling, and finally an invoice is sent.
The key to the description of processes are pro-
cess activities and sequential orderings over these ac-
tivities. Given a finite set of data objects D and pro-
cess activity labels L, then a process activity a is a
structure (I, l, O), where I D denotes the set of in-
put data objects, O D denotes the set of output data
objects, and l L denotes the activity’s label.Thereby,
input(a) (or in(a) for short) refers to the input objects
of a, out put(a) (or out(a)) refers to the output data
objects of a, and label(a) refers to an activity’s label.
In addition, a hierarchical arrangement of activ-
ity labels is assumed. This hierarchy is a complete
lattice structure (L, R), where R L × L is the set
of all relationships between the activity labels in L.
Let (l
s
, l
a
) R, then l
s
l
a
denotes l
s
as label spe-
cialization of l
a
and conversely l
a
as label general-
ization (B
¨
ogl et al., 2015). To give an idea behind
label specialization and generalization, suppose l
a
=
“Deliver Order” and l
s
= “Deliver Order by Ship”.
Intuitively, l
s
represents a label specialization of l
a
be-
cause l
s
states a more expressive meaning than l
a
.
Input and output data objects that are associated
with process activity a = (I, l, O) may have assigned
state values, represented by the functions state
I
a
(d
1
)
and state
O
a
(d
2
) with d
1
I and d
2
O. For ex-
ample, input of process activity BookCargoShip
(a) in Figure 1 is given by in(a) = {Order}
and state
I
a
(Order) = {[approved]}, output of pro-
cess activity InstructForwardingAgency (b) is
given by out(b) = {Order} and state
O
b
(Order) =
{[delivered]}. Given a process activity a, its as-
signed input/output data objects and state values are
also referred to as initial/result context.
A sequential ordering over a given set of process
activities is referred to as execution trace. An execu-
tion trace is a pair (A, R), where A = {a
1
, . . . , a
n
} is
a finite set of process activities taken from the uni-
verse A, i.e. A A, and R A × A is a total order
over A that represents the sequence in which activi-
ties A are executed, denoted by t = ha
1
, . . . , a
n
i. The
set of process activities composing an execution trace
t = (A, R) is also denoted by activities(t) (or act(t)
for short), i.e. act(t) = A. The function sub(t) re-
turns for a given execution trace t the set of all sub-
execution traces. For instance, given t = ha
1
, a
2
, a
3
i,
then sub(t) = {hi, ha
1
i, ha
1
, a
2
i, . . . , ha
1
, a
2
, a
3
i}. A
process P is given by a finite set of execution traces,
i.e. P = {t
1
, . . . ,t
n
}. The set of process activities com-
posing the execution traces of a process P, denoted by
act(P), is given by act(P) =
S
tP
act(t).
A process instance either relates to a running pro-
cess or an already executed process. Process instances
are assumed to be associated with a process execution
log L , typically produced by some process aware in-
formation system (van der Aalst and Weijters, 2005).
MODELSWARD 2016 - 4th International Conference on Model-Driven Engineering and Software Development
470
3 THE PROCESS PATTERN
LIBRARY
In response to changing environments running pro-
cesses need to be adaptable. To give an idea, recon-
sider the running example in Figure 1 and suppose
that transportation by ship is currently not possible
due to low water flow of the Danube river. This unex-
pected situation X prevents the execution of process
activity Ship Product. In light of this unexpected
situation, a process analyst or a computer system is
engaged in defining an alternative process solution to
successfully deliver the product to Plattling. Thereby,
this alternative process solution substitutes the pro-
cess activities affected by unexpected situation X . In
the following, four substitution scenarios are outlined:
Scenario A reflects a 1 : 1 substitution. This
means, unexpected situation X affects exactly pro-
cess activity A in running process instance R and
X can only be resolved by substituting A with a
process solution consisting of process activity A
0
.
Scenario B reflects a n : 1 substitution. In this sce-
nario unexpected situation X affects multiple pro-
cess activities {A
1
, . . . , A
n
} in running process in-
stance R. The situation is resolved by substituting
{A
1
, . . . , A
n
} with a process solution that consists
of process activity A
0
, only.
Scenario C reflects a 1 : m substitution. As op-
posed to scenario A, an affected process activity A
is substituted with a process solution that consists
of multiple process activities {A
0
1
, . . . , A
0
m
}.
Scenario D reflects a n : m substitution. In this
case, unexpected situation X affects multiple pro-
cess activities {A
1
, . . . , A
n
} and X is resolved by
substituting {A
1
, . . . , A
n
} with another process so-
lution which also consists of multiple process ac-
tivities {A
0
1
, . . . , A
0
m
}.
According to these scenarios, the idea is to mine
existing process knowledge for process alternatives
and to capture the mining results in a process pattern
library P . The key purpose of a pattern library is to
serve as a container for potential (alternative) process
solutions for dealing with unexpected situations that
probably may arise during running process instances.
From a practical point of view, existing process
knowledge may be available in terms of a process in-
stance log and/or a repository of process models. In
particular, a finite set of processes P = {P
1
, . . . , P
n
}
is assumed, where each process is represented by a
set of execution traces, and further, P results from ex-
tracting the respective trace sets either from under-
lying process models or from an underlying process
execution log L. So, input for the proposed mining
approach is a set of processes P and output is a pat-
tern library P .
A pattern library P that results from mining a
given set of processes P is considered as a conceptual
hierarchical structure consisting of nodes and edges
similarly to the approaches presented in (Thom et al.,
2008; Malone et al., 1999). The nodes represent pro-
cess solutions or process patterns on the one side and
process activities on the other side. The edges repre-
sent relationships between the nodes. More precisely,
P is a structure (A, S , ico, iso) where A A is a set
of process activities, iso S × S A × A is the set of
all is specialization of relations between process so-
lutions S and process activities in A, and ico A × S
is the set of all is concretization of relations between
process activities A and process solutions S .
Thereby, isConcretizationOf (x, {a
1
, . . . , a
k
}) ex-
presses a relationship between a complex process ac-
tivity x and a set of activities {a
1
, . . . , a
k
}. The rela-
tionship means that {a
1
, . . . , a
k
} represents a substi-
tution for x. It is required that x is not a member of
{a
1
, . . . , a
k
} and |{a
1
, . . . , a
k
}| > 1. The purpose of
an isSpecializationOf relationship is twofold: (i) It
expresses a relationship between a pair of activities
(x, y), where y is said to be a specialization of x. An
activity y is a specialization of x if the label of y is a
specialization of the label of x; i.e., x can be substi-
tuted with y. (ii) It expresses a relationship between
a pair of process solutions (P
1
, P
2
), where P
2
is a spe-
cialization of P
1
; i.e., P
1
can be substituted with P
2
.
Notably, P
1
and P
2
represent execution traces. Then,
P
2
is a specialization of P
1
if P
1
is a sub-trace of P
2
.
In light of the running example, complex process
activity Deliver Order (A) in Figure 2 is the root
with four derived concrete process solutions speci-
fying delivery by ship (S1), by train (S2), by truck
(S3), and by aircraft (S4). These process solutions
are provided by corresponding process schema vari-
ants (called VShip, VTrain, VTruck, and VAir). Two
further concrete process solutions for transportation
outside the EU (S2.1) and of hazardous goods (S3.1)
have been defined manually and refine standard deliv-
ery by train and truck.
4 MINING PROCESS INSTANCES
The overall approach to support flexible business pro-
cesses comprises the five steps (1) Retrieve Alterna-
tives, (2) Retrieve Instances, (3) Select and Rank Al-
ternatives, (4) Adapt Alternative (optional), and fi-
nally (5) Integrate Alternative as shown in Figure 3.
Towards Flexibility in Business Processes by Mining Process Patterns and Process Instances
471
Figure 2: Process Pattern Library P .
Figure 3: Overall Approach.
4.1 Retrieve Alternatives and Instances
The retrieve alternatives step addresses the identifica-
tion of process solutions S
1
, . . . , S
n
S in the process
pattern library P to successfully handle an unexpected
situation.Thus, a complex process activity A in P ,
which covers the context of process activities affected
by X, needs to be identified. Then all derived process
solutions and associated specializations indicate po-
tential candidates to deal with X, apart from the child
nodes which include one or multiple failed activities
and further specializations of these child nodes.
The subsequent retrieve instances determines all
process instances for the identified potential candi-
dates. The main idea is to exploit process knowl-
edge implicitly captured by process execution log L.
The execution log provides process instance specific
knowledge given by the assignment of process exe-
cution data to input and output data objects. This
knowledge is then used by the subsequent steps se-
lect and rank alternatives. To make this knowledge
available in realm of decision making, function γ(S)
is assumed, which returns for a given pattern solution
S a set of associated process instances I in L .
In the running example, the initial context of the
process activities affected by X is given by input
data object Order[approved] and the result context
is given by data output object Order[delivered].
These input and output data objects correspond to the
input and output data objects of the complex process
activity Deliver Order in the pattern library (see
Figure 2). Then, process solutions S2, S2.1, S3, S3.1,
and S4 represent potential candidates to deal with X.
An extract of the process instance log comprising
30 process executions is presented in Table 1. For ev-
ery executed process instance, the instantiated process
schema variant, the applied concrete process solution
of complex process activity Deliver Order, and the
instance-specific data is provided. In sum, 20 process
instances were supposed to deliver by ship (instanti-
ated process schema VShip) of which 15 were in fact
delivered by ship. In the other ve cases, the process
instance was adapted at runtime; three times a train
and two times trucks were taken instead. In addition,
process schema VTrain was instantiated three times
and VTruck four times (no instance was adapted). Fi-
nally, process schema VAir was executed three times
(with small product samples of 1-3 kg).
MODELSWARD 2016 - 4th International Conference on Model-Driven Engineering and Software Development
472
Table 1: Extract of Process Instance Log.
Nr. Schema S Instance Data
1 VShip S1 {Quartz S., Plattling, 1,500 t}
2 VShip S1 {Coarse S., Wien, 2,000 t}
3 VTrain S2 {Quartz S., Berlin, 1,700 t}
4 VShip S1 {Fine S., Plattling, 2,000 t}
5 VShip S1 {Quartz S., Passau, 1,000 t}
6 VAir S4 {Quartz S., Moscow, 1 kg}
7 VShip S3 {Quartz S., Passau, 800 t}
8 VShip S2 {Quartz S., Plattling, 1,500 t}
9 VShip S1 {Fine S., Regensburg, 1,500 t}
10 VAir S4 {Fine S., Berlin, 3 kg}
11 VShip S1 {Fine S., M
¨
unchen, 1,500 t}
12 VShip S1 {Quartz S., M
¨
unchen, 1,500 t}
13 VShip S1 {Fine S., Passau, 1,500 t}
14 VTruck S3 {Quartz S., Salzburg, 700 t}
15 VShip S1 {Fine S., Wiesbaden, 1,500 t}
16 VAir S4 {Fine S., Paris, 2 kg}
17 VShip S2 {Quartz S., M
¨
unchen, 2,000 t}
18 VTruck S3.1 {Fertilizer, Passau, 200 t}
19 VShip S1 {Fine S., Regensburg, 900 t}
20 VShip S3 {Quartz S., Plattling, 1,500 t}
21 VShip S1 {Fine S., Plattling, 1,500 t}
22 VTrain S2.1 {Quartz S., Moscow, 1,000 t}
23 VShip S1 {Fine S., Wiesbaden, 1,500 t}
24 VTrain S2 {Quartz S., Plattling, 1,500 t}
25 VShip S1 {Fine S., Plattling, 1,500 t}
26 VTruck S3.1 {Fertilizer, Graz, 500 t}
27 VShip S1 {Quartz S., M
¨
unchen, 1,400 t}
28 VShip S2 {Fine S., Plattling, 1,500 t}
29 VTruck S3 {Fine S., Passau, 400 t}
30 VShip S1 {Quartz S., Passau, 1,500 t}
4.2 Select and Rank Alternatives
The select alternatives step reduces the number of
possible alternatives to consistent alternatives, satis-
fying the constraints imposed by the context of R.
For a particular process, semantic constraints may be
related to various dependencies, including time con-
straints that may affect the choice of transport mode
for a particular delivery and resource constraints that
may need to ensure that the actual charge quantity
must not exceed a permitted amount (e.g. using an air-
craft). Further semantic constraints may be given by
location (e.g. actual start and destination points), envi-
ronment (e.g. existence of an airport at the respective
locations), and the overall delivery costs.
Constraints can either be defined manually in the
process schema or identified by mining existing pro-
cess instances. The proposed approach distinguishes
between hard and soft semantic constraints (Sadiq
et al., 2005; Pesic et al., 2007):
hard constraints are constraints that must always
hold, i.e. they exhibit the same behaviour in all
process instances,
soft constraints eventually hold, i.e. they represent
guidelines, only mapping to some instances.
In the running example, hard constraints are on
the one hand given by all order-related data like prod-
uct type, destination, and delivery quantity and on the
other hand by the transportation means in combina-
tion with the environment. To illustrate the identifica-
tion of constraints consider Figure 4. For all alterna-
tive process solutions, applied instance data are sum-
marized within soft constraints. For example, it is a
soft constraint that an aircraft only transports quartz
and fine sand (coarse sand might be transported as
well). Similarly, it might be possible to send a prod-
uct sample with 4 kg (violation of soft constraint).
However, for such implications it is important that
the process instance log is of sufficient size and that
the ranges for soft constraints are based on a nor-
mal curve of distribution. Evidently, the delivery of
1,500 t quartz sand exceeds the capacity of a standard
aircraft (violation of hard constraint), so this process
solution can be removed from the list of remaining
potential alternatives: S2, S2.1, S3, and S3.1.
The rank alternatives step computes a ranking
over consistent alternatives. There are different strate-
gies to provide such a ranking by assessing alterna-
tives on the basis of relevant criteria (Zimmermann
and Gutsche, 1991; Tzeng and Huang, 2011; Behza-
dian et al., 2012). In addition, also a log analysis can
contribute to evaluate the suitability of a process al-
ternative, e.g., by relating outcome and soft constraint
adherence (Ly et al., 2012). A convenient strategy
may also relate to taking the frequency of process in-
stances associated with a consistent alternative into
account. Another strategy computes some similar-
ity measures (e.g. based on weights or preference)
between the instances and running instance R. The
higher the frequency or similarity respectively, the
more relevant becomes a process alternative S.
Referring to the running example, all soft con-
straint violations are considered first. According to
the process instance log, S3.1 was only used to trans-
port fertilizers. Although it might be possible to
also transport sand with a special truck for hazardous
goods, it is not recommended. Similarly, process so-
lution S2.1 was only used for destinations outside the
EU, but never for Plattling. Thus, both process so-
lutions are ranked ex aequo behind other alternatives
(3
rd
rank). The remaining two process solutions S2
and S3 fulfil all soft constraints and must be ranked
based on frequency and similarity regarding instance
data. In the extract of the process instance log, the
products were more often delivered by train than by
truck and the train was more frequently delivering to
Plattling, thus, S2 is ranked before S3.
Towards Flexibility in Business Processes by Mining Process Patterns and Process Instances
473
Figure 4: Constraints of Alternative Process Solutions.
4.3 Adapt and Integrate Alternative
The proposed framework also provides the (optional)
adapt alternative step if manual adaptation is explic-
itly permitted. An executing actor with sufficient per-
mission can either select an alternative process solu-
tion S from the ranked list and manually adapt it re-
sulting in S
0
, or define a completely new process so-
lution S
if, e.g., no other alternative fits or if the pre-
vious steps result in an empty set of possible alterna-
tives. In both cases, possible adaptations are given
by the context of the process activities affected by
X, which is covered by complex process activity A.
Available change operations are then to insert a new
activity, and to move, delete, or modify existing ac-
tivities (in accordance with the four change patterns
of the Provop approach (Hallerbach et al., 2010)). In
addition, corresponding constraints must be defined
that specify the limitations of the new process solu-
tion. Manual adaptation is further restricted by the in-
put and output data objects defined in A, which every
process solution S
0
and S
must consider. In addition,
manual adaptation leads to the creation of a new entry
in the process execution log L that comprises S
0
or S
on the one hand and inclusion of the adapted process
solution in the process pattern library P on the other
hand, thereby generating new knowledge.
For the process instance in our running example,
no further process solutions are required. However,
for previous orders two process solutions S2.1 and
S3.1 were defined manually. The integrate alterna-
tive step automatically integrates either a new process
solution or the top-ranked alternative in running pro-
cess R by replacing the process activities affected by
X. (Another possibility is to let domain experts vali-
date the ranked alternatives, so they still have the op-
portunity to integrate an alternative other than a top-
ranked alternative.) This may require a semantic roll-
back or compensation of already executed activities
of the failed process solution, e.g., an executed activ-
ity E must be rolled back if the execution of E led to
a state change that is not needed by the selected alter-
native (Reichert and Weber, 2012).
Let us assume that for every possibly failing ac-
tivity a compensation handler was defined in the
process schema. Before replacing the failed pro-
cess solution Deliver Order by Ship with the top-
ranked alternative S2, the already performed activity
Book Cargo Ship must be rolled back, i.e. the ship
must be cancelled. Then, process solution S2 is exe-
cuted, resulting in a successful termination of R and a
new entry in the execution log.
5 RELATED WORK
Variability and flexibility both support business pro-
cess adaptations; flexibility is concerned with run-
time decisions, while variability is concerned with
design- and customization-time decisions (la Rosa
et al., 2013). Regarding dynamic business process
modelling languages, it is distinguished between con-
figurable and adaptable approaches. Configurable
approaches, such as Configurable YAWL and EPCs,
are useful to adapt, e.g., a domain-specific refer-
ence model to a concrete organization but cannot
be used for unexpected situations since the process
flow must be configured at design-time. Adaptable
approaches, in contrast, only require a base pro-
cess model, which comprises the standard process
flow and is adapted at runtime through structural
model adaptations based on change patterns. This
approach is implemented, e.g., by Provop (Haller-
bach et al., 2010) and vBPMN (Doehring and Zim-
mermann, 2011). Both solutions provide rather ba-
sic change operations and patterns respectively, and
MODELSWARD 2016 - 4th International Conference on Model-Driven Engineering and Software Development
474
they do not support the selection of alternative activ-
ities that fulfil given preconditions and result in the
desired effect. Another advantage of our approach is
that it does not affect the underlying notation, i.e. no
adjustment points or adaptive segments are required.
In (Adams et al., 2007), exlets are presented as
an extensible repertoire of self-contained exception-
handling processes for enabling dynamic flexibility in
workflows using ripple down rules. The authors fur-
ther introduce generic handling primitives in the form
of patterns characterized by the exception type (Rus-
sell et al., 2006). In contrast, the framework proposed
in this work captures and maintains domain-specific
process patterns by a pattern library, which provides
for a hierarchical arrangement of complex process ac-
tivities and associated process solutions. The hier-
archical arrangement reflects specialization and con-
cretisation relations between the elements in the pat-
tern library, which improves intelligibility.
Relevant work regarding integrated compliance of se-
mantic constraints in flexible process management
systems is given in (Ly et al., 2012; Sadiq et al., 2005;
Pesic et al., 2007). In (Meseguer et al., 2006), the au-
thors give a comprehensive literature review on dif-
ferent formalisms of soft constraints and discuss how
they can be dealt with in general solving methods.
Related research on optimal decision making is
addressed, e.g., in the mathematical domain, where
a variety of problems involving planning, resource
allocation, and selecting the optimal solution have
been studied. Of particular interest are the resource-
constrained project scheduling, dynamic optimiza-
tion, and constrained optimization problems (Cruz
et al., 2011; Hartmann and Briskorn, 2010), as well
as multi-objective optimization (Deb, 2014).
In the business process domain, related research
is available concerning the recording and analysis
of process data to improve business process effi-
ciency and flexibility, typically based on goals or con-
straints (e.g. in the sub-field of business process min-
ing (van der Aalst, 2011) or business process intel-
ligence (Grigori et al., 2004)). Process mining has
become a major topic in recent years. In particular,
existing work focuses on reconstructing meaningful
process models from process instances given by pro-
cess execution logs (van der Aalst et al., 2003; Wen
et al., 2006; van der Aalst, 2011). In contrast to this
application, the proposed approach exploits process
instances to identify constraints in the context of a
running process instance.
The proposed approach further relates to case-
based reasoning (CBR) systems (Schulze, 2001;
Krampe and Lusti, 1997). CBR-systems are typi-
cally used to support the design of complex business
processes by finding a similar case in a case library
and by subsequent adaptation of a retrieved case to
context-specific process needs. The retrieval of rele-
vant cases is realized by sophisticated graph matching
algorithms on a process schema level which do not
take process knowledge in process execution logs into
account. We, thus, argue that the combination of pro-
cess schema information in terms of process patterns
joined with knowledge implicitly captured in process
execution logs represents a major contribution in im-
proving selection and ranking of process alternatives
for successfully dealing with unexpected situations.
6 CONCLUSION
A key issue in realizing our framework for dynamic
business processes represents the population of a pro-
cess pattern library such that reuse of alternative pro-
cess solutions becomes feasible. To address this is-
sue, the presented mining approach exploits existing
process knowledge available in process models and
process execution logs. Advantages of the proposed
approach are (i) the possibility to flexibly react to un-
expected situations by specifying alternatives at run-
time, (ii) a hierarchical structure of process patterns,
and (iii) a more intelligible business process, since
defining a variety of possible alternatives for every
activity (also for very unlikely exceptions) makes a
process schema unreadable.
Its feasibility is demonstrated by applying the
main steps to a business scenario taken from the in-
dustry domain. An ordering process instance was
started but could not successfully terminate due to
an unexpected situation. Thus, an alternative process
solution was identified at runtime, based on domain-
specific process patterns and an analysis of related
process instances, and automatically integrated in the
running process instance.
The work in this paper further motivated research
in the domain of resource utilization. Initial ideas for
an approach to optimize resources by combining ac-
tivities across running process instances and by split-
ting activities to use different transportation means
have already been suggested in (Natschl
¨
ager et al.,
2014; Natschl
¨
ager et al., 2015). Next research goals
are to also retrieve and consider external knowledge
for the selection and ranking of alternatives, e.g. con-
sidering current weather information provided by an
appropriate service can further restrict the number of
possible delivery options, and to prototypically im-
plement parts of our framework to facilitate an auto-
mated analysis of steel production processes.
Towards Flexibility in Business Processes by Mining Process Patterns and Process Instances
475
REFERENCES
Adams, M., ter Hofstede, A., van der Aalst, W., and Ed-
mond, D. (2007). Dynamic, extensible and context-
aware exception handling for workflows. In OTM’07,
pages 95–112. Springer.
Behzadian, M., Khanmohammadi Otaghsara, S., Yazdani,
M., and Ignatius, J. (2012). A state-of the-art survey
of TOPSIS applications. Expert Systems with Appli-
cations, 39(17):13051–13069.
B
¨
ogl, A., Karlinger, M., Sch
¨
utz, C., Schrefl, M., and
Pomberger, G. (2015). Exploiting semantic activity
labels to facilitate consistent specialization of abstract
process activities. In SOFSEM 2015: Theory and
Practice of Computer Science, pages 475–485.
B
¨
ogl, A., Natschl
¨
ager, C., Karlinger, M., and Schrefl, M.
(2014). Exploiting process patterns and process in-
stances to support adaptability of dynamic business
processes. In DEXA 2014, pages 173–177. CPS.
B
¨
ogl, A., Schrefl, M., Pomberger, G., and Weber, N. (2009).
Automated construction of process goal trees from
EPC-models to facilitate extraction of process pat-
terns. In ICEIS 2009, pages 427–442.
Cruz, C., Gonz
´
alez, J., and Pelta, D. (2011). Optimiza-
tion in dynamic environments: a survey on problems,
methods and measures. Soft Computing, 15(7):1427–
1448.
Deb, K. (2014). Multi-objective optimization. In Search
Methodologies, pages 403–449. Springer US.
Dixon, J. and Jones, T. (2011). Hype cycle for business
process management. Technical Report G00214214,
Gartner.
Doehring, M. and Zimmermann, B. (2011). vBPMN:
Event-aware workflow variants by weaving BPMN2
and business rules. In Enterprise, Business-Process
and Information Systems Modeling, volume 81 of
LNBIP, pages 332–341. Springer.
Grigori, D., Casati, F., Castellanos, M., Dayal, U., Sayal,
M., and Shan, M.-C. (2004). Business process intelli-
gence. Computers in Industry, 53(3):321–343.
Hallerbach, A., Bauer, T., and Reichert, M. (2010). Cap-
turing variability in business process models: The
Provop approach. Journal of Software Maintenance
and Evolution: Research and Practice, 22(6 &
7):519–546.
Hartmann, S. and Briskorn, D. (2010). A survey of variants
and extensions of the resource-constrained project
scheduling problem. EJOR, 207(1):1–14.
Krampe, D. and Lusti, M. (1997). Case based reasoning for
information system design. In ICCBR, pages 63–73.
la Rosa, M., van der Aalst, W., Dumas, M., and Milani,
F. (2013). Business process variability modeling: A
survey. Technical report, QUT.
Ly, L. T., Rinderle-Ma, S., G
¨
oser, K., and Dadam, P. (2012).
On enabling integrated process compliance with se-
mantic constraints in process management systems.
Information Systems Frontiers, 14(2):195–219.
Malone, T., Crowston, K., Lee, J., Pentland, B., Dellarocas,
C., Wyner, G., Quimby, J., Osborn, C., Bernstein, A.,
Klein, M., and O’Donnell, E. (1999). Towards a hand-
book of organisational processes. Magement Science,
45(3):425–443.
Meseguer, P., Rossi, F., and Schiex, T. (2006). Soft con-
straints. In Rossi, F., Van Beek, P., and Walsh, T.,
editors, Handbook of constraint programming, pages
281–328. Elsevier.
Natschl
¨
ager, C., B
¨
ogl, A., and Geist, V. (2014). Optimiz-
ing resource utilization by combining running busi-
ness process instances. In ICSOC 2014 workshops
and satellite events, LNCS, pages 120–126. Springer.
Natschl
¨
ager, C., B
¨
ogl, A., Geist, V., and Biro, M. (2015).
Optimizing resource utilization by combining activi-
ties across process instances. In European & Asian
System, Software & Service Process Improvement &
Innovation, LNCS, pages 155–167. Springer.
Pesic, M., Schonenberg, M. H., Sidorova, N., and Van
Der Aalst, W. M. P. (2007). Constraint-based work-
flow models: Change made easy. In OTM’07, pages
77–94. Springer.
Reichert, M. and Weber, B. (2012). Enabling Flexibility
in Process-Aware Information Systems Challenges,
Methods, Technologies. Springer.
Russell, N., van der Aalst, W., and ter Hofstede, A. (2006).
Workflow exception patterns. In CAiSE’06, pages
288–302. Springer.
Sadiq, S. W., Orlowska, M. E., and Sadiq, W. (2005). Spec-
ification and validation of process constraints for flex-
ible workflows. Inf. Syst., 30(5):349–378.
Schulze, D. (2001). Grundlagen der wissensbasierten Kon-
struktion von Modellen betrieblicher Systeme. Shaker
Verlag.
Thom, L. H., Reichert, M., Chiao, C. M., Iochpe, C., and
Hess, G. N. (2008). Inventing less, reusing more, and
adding intelligence to business process modeling. In
DEXA, pages 837–850.
Tzeng, G.-H. and Huang, J.-J. (2011). Multiple attribute de-
cision making: methods and applications. CRC Press.
van der Aalst, W. M. and Weijters, A. J. M. M. (2005). Pro-
cess Aware Information Systems: Bridging People and
Software Through Process Technology, chapter Pro-
cess Mining. Wiley-Interscience.
van der Aalst, W. M. P. (2011). Process Mining: Discov-
ery, Conformance and Enhancement of Business Pro-
cesses. Springer Publishing Company.
van der Aalst, W. M. P., van Dongena, B. F., Herbst, J.,
Marustera, L., Schimm, G., and Weijters, A. J. M. M.
(2003). Workflow mining: A survey of issues and ap-
proaches. Data & Knowledge Eng., 47:237–267.
Wen, L., Wang, J., and Sun, J.-G. (2006). Detecting implicit
dependencies between tasks from event logs. In AP-
Web, volume 3841 of LNCS, pages 591–603. Springer.
Zimmermann, H.-J. and Gutsche, L. (1991). Multi-Criteria
Analyse. Springer.
MODELSWARD 2016 - 4th International Conference on Model-Driven Engineering and Software Development
476