<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Scalable Dynamic Business Process Discovery with the Constructs Competition Miner</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>David Redlich</string-name>
          <email>david.redlich@sap.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Thomas Molka</string-name>
          <email>thomas.molka@sap.com</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wasif Gilani</string-name>
          <email>wasif.gilani@sap.com</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gordon Blair</string-name>
          <email>gordon@comp.lancs.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Awais Rashid</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Lancaster University</institution>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>SAP Research Center Belfast</institution>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University of Manchester</institution>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Since the environment for businesses is becoming more competitive by the day, business organizations have to be more adaptive to environmental changes and are constantly in a process of optimization. Fundamental parts of these organizations are their business processes. Discovering and understanding the actual execution ow of the processes deployed in organizations is an important enabler for the management, analysis, and optimization of both, the processes and the business. This has become increasingly di cult since business processes are now often dynamically changing and may produce hundreds of events per second. The basis for this paper is the Constructs Competition Miner (CCM): A divide-and-conquer algorithm which discovers block-structured processes from event logs possibly consisting of exceptional behaviour. In this paper we propose a set of modi cations for the CCM to enable scalable dynamic business process discovery of a run-time process model from a stream of events. We describe the di erent modi cations and carry out an evaluation, investigating the behaviour of the algorithm on event streams of dynamically changing processes.</p>
      </abstract>
      <kwd-group>
        <kwd>run-time models</kwd>
        <kwd>business process management</kwd>
        <kwd>process mining</kwd>
        <kwd>complex event processing</kwd>
        <kwd>event streaming</kwd>
        <kwd>big data</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        The success of modern organizations has become increasingly dependent on the
e ciency and performance of their employed business processes (BPs). These
processes dictate the execution order of singular tasks to achieve certain business
goals and hence represent fundamental parts of most organizations. In the
context of business process management, the recent emergence of Big Data yields
new challenges, e.g. more analytical possibilities but also additional run-time
constraints. An important discipline in this area is Process Discovery: It is
concerned with deriving process-related information from event logs and, thus,
enabling the business analyst to extract and understand the actual behaviour of
a business process. Even though they are now increasingly used in commercial
settings, many of the developed process discovery algorithms were designed to
work in a static fashion, e.g. as provided by the ProM framework [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], but are
not easily applicable for processing real-time event streams. Additionally, the
emergence of Big Data results in a new set of challenges for process discovery on
event streams, for instance [
        <xref ref-type="bibr" rid="ref11 ref16">11, 16</xref>
        ]: (1) diversity of event formats from di
erent sources, (2) high event frequency (e.g. thousands of events per second), and
(3) less rigid processes (e.g. BPs found on the operational level of e-Health and
security use-cases are usually subjected to frequent changes).
      </p>
      <p>
        With the focus on addressing the latter two of these challenges, we propose
in this paper modi cations for the Constructs Competition Miner (CCM) [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
to enable Scalable Dynamic Process Discovery as proposed in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. The CCM
is a process discovery algorithm that follows a divide-and-conquer approach to
directly mine a block-structured process model which consists of common
BPdomain constructs and represents the main behaviour of the process. This is
achieved by calculating global relations between activities and letting di erent
constructs compete with each other for the most suitable solution from top to
bottom using "soft" constraints and behaviour approximations. The CCM was
designed to deal with noise and not-supported behaviour. To apply the CCM on
event streams the algorithm was split up into two individually operating parts:
1. Run-time footprint calculation, i.e. the current footprint1, which
represents the abstract "state" of the system, is updated with occurrence of each
event. Since every occurring event constitutes a system state transition, the
algorithmic execution-time needs to be kept to a minimum.
2. Scheduled footprint interpretation, i.e. from the footprint the current
business process is discovered in a scheduled, reoccurring fashion. Since this
part is executed in a di erent lifecycle it has less execution-time constraints.
In this step the abstract "computer-centric" footprint is transformed into a
"human-centric" business process representation.
      </p>
      <p>The remainder of this paper provides essential background information
(Section 2), a discussion of related work (Section 3), a summarized description of the
original CCM (Section 4), the modi cations that were carried out on top of the
CCM to enable Scalable Dynamic Process Discovery (Section 5), an evaluation
of the behaviour of the resulting algorithm for event streams of dynamically
changing processes (Section 6), and an outlook of future work (Section 7).</p>
    </sec>
    <sec id="sec-2">
      <title>2 Background</title>
      <p>
        Business Processes are an integral part of modern organizations, describing the
set of activities that need to be performed, their order of execution, and the
entities that execute them. Prominent BP examples are Order-to-Cash or
Procureto-Pay. According to Ko et al. BPs are de ned as "...a series or network of
valueadded activities, performed by their relevant roles or collaborators, to purposefully
achieve the common business goal" [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. A BP is usually described by a process
model conforming to a business process standard, e.g. Business Process Model
and Notation (BPMN) [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], or Yet Another Work ow Language (YAWL) [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
In this paper, we will focus on business processes consisting of a set of common
1 footprint is a term used in the process discovery domain, abstractly representing
existent "behaviour" of a log, e.g. activity "a" is followed by activity "b"
control- ow elements, supported by most of the existing BP standards: start and
end events, activities (i.e. process steps), parallel gateways (AND-Split/Join),
and exclusive gateways (XOR-Split/Join) (see [
        <xref ref-type="bibr" rid="ref13 ref9">9, 13</xref>
        ]). In Figure 1 an example
process involving all the introduced elements is displayed. Formally, we de ne a
business process model as follows [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]:
De nition 1 A business process model is a tupel BP = (A; S; J; Es; Ee; C)
where A is a nite set of activities, S a nite set of splits, J a nite set of joins,
Es a nite set of start events, Ee a nite set of end events, and C F F the
path connection relation, with F = A [ S [ J [ Es [ Ee, such that
{ C = f(c1; c2) 2 F F j c1 6= c2 ^ c1 2= Ee ^ c2 2= Esg,
{ 8a 2 A [ J [ Es : jf(a; b) 2 C j b 2 F gj = 1,
{ 8a 2 A [ S [ Ee : jf(b; a) 2 C j b 2 F gj = 1,
{ 8a 2 J : jf(b; a) 2 C j b 2 F gj 2,
{ 8a 2 S : jf(a; b) 2 C j b 2 F gj 2, and
{ all elements e 2 F in the graph (F; C) are on a path from a start event a 2 Es
to an end event b 2 Ee.
      </p>
      <p>
        For a block-structured BP model it is furthermore required that the process
is hierarchically organised [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], i.e. it consists of unique join-split-pairs, each
representing either a single entry or a single exit point of a non-sequential BP
construct, e.g. Choice, Parallel, Loop, etc. The example process in Figure 1 is a
block-structured process. A similar representation gaining popularity in recent
years is the process tree, as de ned based on Petri nets/work ow nets in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>When a business process is automatically or semi-automatically executed
with a BP execution engine, e.g. with a Business Process Management System
(BPMS), an event log is produced, i.e. a all occurred events are logged and
stored. These logs and their contained events may capture di erent aspects of a
process execution, e.g. a di erent granularity of events are logged. In this paper
however, we only focus on a minimal set of event features: In order to allow the
discovery of the control- ow, every event is required to have a reference (1) to the
associated process instance and (2) to the corresponding activity. Furthermore,
we assume that the log contains exactly one event for each activity execution, i.e.
activity lifecycle events are not regarded. All events resulting from the execution
of the same process instance are captured in one trace. A trace is assumed to be
independent from other traces, i.e. the execution order of a process instance is
not in any way dependent on the execution of a second instance. Accordingly,
an event e is represented by a pair e = (t; a) where t 2 N is the unique identi er
of the trace and a 2 A is a unique reference to the executed activity.</p>
      <p>
        The research area of Process Discovery is concerned with the extraction of
a business process model from event logs without using any a-priori
information [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. Conventional challenges in process discovery originate from the
motivation to achieve a high quality of results, i.e. discovered processes should
support as accurately as possible the behaviour contained in the log. In particular
that means, process discovery algorithms have to deal with multiple objectives,
e.g. precision, simplicity, tness - over- tting vs. under- tting (see [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]). Process
discovery algorithms are usually assumed to be carried out in an static way as an
"o ine" method. This is re ected by the fact that the input for these algorithms
is an entire log as conceptually shown by the following de nition:
De nition 2 Let the log Ln = [e0; e1; :::en] be a sequence of n + 1 events ordered
by time of occurrence ( 8i &lt; j^ei; ej 2 Ln : time(ei) time(ej )) and BPn be the
business process model representing the behaviour in Ln, then process discovery
is de ned as a function that maps a log Ln to a process BPn:
      </p>
      <sec id="sec-2-1">
        <title>ProcessDiscovery : [e0; e1; :::; en] ) BPn</title>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3 Related Work</title>
      <p>
        A large number of process discovery algorithms exist, e.g. Inductive Miner [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ],
HeuristicsMiner [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], alpha-miner [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] and CCM [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. These and many
algorithms have in common that at rst a footprint of the log is created based on
which the process is constructed. Similar to the CCM, the following related
algorithms also discover block-structured processes: (1) Genetic process discovery
algorithms that restrict the search space to block-structured process models,
e.g. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. However, these are non-deterministic and generally have a high
execution time due to exponentially expanding search space. (2) Another relevant
approach that is conceptually similar to the CCM is proposed in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], the
Inductive Miner (IM): A top-down approach is applied to discover block-structured
Petri nets. The original algorithm evaluates constraints based on local
relationships between activities in order to identify the representing construct in an
inductive fashion. In recent work, the IM has also been extended to deal with
noise [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Generally, in all discovery approaches based on footprints known to the
authors the footprint is represented by a direct neighbours matrix representing
information about the local relations between the activities, e.g. for the BP of
Figure 1: h can only appear directly after g or e. As discussed in Section 4 the
CCM on the other hand extracts the process from a footprint based on global
relations between activities, e.g. h appears at some point after g or e.
      </p>
      <p>
        However, of little importance for conventional process discovery algorithms
is their practicality with regards to an application during run-time: as de ned
in De nition 2 process discovery is a static method that analyses an event log
in its entirety. An alternative to this approach is the immediate processing of
events when they occur to information of an higher abstraction level in order to
enable a real-time analysis. This approach is called Complex Event Processing
(CEP): a method that deals with the event-driven behaviour of large, distributed
enterprise systems [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. More speci cally, in CEP events produced by the
systems are captured, ltered, aggregated, and nally abstracted to complex events
representing high-level information about the situational status of the system,
e.g. performance, control- ow, etc. The need for monitoring aspects of business
processes at run-time by applying CEP methodologies has been identi ed by
Ammon et al., thus coining the term Event-Driven Business Process
Management (EDBPM) - a combination of two disciplines: Business Process
Management (BPM) and Complex Event Processing [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The dynamic process discovery
solution proposed in this paper is an application of EDBPM (see Section 5).
      </p>
      <p>
        In the context of process discovery, an often used term for discovering
processes from event streams is Streaming Process Discovery. In [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] the
HeuristicsMiner has been modi ed for this purpose by maintaining queues of xed size
n 2 N containing the latest n events, i.e. the queues function as a "sliding
window" over the event stream. Three di erent approaches of how to process these
queues to a footprint have been proposed: (1) Stationary - every queue entry
has the same weight, (2) Ageing - older entries have a decreasing weight, and
(3) Self-Adapting Ageing - the factor with which the in uence of older entries
decreases is dependent on whether a concept drift2 has been detected (quickly
decreasing) or the process is assumed to be stationary (slowly decreasing).
Additionally, Lossy Counting, a technique using approximate frequency count, has
been investigated as a modi cation. A second approach for discovering concept
drifts on event streams is presented in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]: an incremental discovery of declarative
process models using the stationary approach and Lossy Counting.
      </p>
    </sec>
    <sec id="sec-4">
      <title>4 Static Constructs Competition Miner</title>
      <p>
        The CCM as described in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] is a deterministic process discovery algorithm that
operates in a static fashion and follows a divide-and-conquer approach which,
from a given event log, directly mines a block-structured process model that
represents the main behaviour of the process. The CCM has the following main
features [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]: (1) A deadlock-free, block-structured business process without
duplicated activities is mined; (2) The following BP constructs are supported and can
be discovered for single activities: Normal, Optional, Loopover, and Loopback;
or for a set of activities: Choice, Sequence, Parallel, Loop, Loopover-Sequence,
Loopover-Choice, Loopover-Parallel (see Figure 2), and additionally all of them
as optional constructs - these are constructs supported by the majority of
business process standards like BPMN or YAWL; (3) If con icting or exceptional
behaviour exists in the log, the CCM picks the "best" tting BP construct.
      </p>
      <p>Algorithm 1 shows the conceptual methodology of the CCM algorithm in
pseudocode. The CCM applies the divide-and-conquer paradigm and is
implemented in a recursive fashion (see lines 7, 16, and 17). At the beginning
getFootprintAndBuildConstruct is initially called for all involved activities
(Am = A) with the process bp consisting of only a start and end element. The
recursive function is rst creating a footprint fp from the given log L only
considering the activities speci ed in set Am (at the beginning all involved activities).
In a next step it will be decided which is the best construct to represent the
behaviour captured by fp: (1) if the activity set Am only consists of one element,
2 A concept drift in this context is a behavioural change in the monitored process
(a)tSequence
(c)tParallel
Source
Source</p>
      <p>A First
it will be decided which of the single activity constructs (see bottom of Figure 2)
ts best - the process bp will then be enriched with the new single activity
construct (see line 11); (2) If the activity set Am contains more than one element,
the suitability for each of the di erent constructs is calculated for any two
activities x; y 2 Am based on "soft" constraints and behaviour approximations, e.g.
activities a and b are in a strong Sequence relationship. The result of this
calculation (line 13) is a number of suitability matrices, one for each construct. In the
subsequent competition algorithm it is determined what is the best combination
of (A) the construct type c 2 fSequence ; Choice ; Loop; :::g, and (B) the two
subsets A rst and Asecond of Am with A rst [ Asecond = Am, A rst \ Asecond = fg,
and A rst ; Asecond 6= fg, that best accommodate all x; y-pair relations of the
corresponding matrix of construct c (line 14). The construct is then created and
added to the existing process model bp (line 15), e.g. XOR-split and -join if the
winning construct c was Choice. At this stage the recursive method calls will be
executed to analyse and construct the respective behaviour for the subsets A rst
and Asecond . The split up of the set Am continues in a recursive fashion until
it cannot be divided any more, i.e. the set consists of a single activity (see case
(1)). The process is completely constructed when the top recursive call returns.</p>
      <p>
        Of particular interest for the transformation of the CCM algorithm to a
solution for scalable dynamic process discovery is the composition of the footprint
and its calculation from the log. As opposed to many other process discovery
algorithms, e.g. alpha-miner [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], the footprint does not consist of absolute
relations, e.g. h is followed by a (see example in Figure 1), but instead holds
relative relation values, e.g. a is eventually followed by g in 0:4 = 40% of the
traces. Furthermore, the footprint only contains global relations between
activities in order to guarantee a low polynomial execution time for the footprint
interpretation [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. The footprint of the CCM contains information about: (1)
the occurrence of each involved activities x 2 Am, i.e. how many times x appears
at least once per trace, how many times an x appears on average per trace, and
how many times the trace started with x; (2) the global relations of each
activity pair x; y 2 Am, i.e. in how many traces x appears sometime before the rst
occurrence of y in the trace, and in how many traces x appears sometime before
any occurrence of y in the trace3. All measures in the footprint are relative to
the number of traces in the log. Furthermore, not only one overall footprint is
created for the CCM but also for every subset A rst and Asecond , that is created
during execution, a new sub-footprint is created (see Algorithm 1).
      </p>
    </sec>
    <sec id="sec-5">
      <title>5 Dynamic Constructs Competition Miner</title>
      <p>
        As established in Section 1, increasingly dynamic processes and the need for
immediate insight require current research in the domain of process mining to be
driven by a set of additional challenges. To address these challenges the concept
of Scalable Dynamic Process Discovery (SDPD), an interdisciplinary concept
employing principles of CEP, Process Discovery, and EDBPM, has been
introduced in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]: "SDPD describes the method of monitoring one or more BPMSs
in order to provide at any point in time a reasonably accurate representation of
the current state of the processes deployed in the systems with regards to their
control- ow, resource, and performance perspectives as well as the state of still
open traces." That means, any potential changes in the mentioned aspects of
the processes in the system that occur during run-time have to be recognized
and re ected in the continuously updated "current state" of the process. Due to
its purpose, for solutions of SDPD an additional set of requirements applies. For
this paper, the most relevant of them are [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]:
{ Detection of Change: An SDPD solution is required to detect change in two
di erent levels de ned in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]: (1) Re ectivity: A change in a process instance
3 This stands in contrast to existing discovery solutions since in the CCM the
footprint and its interpretation is not based on local relationships between activity
occurrences, e.g. direct neighbours, but based on global relationships between them.
(trace), i.e. every single event represents a change in the state of the associated
trace. (2) Dynamism: A change on the business process level, e.g. because
events/traces occurred that contradicts with the currently assumed process.
{ Scalability/Algorithmic Run-time : An SDPD solution is applied as CEP
concept and has to be able deal with large business processes operating with a
high frequency, i.e. the actual run-time of the algorithms becomes very
important. Additionally, the key algorithms are required to be scalable to cope
with increasing workload at minimal possible additional computational cost.
Motivated by these challenges the initial process discovery approach was altered
to allow for dynamic process discovery. As opposed to the traditional static
methodology (see De nition 2), dynamic process discovery is an iterative
approach as de ned in the following:
De nition 3 Let log Ln = [e0; e1; :::en] be a sequence of n + 1 events ordered by
time of occurrence ( 8i &lt; j ^ ei; ej 2 Ln : time(ei) time(ej )) and BPn be the
business process model representing the behaviour in Ln, then dynamic process
discovery is de ned as a function that projects the tuple (en; BPn 1) to BPn:
      </p>
      <sec id="sec-5-1">
        <title>DynamicProcessDiscovery : (en; BPn 1) ) BPn</title>
        <p>As described in Section 4, the CCM is a static mining algorithm and has to be
modi ed in order to enable SDPD. The result of this modi cations is called
Dynamic CCM (DCCM). However, two restrictions for the DCCM with regards to
the previously mentioned requirements of SDPD apply: (1) instead of discovering
change on the BP perspectives control- ow, resources, and performance
perspective, the DCCM described in this paper only focuses on discovering change in
the control- ow, and (2) only change on the abstraction level of Dynamism is
detected, i.e. whether or not the control- ow of the process has changed - the
detection of change on the abstraction level of Re ectivity will not be supported
by the DCCM. Additionally to the requirements of SDPD the DCCM features
the following important aspects: (1) robust : if con icting, exceptional, or not
representable behaviour occurs in the event stream, the DCCM does not fail but
always picks the BP construct that best accommodates the recorded behaviour;
(2) deterministic: the DCCM yields the exact same output BP for the same
input stream of events.</p>
        <p>The following modi cations were applied to the default CCM to create the
DCCM and are described in more detail in the remainder of this section:
1. Splitting up the algorithm in two separate parts: one for dynamically
updating the current footprint(s) complying to the scalability requirement, and
one for interpreting the footprint into a BP model which has less restrictions
with regards to its execution-time.
2. In the CCM the footprint is calculated in relation to all occurring traces.</p>
        <p>This is not applicable for SDPD since the number of traces should not have
an in uence on the execution-time of any component of an SDPD solution.
For this reason the footprint has to be calculated in a dynamic fashion, i.e.
an event-wise footprint update independent from the previously occurred
number of events or traces.
3. The original behaviour of the CCM to carry out a footprint calculation
for every subset that has been created by the divide-and-conquer approach
is not optimal as then the DCCM would have to extract up to 2 n + 1
di erent footprints if only one activity was split-up from the main set for each
recursion.4 This has been improved for the DCCM: for the most common
constructs Choice and Sequence the sub-footprints are automatically derived
from the parent footprint.
4. In rare cases it can happen that for every appearing event the state of the
process is alternating between a number of di erent control- ows. This is
caused by "footprint equivalent" BP models, i.e. two models are footprint
equivalent if they both express the behaviour captured by the footprint. We
introduce a measure which favours the last control- ow state in order to
prevent the described behaviour.</p>
        <sec id="sec-5-1-1">
          <title>5.1 Methodology of the Dynamic CCM</title>
          <p>The original CCM algorithm had to be split up into two separate parts in
order to comply to the scalability requirement of SDPD. A component triggered
by the occurrence of a new event to update the dynamic footprint and a
component decoupled from the event processing which interprets the footprint into
a BP Model. The conceptual methodology of the DCCM is depicted in
Figure 3. The components, models, and functionality of the DCCM are described
in the following: Events from the monitored Enterprise System, in which the
end-to-end process is deployed, are fed into an event stream. The Footprint
Update component is the receiver of these events and processes them directly into
changes on the overall Dynamic Footprint which represents the abstract state of
the monitored business process. If additional footprints for subsets of activities
are required as speci ed by the Sub-Footprint Con gurations, e.g. if a Loop or
Parallel construct was identi ed, then these sub-footprints are also updated (or
created if they were not existent before). The Dynamic Footprint(s) can then at
any point in time be compiled to a human-centric representation of the business
process by the Footprint Interpretation component, i.e. the abstract footprint
representation is interpreted into knowledge conforming to a block-structured
BP model. In the DCCM this interpretation is scheduled dependent on how
many new completed traces appeared, e.g. the footprint interpretation is
executed once every 10 terminated traces. If the interpretation frequency m 2 N of
the DCCM is set to 1 a footprint interpretation is executed for every single trace
that terminated. The Footprint Interpretation algorithm works similar to the
CCM algorithm shown in Algorithm 1; but instead of extracting footprints from
a log (line 8), the modi ed algorithm requests the readily available Dynamic
Footprint(s). If a sub-footprint is not yet available (e.g. at the beginning or if
the process changed) the Footprint Interpretation speci es the request for a
subfootprint in the Sub-Footprint Con gurations in the fashion of a feedback loop.
4 e.g. for A = fa; b; c; dg : (a; b; c; d) ! ((a; b; c); (d)) ! (((a); (b; c)); (d)) !
(((a); ((b); (c))); (d)), seven di erent footprints for sets fa; b; c; dg; fa; b; cg; fb; cg; fag;
b ; fcg; fdg need to be created - (; ) denote the nested blocks that emerge while
f g
splitting the sets recursively.</p>
          <p>Run-Time</p>
          <p>Event
Processing
Events</p>
          <p>SubFootprint
Configs.</p>
          <p>Footprint
Update
Dynamic
Footprint</p>
          <p>Scheduled
Process</p>
          <p>Discovery</p>
          <p>Footprint
Interpretation
Business Process</p>
          <p>Model
Thus, Sub-Footprint Con gurations and Dynamic Footprints act as interfaces
between the two components, Footprint Update and Footprint Interpretation.
The Footprint Interpretation cannot continue to analyse the subsets if no
subfootprint for these exist yet. In this case, usually occurring in the warm-up or
transition phase, an intermediate BP model is created with activities containing
all elements of the unresolved sets as depicted in Figure 4.</p>
        </sec>
        <sec id="sec-5-1-2">
          <title>5.2 Run-time Update of the Dynamic Footprint</title>
          <p>The Footprint Update component processes events to changes in the Dynamic
Footprint, i.e. updates the abstract representation of the process state. The
original footprint extraction of the CCM algorithm calculates all values in relation
to the number of occurred traces, i.e. every trace's in uence on the footprint is
1
equal: jtracesj . To comply to the scalability requirement of SDPD the footprint
update calculation should only take a xed amount of time, independent from
the total number of previously occurred events or traces. An increase of the
total number of involved activities can cause, however, a linear increase of the
execution-time due to the recalculation of the relations between the occurred
activity and, in the worst case, all other activities. The independence from
previous traces is the reason the footprint is calculated in a dynamic fashion, i.e.
the dynamic footprint is incrementally updated in a way that older events "age"
and thus have less in uence than more recent events.</p>
          <p>The ageing approach that is utilized in the Footprint Update of the DCCM
is the creation of an individual trace footprint 5 (TFP ) for each trace and
add it multiplied by the trace in uence factor tif 2 R to the current
dynamic overall footprint (DFP ) multiplied by 1 tif , e.g. for tif = 0:01:
5 the occurrence values for activities as well as the global relations (see end of
Section 4) are represented in the trace footprint by absolute statements true 1 if it
occurred and false 0 if not
1
DFP = 0:01 TFP + 0:99 DFP . That means, a trace footprint TFP i has
at the beginning the in uence of 0:01, after another TFP i+1 has been added the
in uence of TFP i decreases to 0:01 0:99, and after another 0:01 0:992 and so
on. By applying this incremental method, older TFP are losing in uence in the
overall dynamic footprint. Figure 5 shows how the in uence of a trace is
dependent on its "age": If tif = 0:1, the in uence of a trace that appeared 60 traces
ago became almost irrelevant. At the same time if tif = 0:01 the in uence of a
trace of the same age is still a little more than half of its initial in uence when
it rst appeared. Essentially, the purpose of the trace in uence factor tif is to
con gure the "memory" and adaptation rate of the footprint update component.</p>
          <p>Another important dynamism feature that had to be implemented was the
possibility to add an activity that has not appeared before. A new activity is
rst recorded in the respective trace footprint. When the trace is terminated
it will be added to the overall footprint in which it is not contained yet. The
factored summation of both footprints to build the new dynamic footprint is
carried out by assuming that a not previously in the dynamic overall footprint
contained relation value is 0. An exception of this behaviour is the "warm-up"
phase of the Footprint Update, i.e. if the amount of occurred traces is &lt; t1if then
the in uence of the dynamic footprint is jtjrtarcaecsejs+j 1 and of the trace footprint
jtjrtarcaecsejs+j 1 . For instance if tif = 0:01 and jtracesj = 9 then is a new dynamic
footprint calculated with DFP 10 = 110 TFP + 190 DFP 9 and for the next trace
DFP 11 = 111 TFP + 1101 DFP 9. Because of this implementation the "warm-up"
phase of the Footprint Update could be drastically reduced, i.e. processes were
already completely discovered a few traces after the start of the monitoring.</p>
          <p>Furthermore, activities that do not appear any more during operation should
be removed from the dynamic footprint. This was implemented in the DCCM
in the following way: If the occurrence once value of an activity drops below a
removal threshold tr 2 R; tr &lt; tif it will be removed from the dynamic footprint,
i.e. all values and relations to other activities are discarded.</p>
          <p>The fact that especially many Choice and Sequence constructs are present
in common business processes, motivates an automated sub-footprint creation
in the Footprint Interpretation based on the parent footprint rather then
creating the sub-footprint from the event stream. This step helps to decrease the
execution-time of the Footprint Update and was achieved by introducing an
extra relation to the footprint6 - the direct neighbours relation as used by other
mining algorithms (see Section 3). In the Footprint Interpretation this relation is
then used for creating the respective sub-footprints for Sequence and Choice
constructs but not for identifying BP constructs since the direct neighbours relation
does not represent a global relation between activities.
5.3 Modi cations in the Footprint Interpretation Component
As analysed in the beginning of this section, the original behaviour of the CCM
to retrieve a sub-footprint for each subset that has been created by the
divideand-conquer approach is not optimal. This is why, in the Footprint Interpretation
the DCCM calculates the sub-footprints for the most common constructs, Choice
and Sequence, from the available parent footprint: (1) For the Choice construct
the probability of the exclusive paths are calculated with p rst = Px2A rst Fel (x)
and psecond = Px2Asecond Fel (x) with Fel (x) being the occurrences of x as rst
element (see CCM footprint description in Section 4). Then the relevant values of
the parent footprint are copied into their respective new sub-footprints and
normalized, i.e. multiplied with p 1rst and pse1cond , respectively. (2) The sub-footprints
for the Sequence construct are similarly built, but without the normalization.
Instead, the direct neighbours relation, now also part of the dynamic footprint,
is used to calculate the new overall probabilities of the sub-footprints.</p>
          <p>If two or more BP constructs are almost identically suitable for one and the
same footprint, a slight change of the dynamic footprint might result in a di
erently discovered BP. This may cause an alternating behaviour for the footprint
interpretation, i.e. with almost every footprint update the result of the
interpretation changes. This is undesirable behaviour which is why the competition
algorithm was additionally modi ed as follows: All combinations of BP
construct and subsets are by default penalized by a very small value, e.g. t1i0f , with
the exception of the combination corresponding to the previously discovered BP
model, hence reducing the risk of discovering alternating BP models.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>6 Evaluation</title>
      <p>
        The static CCM algorithm has been tested for its accuracy in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]: (1) in a
qualitative analysis the CCM was able to rediscover 64 out of 67 processes for
which a log was produced through simulation. (2) in the second part of the
evaluation the discovery performance of the CCM was compared to the mining
algorithms HeuristicsMiner (HM) [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], Inductive Miner (IM) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], and the Flower
Miner (FM), all of which are readily available in the ProM nightly build [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. For
ten given logs (including real-life logs and publicly available logs) the results of
the algorithms (each con gured with their default parameters) were evaluated
for their trace tness ftf , precision fpr, generalization fg, and simplicity fs with
the help of the PNetReplayer plugin [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. The averaged results of this analysis
are shown in Table 1; Note, that a lower simplicity value is better.
6 In rare cases (if Loop and Parallel constructs dominate) this modi cation can have a
negative e ect on the execution-time since extra information needs to be extracted
without the bene t of mining less sub-footprints
      </p>
      <p>In the remainder of this section early evaluation results of the DCCM are
presented with regards to its capability of detecting certain basic changes of a
real-time monitored business process. The basis of this evaluation is the example
model in Figure 1 which is simulated and the resulting event stream fed into the
DCCM. The CCM core is again con gured with its default noise parameters.
Figure 6 shows the di erent values we want to measure. In the gure BP1 and
BP2 are the business processes deployed in the monitored system and BP10 to
BPn0 are the discovered models by DCCM. Additionally, BP1 and BP m0 are
equivalent (BP1 BP m0) as well as BP2 and BPn0 (BP2 BPn0 ). For this part
of the evaluation the following measures are of interest:
{ Warm-up: tw 2 N the amount of completed traces the DCCM needs as input
at the start until the resulting model equivalently represents the process in
the system, i.e. until BP1 BP m0.
{ Change Detection: td 2 N the amount of completed traces it takes to detect a
certain change in the monitored process - from the point at which the process
changed in the system to the point at which a di erent process was detected.
When the change is detected the newly discovered process is usually not
equivalent to the new process in the system BP2 but instead represents parts of
the behaviour of both processes, BP1 and BP2.
{ Change Transition Period: ttr 2 N the amount of completed traces it takes
to re-detect a changed process - from the point at which the process change
was detected to the point at which the correct process representation was
identi ed, i.e. until BP2 BPn0 . In this period multiple di erent business
processes may be detected, each best representing the dynamic footprint at
the respective point in time.</p>
      <p>The rst test will evaluate how the DCCM behaves at the beginning when
rst exposed to the event stream, more particularly, we want to determine tw.
Figure 7 shows a selection of the rst few bp models extracted with trace
inuence factor tif = 0:01 (see Section 5.2) and interpretation frequency m = 10,
i.e. an interpretation is executed every 10 completed traces: After the rst trace
the discovered process is a sequence re ecting the single trace that de nes the
process at that point in time. At trace 10, which is the next scheduled footprint
interpretation, the the algorithm discovered a Loop construct but cannot further
analyse the subsets since the corresponding sub-footprint was not requested yet.
Because of that, the feedback mechanism via the Sub-Footprint Con gurations
is utilized by the Footprint Interpretation algorithm to register the creation of
BP in system:
Observed BP’: BP’1 - BPm’-1</p>
      <p>BP1
tw</p>
      <p>BPm’
td</p>
      <p>BP2
BPm’+1 - BPn’-1
ttr
# of traces</p>
      <p>BP’n</p>
      <p>Fig. 6. Measures for Detection of BP Change in System
the missing sub-footprints. In the next scheduled run of the footprint
interpretation, the Parallel construct of a; b; c; and d is discovered but again the analysis
can not advance since a sub-footprint for the individual activity subsets has not
been created yet. Activities e; f; g; and h seem to have appeared only in exactly
this sequence until trace 20. Skipping one of the interpretation steps, we can see
that at trace 40 the complete process has been mined, i.e. tw = 40.</p>
      <p>In Figure 8 the development of tw for di erent m 2 f1; 2; 3; 6; 10g and
tif 2 f0:001; 0:005; 0:01; 0:03g is depicted. The warm-up phase seems generally
very short and not strongly in uenced by tif . For m = 10 the warm-up phase
cannot be any shorter because the example process consists of a block-depth
of 3: Parallel-in-Parallel-in-Loop, i.e. 3 subsequent requests for sub-footprints
have to be made. This is an indicator that the modi cation e ort to shorten the
warm-up phase had a positive e ect. A small decrease of tw can be noticed when
increasing the trace in uence factor tif for small m, e.g. m 2 f1; 2; 3g.</p>
      <p>In a second test we applied a change to the business process in the monitored
system and are interested in the behaviour of the DCCM as well as in the change
detection td and the change transition period ttr . Figure 9 shows the evolution of
the discovered BP model with trace in uence factor tif = 0:01 and interpretation
frequency m = 10. The change applied is the move of activity a from the position
before the inner Parallel construct to the position behind it (see traces 5750 and
6310). The change was applied after 5753 traces. The footprint interpretation
Fig. 9. The Evolution of the Discovered BP Model During a Change (Move of A)
detects at the rst chance to discover the change (trace 5760) a concept drift
and nds via competition the best tting construct: Parallel of a; c and b; d. The
change detection td seemed to be independent from m and tif and was in all
cases immediately recognized7. In Figure 10 the development of ttr for di erent
m 2 f1; 10g and tif 2 f0:001; 0:005; 0:01; 0:03g is shown. The change transition
period ttr was strongly in uenced by tif . If the value was very small (tif = 0:001)
a change took up to almost 5000 traces in order to be re ected correctly in the
discovered BP model. On the other hand if the trace in uence factor is chosen
too high, e.g. tif = 0:05, not all variations of the process are included in the
dynamic footprint which results in frequently changing/alternating discovered
BP models. This is more likely to occur in large business processes containing
rarely executed but still relevant behaviour.</p>
      <p>Additionally, rst performance tests have been carried out for large arti
cially produced processes (without change). For a randomly created and strongly
nested process consisting of 100 activities the throughput of the footprint update
was close to 100; 000 events per second and the footprint interpretation
successfully discovered the process in a matter of seconds. Although not tested yet in a
7 Note, that other changes like deletion of an activity will take longer to recognise,
since their existence still "linger" in the footprints "memory" for some time.
real-life setting, the shown results indicate that the DCCM is very suitable for
discovering and monitoring large enterprise processes.</p>
    </sec>
    <sec id="sec-7">
      <title>7 Conclusion and Future Work</title>
      <p>
        In this paper we suggested modi cations for the Constructs Competition Miner
to enable Scalable Dynamic Process Discovery as proposed in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. The CCM
is a process discovery algorithm that follows a divide-and-conquer approach to
directly mine a block-structured process model which consists of common
BPdomain constructs and represents the main behaviour of the process. This is
achieved by calculating global relations between activities and letting the di
erent supported constructs compete with each other for the most suitable solution
from top to bottom using "soft" constraints and behaviour approximations. The
CCM was designed to deal with noise and not-supported behaviour. To apply the
CCM in a real-time environment it was split up into two separate parts, executed
on di erent occasions: (1) the footprint update which is called for every occurring
event and updates the dynamic footprint(s) and (2) the footprint interpretation
which derives the BP model from the dynamic footprint through applying a
modi ed top-down competition approach of the original CCM algorithm. The
modi cations on the CCM were mostly motivated by the scalability requirement
of SDPD and successfully implemented which is shown by the performance
results in the evaluation section. It was furthermore shown that changes in the
monitored process are almost instantly detected.
      </p>
      <p>
        The presented approach of Dynamic CCM (DCCM) is driven by the
requirements of real life industrial use cases provided by business partners within the
EU funded project TIMBUS. During the evaluation in the context of the
usecases it became apparent that this concept still has a number of limitations which
are considered to be future work: (1) Changes in the state of the business
process are usually detected almost immediately but it may take a long time until
the new state of the system is re ected appropriately in the extracted business
process model. This behaviour originates from the fact that the footprint and
the interpreted business process are in a sort of intermediate state for a while
until the in uence of the old version of the business process has disappeared.
Furthermore, the trace in uence factor tif is a pre-speci ed value but in
reality it is dependent on how many traces we need to regard to represent all the
"behaviour" of the model8. This in turn is strongly dependent on the amount
of activities in the model, since more activities usually mean more control- ow
behaviour. A possible future modi cation could be to have the in uence factor
dynamically adapt, i.e. similar to the self-adapting ageing proposed in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. (2) If
no sub-footprint is available for a set of activities, the footprint interpreter does
not further analyse this set. Through approximations or the use of the direct
neighbours relation at least a "close enough" control- ow for the subset could
be retrieved. (3) The discovery of the state of a business process should also
comprise information of other perspectives than the control- ow, e.g. resource
and performance.
8 if tif is set too high normal behaviour unintentionally becomes exceptional behaviour
      </p>
      <p>Project partially funded by the European Commission under the 7th Framework Programme
for research and technological development and demonstration activities under grant agreement
269940, TIMBUS project (http://timbusproject.net/).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>von</surname>
            <given-names>Ammon</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Ertlmaier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Etzion</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            ,
            <surname>Kofman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Paulus</surname>
          </string-name>
          ,
          <string-name>
            <surname>T.</surname>
          </string-name>
          :
          <article-title>Integrating Complex Events for Collaborating and Dynamically Changing Business Processes</article-title>
          . In: ICSOC/
          <article-title>ServiceWave 2009 Workshops</article-title>
          . LNCS, pp.
          <volume>370</volume>
          {
          <fpage>384</fpage>
          . Springer,
          <year>2010</year>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Buijs</surname>
          </string-name>
          , J.,
          <string-name>
            <surname>Van Dongen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Van Der Aalst</surname>
          </string-name>
          , W.:
          <article-title>A genetic algorithm for discovering process trees</article-title>
          .
          <source>In: Evolutionary Computation (CEC)</source>
          . pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          , IEEE,
          <year>2012</year>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Burattin</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sperduti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Van Der Aalst</surname>
          </string-name>
          , W.:
          <article-title>Heuristics Miners for Streaming Event Data</article-title>
          .
          <source>In: CoRR abs/1212.6383</source>
          ,
          <year>2012</year>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Ko</surname>
          </string-name>
          ,
          <string-name>
            <surname>Ryan K</surname>
          </string-name>
          . L.:
          <article-title>A computer scientist's introductory guide to business process management (BPM)</article-title>
          ,
          <source>In: Crossroads Journal, ACM</source>
          ,
          <year>2009</year>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Leemans</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fahland</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Van Der Aalst</surname>
          </string-name>
          , W.:
          <article-title>Discovering Block-Structured Process Models from Event Logs - A Constructive Approach</article-title>
          . In:
          <article-title>Application and Theory of Petri Nets and Concurrency</article-title>
          , LNCS, pp.
          <volume>311</volume>
          {
          <issue>329</issue>
          , Springer,
          <year>2013</year>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Leemans</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fahland</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Van Der Aalst</surname>
          </string-name>
          , W.:
          <article-title>Discovering Block-Structured Process Models from Event Logs Containing Infrequent Behaviour</article-title>
          ,
          <source>In: Business Process Management Workshops</source>
          <year>2013</year>
          , LNBIP, pp.
          <volume>66</volume>
          {
          <issue>78</issue>
          , Springer,
          <year>2013</year>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Luckham</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems</article-title>
          .
          <string-name>
            <surname>Addison-Wesley</surname>
            <given-names>Professional</given-names>
          </string-name>
          , Reading,
          <year>2002</year>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Maggi</surname>
            ,
            <given-names>F. M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burattin</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cimitile</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sperduti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Online Process Discovery to Detect Concept Drifts in LTL-Based Declarative Process Models</article-title>
          ,
          <string-name>
            <surname>OTM</surname>
          </string-name>
          <year>2013</year>
          , LNCS, pp.
          <volume>94</volume>
          {
          <issue>111</issue>
          , Springer,
          <year>2013</year>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>OMG</given-names>
            <surname>Inc</surname>
          </string-name>
          <article-title>: Business Process Model and Notation (BPMN) Speci cation 2.0</article-title>
          , http: //www.omg.org/spec/BPMN/2.0/PDF. formal/2011-01-03,
          <year>2011</year>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Redlich</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Molka</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rashid</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blair</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gilani</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          :
          <article-title>Constructs Competition Miner: Process Control- ow Discovery of BP-domain Constructs</article-title>
          .
          <source>In: 12th Int. Conf. on Business Process Management, LNCS</source>
          , pp.
          <volume>134</volume>
          {
          <issue>150</issue>
          , Springer,
          <year>2014</year>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Redlich</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gilani</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Molka</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Drobek</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rashid</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blair</surname>
          </string-name>
          , G.:
          <article-title>Introducing a Framework for Scalable Dynamic Process Discovery</article-title>
          .
          <source>In: 4th Enterprise Engineering Working Conference (EEWC)</source>
          ,
          <source>LNBIP 174</source>
          , pp.
          <volume>151</volume>
          {
          <fpage>166</fpage>
          . Springer,
          <year>2014</year>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Redlich</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blair</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rashid</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Molka</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gilani</surname>
          </string-name>
          , W.:
          <article-title>Research Challenges for Business Process Models at Run-time. In: LNCS State-of-the-Art Survey Volume on Models@run</article-title>
          .time,
          <year>2014</year>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Van Der Aalst</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ter</surname>
            <given-names>Hofstede</given-names>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          :
          <source>YAWL: Yet Another Work ow Language</source>
          ,
          <year>2003</year>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Van Der Aalst</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weijters</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maruster</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Work ow Mining: Discovering Process Models from Event Logs</article-title>
          .
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          .
          <volume>16</volume>
          (
          <issue>9</issue>
          ):
          <fpage>1128</fpage>
          -
          <lpage>1142</lpage>
          ,
          <year>2004</year>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Van Der Aalst</surname>
          </string-name>
          , W.,
          <string-name>
            <surname>Van Dongen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>ProM : The Process Mining Toolkit</article-title>
          .
          <source>Industrial Engineering</source>
          .
          <volume>489</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          ,
          <fpage>2009</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Van Der Aalst</surname>
          </string-name>
          et al.,
          <source>Process Mining Manifesto. BPM 2011 Int. Workshops</source>
          ,
          <year>2011</year>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Van Der Aalst</surname>
          </string-name>
          , W.: Process Mining - Discovery, Conformance and Enhancement of Business Processes, Springer,
          <year>2011</year>
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Van Der Aalst</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Adriansyah</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Van Dongen</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Replaying history on process models for conformance checking and performance analysis</article-title>
          .
          <source>WIREs Data Mining and Knowledge Discovery</source>
          ,
          <volume>2</volume>
          (
          <issue>2</issue>
          ),
          <fpage>182</fpage>
          -
          <lpage>192</lpage>
          ,
          <year>2012</year>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Weijters</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Van Der Aalst</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          , Alves de Medeiros, A.:
          <article-title>Process Mining with the Heuristics Miner-algorithm</article-title>
          . BETA Working Paper Series, WP
          <volume>166</volume>
          , Eindhoven University of Technology,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>