<!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>The DPIL Framework: Tool Support for Agile and Resource-Aware Business Processes?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Stefan Schonig</string-name>
          <email>stefan.schoenig@uni-bayreuth.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Michael Zeising</string-name>
          <email>michael.zeising@uni-bayreuth.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Bayreuth, Universitatsstra e 30</institution>
          ,
          <addr-line>95447 Bayreuth</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The Declarative Process Intermediate Language (DPIL) is a declarative process modelling language that allows for specifying multiperspective and multi-modal agile, i.e., exible, processes. The expressiveness of DPIL and its suitability for business process modelling have been evaluated with respect to the well-known Work ow Patterns. The DPIL Framework provides a tool set for supporting agile and resourceaware business processes based on the language DPIL. While the DPIL Modeller component is used to create and verify models, the DPIL Navigator depicts a rule-based execution engine for enacting models. It comprises a web-based worklist which allows process participants to choose and perform tasks. In addition to this, the DPIL Miner component allows for the discovery of DPIL models from event logs.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Background and Signi cance to BPM</title>
      <p>
        Two di erent representational paradigms for business processes can be
distinguished: procedural models describe which activities can be executed next and
declarative, i.e., rule-based models de ne execution constraints that the
process has to satisfy [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. In exible processes the exact ow of activities cannot
be fully determined at design time. These processes heavily depend on human
participants, their decisions and expert knowledge. These information cannot be
identi ed and formalized in a whole. As a result, these processes require highly
exible IT support. Flexible processes are common in healthcare where, e.g.,
patient diagnosis and treatment processes require exibility to cope with
unanticipated circumstances. In brief, a more exible business process and IT support
means a greater number of alternative paths. Within a rule-based model initially
all paths are considered viable. The more constraints are added to the model
the less paths remain. As result, to make a rule-based model more exible
constraints have to be removed or weakened. Moreover, a rule-based model focuses
on crosscutting relations instead of the ow of activities. Hence, a rule-based
approach is well-suited for modelling exible processes [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ]. As mentioned above,
declarative modelling provides means for increasing the number of alternative
? Copyright c 2015 for this paper by its authors. Copying permitted for private and
academic purposes.
use group Student
process BusinessTrip {
task Apply for trip
task Approve Application
task Book flight
}
ensure sequence(Apply for trip, Approve Application)
advice "Approval before booking recommended":
      </p>
      <p>roleSequence(Approve Application, Book flight, Student)
advice "Flight should be booked by applicant":</p>
      <p>binding(Apply for trip, Book flight)
milestone "Done": complete(of ApproveApplication) and</p>
      <p>
        complete(of BookFlight)
paths without explicitly modelling them. Given the vast amount of alternatives,
a di erentiation between mandatory and only recommended actions in the form
of modalities is reasonable [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Independent from a speci c modelling paradigm
di erent perspectives on a process exist. The organizational perspective, often
also referred to as resource perspective deals with the de nition and the
allocation of human and non-human resources to activities. Due to the importance of
human decision-making and expert knowledge, especially exible processes need
to explicitly integrate the organisational perspective [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. In many declarative
languages, however, an adequate representation of organisational patterns is often
still not possible. The Declarative Process Intermediate Language (DPIL) [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] is a
declarative process modelling language that supports the requirements described
above. Unlike other declarative languages it is multi-perspective, i.e., it allows
for representing several business process perspectives, namely, control ow, data
and especially resources. In order to express complex organisational relations,
DPIL builds upon a generic organisational meta model. The expressiveness of
DPIL and its suitability for business process modelling have been evaluated [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]
with respect to the well-known Work ow Patterns. DPIL supports 52% of the
behavioral, 62% of the organizational and 75% of the informational patterns.
Like this, DPIL meets around 50% more of the requirements than BPMN does.
Moreover, it is multi-modal, meaning that it allows de ning two di erent types
of rules: rules representing mandatory relations (called ensure in DPIL) and
rules representing recommended relations (called advice in DPIL). The latter
are useful, e.g., to re ect good practices. Here, the modeller can give further
explanations that are o ered to the user during execution.
      </p>
      <p>DPIL provides a textual notation based on the use of macros to de ne
reusable rules. For instance, the sequence macro (sequence(a; b)) states that
the existence of a start event of task b implies the previous occurrence of a
complete event of task a; and the binding macro (binding(a; b)) states that an
activity b is assigned to the same actor that already performed activity a. The
roleSequence (roleSequence(a; b; r)) nally depicts that the start of task b by
an actor in role r requires the completion of task a before. Fig. 1 shows a model
of a simple process for trip management in DPIL. It states that it is
mandatory for all applicants to apply for a business trip before it can be approved.
Moreover, it is recommended for students that the approval is carried out before
a ight is booked. Since the applicant usually knows appointments best it is
recommended that she books the ight herself. The DPIL Framework provides
a tool set for modelling, executing and analysing exible and resource-aware
business processes based on the language DPIL as described above.
2</p>
      <p>DPIL Framework: Overview and Demo Guidelines
By means of the example process above, the demo will show the functionality
of the three modules the framework consists of: the DPIL Modeller, the DPIL
Navigator and the DPIL Miner. The framework supports de ning models using
a textual editor based on the Eclipse IDE, the DPIL Modeller. The modeling
tool support users through syntactic, semantic and qualitative model analysis
based on the Xtext framework1. After specifying DPIL models like in Fig. 1
the model is compiled to an executable le that can be enacted by a rule-based
execution engine, the DPIL Navigator.</p>
      <p>The DPIL Navigator is based on the execution principle as visualized in Fig.
2. Tasks of a DPIL process model undergo a life cycle composed of events that is
managed by the engine. A task, e.g., can be started and completed. The current
state of a process is then the series of past events (1). Besides the static elements
like human tasks, e.g., Apply for trip and Approve application, a process model
may specify rules constraining that series of events, e.g., sequence(Apply for
trip, Approve application). When the model is executed, the engine simulates
one event ahead for every model element (2) and evaluates the resulting series of
1 http://www.eclipse.org/Xtext/
(a) Sequence rule
(b) RoleSequence rule
(c) Binding rule
events on the basis of the rules (3). Each simulated event that does not violate
any ensure rule is related to an action that the engine interprets immediately
(4). A simulated start of a task by a certain participant, e.g., is interpreted as the
assignment of this task to the participant. If the start event violates an advice
rule, the action is marked as not recommended. The principle is demonstrated
w.r.t. two di erent instances \Business trip to Innsbruck" of the example process.
Fig. 3a shows the web-based worklist for a non-student, e.g., a professor. The
task Approve Application is not visible since its execution violates the mandatory
(ensure) sequence rule. The execution of the other tasks, however, is possible.
Fig. 3b depicts the worklist for a student. In case of a user in role Student, the
execution of the task Book ight violates the recommended (advice) roleSequence
rule. Note, that the execution of the task is still possible, however, the violation
of the rule is highlighted through orange colour and the indication text from the
model. Fig. 3c shows the task worklist for a third person in the situation where
the trip application has already been started by the professor. In this case the
execution of Book ight violates the recommended binding rule, i.e., the ight
should be booked by the applicant herself.</p>
      <p>
        As well as manually creating a DPIL model using the DPIL modeler, users
can also discover models from event logs using the DPIL Miner [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Here, the
analyst selects the DPIL macros that should be discovered w.r.t. the provided
event log. Fig. 4 shows the user-interface of the DPIL Miner with some
discovered organizational patterns. Both the execution engine and the mining module
are based on the JBoss Drools platform [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] that provides a current
implementation of the rete rules solver [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Therefore, in both components DPIL rules are
transformed to the Drools Rule Language (DRL).
3
      </p>
    </sec>
    <sec id="sec-2">
      <title>Maturity and Future Work</title>
      <p>
        The DPIL Framework is a well-evaluated prototype that is already used for
demonstration purposes in academia as well as in industry. It has been developed
and used in the KpPQ project. In [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] we show how it is possible to discover DPIL
models from real-life event logs. The DPIL Navigator with the example process
deployed is accessible at http://dpilnavigator.kppq.de. Furthermore, di
erent screencasts illustrating the di erent features of the DPIL Framework are
accessible online: the Modeller at http://modeller.kppq.de, the navigator at
http://navigator.kppq.de and the miner at http://miner.kppq.de. Future
work will focus on the implementation of DPIL model veri cation techniques
and model simulation features that should support users when choosing from a
diversity of possible action through look ahead strategies and recommendations.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>D.</given-names>
            <surname>Fahland</surname>
          </string-name>
          , D. Lubke, J. Mendling,
          <string-name>
            <given-names>H.</given-names>
            <surname>Reijers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Weber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Weidlich</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Zugal</surname>
          </string-name>
          , \
          <article-title>Declarative versus imperative process modeling languages: The issue of understandability," in Enterprise, Business-Process and Information Systems Modeling</article-title>
          , pp.
          <volume>353</volume>
          {
          <issue>366</issue>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>R. Vacul n</surname>
          </string-name>
          , R. Hull,
          <string-name>
            <given-names>T.</given-names>
            <surname>Heath</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Cochran</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Nigam</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Sukaviriya</surname>
          </string-name>
          , \
          <article-title>Declarative business artifact centric modeling of decision and knowledge intensive business processes," in Enterprise Distributed Object Computing Conference (EDOC), no</article-title>
          .
          <source>Edoc</source>
          , pp.
          <volume>151</volume>
          {
          <issue>160</issue>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>G.</given-names>
            <surname>Regev</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Wegmann</surname>
          </string-name>
          , \
          <article-title>A regulation-based view on business process and supporting system exibility,"</article-title>
          <source>in Advanced Information Systems Engineering</source>
          , vol.
          <volume>5</volume>
          , pp.
          <volume>91</volume>
          {
          <issue>98</issue>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>M.</given-names>
            <surname>Zeising</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          <article-title>Schonig, and</article-title>
          <string-name>
            <given-names>S.</given-names>
            <surname>Jablonski</surname>
          </string-name>
          , \
          <article-title>Towards a Common Platform for the Support of Routine and Agile Business Processes," in Collaborative Computing: Networking, Applications</article-title>
          and Worksharing,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. S. Schonig, C. Cabanillas,
          <string-name>
            <given-names>S.</given-names>
            <surname>Jablonski</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          , \
          <article-title>Mining the Organisational Perspective in Agile Business Processes,"</article-title>
          <source>in Enterprise, Business-Process and Information Systems Modeling</source>
          , Springer,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. T. JBoss Drools, \JBoss Drools Documentation - Chapter 7:
          <string-name>
            <given-names>Rule</given-names>
            <surname>Language Reference</surname>
          </string-name>
          ,"
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>C.</given-names>
            <surname>Forgy</surname>
          </string-name>
          , \
          <article-title>Rete: A fast algorithm for the many pattern/many object pattern match problem," Arti cial intelligence</article-title>
          , vol.
          <volume>19</volume>
          , no.
          <issue>1</issue>
          , pp.
          <volume>17</volume>
          {
          <issue>37</issue>
          ,
          <year>1982</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>