<!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>Declarative Process Mining with the Declare Component of ProM</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Fabrizio Maria Maggi?</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Tartu</institution>
          ,
          <country country="EE">Estonia</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Traditional process mining techniques mainly work with procedural modeling languages (like Petri nets) where all possible orderings of events must be speci ed explicitly. However, using procedural process models for describing processes working in turbulent environments and characterized by a lot of variability (like healthcare processes) is extremely di cult. Indeed, these processes involve several possible execution paths and representing all of them explicitly makes the process models quickly unreadable. Using declarative process models (like Declare) ensures exibility in the process description. Even processes that work in environments where participants have more autonomy and are, therefore, more unpredictable can be represented as compact sets of rules. In the process mining tool ProM, there are several plug-ins that can be used for di erent types of analysis based on Declare ranging from the discovery of Declare models, to conformance checking, to the online monitoring of running process instances.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Process discovery, conformance checking and process model enhancement are
the three basic forms of process mining [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. In particular, process discovery aims
at producing a process model based on example executions in an event log and
without using any a-priori information. Conformance checking pertains to the
analysis of the process behavior as recorded in an event log with respect to
an existing reference model. Process model enhancement aims at enriching and
extending existing process models with information retrieved from logs, e.g., a
process model can be extended with performance-related information such as
ow time and waiting time.
      </p>
      <p>In the last years, several works have been focused on process mining
techniques based on declarative process models [2{4, 6{8]. These techniques are very
suitable for processes characterized by high complexity and variability due to
the turbulence and the changeability of their execution environments. The
dichotomy procedural versus declarative can be seen as a guideline when choosing
? The author would like to thank R.P. Jagadeesh Chandra Bose, Andrea Burattin,
Massimiliano de Leoni and Luciano Garc a-Ban~uelos for their collaboration in the
implementation of the plug-ins presented in this paper.
the most suitable language to represent models in process mining algorithms:
process mining techniques based on procedural languages can be used for
predictable processes working in stable environments, whereas techniques based on
declarative languages can be used for unpredictable, variable processes working
in turbulent environments.</p>
      <p>
        The plug-ins presented in this paper use the Declare notation [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Declare
is a declarative language that combines a formal semantics grounded in Linear
Temporal Logic (LTL) on nite traces. A Declare model consists of a set of
constraints which, in turn, are based on templates. Templates are abstract entities
that de ne parameterized classes of properties and constraints are their concrete
instantiations.
      </p>
      <p>
        In this paper, we illustrate how the presented plug-ins work by showing their
application in the context of the BPI Challenge 2011 [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] that records the
treatment of patients diagnosed with cancer from a large Dutch hospital. This
demonstrates that they are viable to handle event logs of real-life size.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Plug-ins Description</title>
      <p>Through the Declare Maps Miner, it is possible to generate from scratch a set of
Declare constraints representing the actual behavior of a process as recorded in
an event log. The user selects from a list of Declare templates the ones to be used
for the discovery task, i.e., the mined model will contain only constraints that
are instantiations of the selected templates. In addition, the user can provide the
plug-in with some a-priori knowledge (if it is available), to guide the discovery
task. For example, the user can decide to limit the possible constraints to
discover. This allows her to generate only constraints that are the most interesting
from the domain point of view, thus reducing the complexity of the resulting
models.</p>
      <p>There are two mechanisms for limiting the possible constraints to discover.
First, it is possible to ignore constraints between event types (such as start and
complete) of the same activity.1 Secondly, the user can provide di erent groups
of activities (each group can be loaded in the form of a list of activities in a text
le) and specify if only intra-group or inter-group constraints should be
considered. Intra-group constraints refer to the class of constraints where the activities
involved all emanate from a single group. In many scenarios, analysts would be
interested in nding constraints between activities pertaining to a functionality,
to a particular department in an organization, etc. For example, in a hospital
event log, an analyst would be interested in nding relationships/constraints
between the various administration activities. Inter-group constraints refer to the
class of constraints where the activities involved belong to two di erent groups.
For example, in a hospital log, an analyst would be interested in constraints
between activities involved in surgery and therapy.</p>
      <p>The user can also specify thresholds for parameters minimum support and
alpha. Parameter minimum support allows her to select the percentage of traces
in which a constraint must be satis ed to be discovered (and to lter out noisy
traces). Parameter alpha can be used ignore constraints that are trivially true in
the discovery task. For example, constraint response(A,B), specifying that if A
occurs, then eventually B follows, is trivially true in process instances in which
A does not occur at all.</p>
      <p>Fig. 12 shows the output produced by the Declare Maps Miner. The discovery
results are presented to the user as interactive maps and give di erent
information about the process. Activities (shown as rectangles) are colored based on
their frequency (from white indicating low frequency to yellow indicating high
frequency). The user can highlight, in the discovered maps, the Declare
constraints (shown as arcs between activities) that are more relevant (based on
di erent metrics) or prune out the ones that are less interesting, redundant or
deriving from noise in the log. The maps produced by the Declare Maps Miner
also show delays, latencies, time distances between activities and several
statistics related to the temporal dimension of the process.</p>
      <p>If an existing Declare model is already available, it is possible to repair it
based on the information retrieved from a log (plug-in: Repair a Declare Model ).
The user can decide which aspects must be kept in the original set of rules
and which ones can be discarded. For example, the user can decide to keep
only certain types of constraints or constraints involving certain activities. It is
possible to just remove less interesting or redundant rules or to strengthen (if
possible) the constraints included in the original set. Starting from a Declare
model and from a log, the Declare model can be extended with time information
(plug-in: Extend a Declare Model with Time Information ). Through the
DataAware Declare Miner, it is also possible to discover constraints enriched with
data conditions.
1 The miner is able to deal with non-atomic activities and to discover constraints
involving di erent parts of the activities' lifecycle.
2 For space reasons, the quality of the screenshots here presented is not the best.</p>
      <p>However, all the gures included in this paper are available at http://math.ut.ee/
~fabrizio/BPMdemo13/demo/FiguresDemo2013.zip</p>
      <p>The Declare Replayer and the Declare Diagnoser (Declare Checker
package) can be used to check the conformance of the actual behavior of a process
as recorded in an event log with respect to a reference Declare model. The
Declare Replayer generates a set of alignments between the log and the
Declare model, i.e., information about what must be changed in the log traces to
make them perfectly compliant with the model. The Declare Diagnoser projects
the results obtained through the Declare Replayer onto the reference model (as
shown in Fig. 2). This projection produces a map in which the critical
activities/constraints of the reference model are highlighted. In particular, activities
are colored from red to green according to the number of moves they are
involved in, i.e., according to how many times they were in the wrong place in the
log or missing when required. Constraints are colored from red to green based
on the number of moves that are needed to make the log compliant to them.
Through the Declare Analyzer (Fig. 3), the user can pinpoint where the process
execution deviates from the reference Declare model and quantify the degree
of conformance of the process behavior through several metrics, e.g., ful llment
ratio and violation ratio.</p>
      <p>
        For completeness, we mention that, with Mobucon LTL (a provider of the
operational support service in ProM), it is also possible to monitor a running
process with respect to a reference Declare model and get information about its
compliance at runtime. However, this functionality has already been presented
in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Summary</title>
      <p>
        The plug-ins belonging to the Declare component of ProM are advanced
prototypes and, as demonstrated through their application to the log provided
for the BPI challenge 2011, are able to handle logs of real-life size. The
Declare Maps Miner and Mobucon LTL have been used in the Poseidon project
(http://www.esi.nl/short/poseidon/) to monitor sea vessels. In particular,
in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], we show how it is possible to construct Declare models from real-life
historical data and monitor live data with respect to the mined model.
      </p>
      <p>We consider the set of ProM plug-ins presented here stable enough for
evaluating the declarative approach in real-life case studies. Binaries and source
code can be obtained from the ProM repository (https://svn.win.tue.nl/
repos/prom) and a release of each plug-in including the functionalities
described in this paper is included in the nightly build version of ProM (www.
processmining.org). A screencast of this demo can be found at http://math.
ut.ee/~fabrizio/BPMdemo13/demo/demo.html. A yer with a summary of the
functionalities described in this paper is available at http://math.ut.ee/
~fabrizio/BPMdemo13/demo/DeclareFlyer.pdf.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <article-title>1. 3TU Data Center</article-title>
          .
          <source>BPI Challenge 2011 Event Log</source>
          ,
          <year>2011</year>
          . doi:
          <volume>10</volume>
          .4121/uuid:
          <fpage>d9769f3d</fpage>
          -0ab0
          <string-name>
            <surname>-</surname>
          </string-name>
          4fb8
          <string-name>
            <surname>-</surname>
          </string-name>
          803b
          <string-name>
            <surname>-</surname>
          </string-name>
          0d1120
          <year>cf54</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>A.</given-names>
            <surname>Burattin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.M.</given-names>
            <surname>Maggi</surname>
          </string-name>
          ,
          <string-name>
            <surname>W.M.P. van der Aalst</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Sperduti</surname>
          </string-name>
          .
          <article-title>Techniques for a Posteriori Analysis of Declarative Processes</article-title>
          .
          <source>In EDOC</source>
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Massimiliano</given-names>
            <surname>Leoni</surname>
          </string-name>
          ,
          <article-title>Fabrizio Maria Maggi, and</article-title>
          <string-name>
            <given-names>WilM.P.</given-names>
            <surname>Aalst</surname>
          </string-name>
          .
          <article-title>Aligning event logs and declarative process models for conformance checking</article-title>
          .
          <source>In BPM</source>
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>F. M.</given-names>
            <surname>Maggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Westergaard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Montali</surname>
          </string-name>
          , and
          <string-name>
            <surname>W. M. P. van der Aalst.</surname>
          </string-name>
          <article-title>Runtime veri cation of LTL-based declarative process models</article-title>
          .
          <source>In RV</source>
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Fabrizio</surname>
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Maggi</surname>
            ,
            <given-names>Arjan J.</given-names>
          </string-name>
          <string-name>
            <surname>Mooij</surname>
          </string-name>
          , and
          <string-name>
            <surname>Wil M. P. van der Aalst</surname>
          </string-name>
          .
          <article-title>Analyzing Vessel Behavior using Process Mining, chapter Poseidon book</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>F.M.</given-names>
            <surname>Maggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.C.</given-names>
            <surname>Bose</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.M.P. van der</given-names>
            <surname>Aalst</surname>
          </string-name>
          .
          <article-title>E cient discovery of understandable declarative models from event logs</article-title>
          .
          <source>In CAiSE</source>
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>F.M.</given-names>
            <surname>Maggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.P.J.C.</given-names>
            <surname>Bose</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.M.P. van der</given-names>
            <surname>Aalst</surname>
          </string-name>
          .
          <article-title>A knowledge-based integrated approach for discovering and repairing declare maps</article-title>
          .
          <source>In CAiSE</source>
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>F.M.</given-names>
            <surname>Maggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Montali</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Westergaard</surname>
          </string-name>
          , and
          <string-name>
            <surname>W.M.P. van der Aalst.</surname>
          </string-name>
          <article-title>Monitoring business constraints with linear temporal logic: An approach based on colored automata</article-title>
          .
          <source>In BPM</source>
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>W.M.P. van der Aalst</surname>
          </string-name>
          .
          <source>Process Mining: Discovery, Conformance and Enhancement of Business Processes</source>
          . Springer,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>W.M.P. van der Aalst</surname>
            , M. Pesic, and
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Schonenberg</surname>
          </string-name>
          .
          <article-title>Declarative Work ows: Balancing Between Flexibility and Support</article-title>
          . Computer Science - R&amp;D.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>Michael</given-names>
            <surname>Westergaard</surname>
          </string-name>
          and
          <article-title>Fabrizio Maria Maggi</article-title>
          .
          <article-title>Declare: A tool suite for declarative work ow modeling and enactment</article-title>
          .
          <source>In BPM (Demos)</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>