<!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>Combining a Reachability Graph and a Reduction Rule Approach for Verification of EPCs</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>J. Mendling</string-name>
          <email>jan.mendling@wu-wien.ac.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Vienna University of Economics and Business Administration</institution>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This demonstration shows how two complementary tools can be combined for the efficient verification of EPC business process models. In a first step, the tool xoEPC is used to identify control-flow errors in an EPC based on reduction rules. While this approach is efficient, it may result in a partially reduced EPC since the set of reduction rules is not complete. In a second step, this partially reduced EPC can then be loaded into ProM. In ProM there is a conversion plug-in that calculates the reachability graph and verifies EPC soundness. Though this approach is complete, it can be quite time-consuming. Using the two tools in sequence balances efficient processing of the reduction rules approach and the completeness of the reachability graph analysis.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Conceptual business process models such as Event-driven Process Chains (EPCs) play
an important role in the business process management life cycle. Since they are
often used as an early formalization of process requirements, they should be subject to
quality assurance in order to avoid costly rework in later in the implementation phase
[
        <xref ref-type="bibr" rid="ref11 ref9">9, 11</xref>
        ]. Verification is related to one particular quality aspect, namely, that business
process models should guarantee that every case can be processed with a proper
completion. In comparison to other business process modeling languages that are based on
Petri nets, EPCs have to features that makes it difficult to do verification with
standard Petri net technologies. Firstly, EPCs may have multiple start and end events. Since
Soundness [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], as a prominent correctness criterion, is only defined for Workflow nets,
i.e. a Petri net class with exactly one source and one sink, it is not directly applicable
for EPCs. Secondly, EPCs may have OR-join connectors representing conditional
synchronization semantics. Some of these verification challenges have been addressed with
the relaxed soundness criterion, and a mapping of EPCs to Petri nets as defined in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
Still, proper completion is not guaranteed for a relaxed sound EPC.
      </p>
      <p>
        For this demonstration we take the novel EPC semantics definition and a
corresponding notion of EPC soundness as a starting point (see [
        <xref ref-type="bibr" rid="ref6 ref7">7, 6</xref>
        ]). EPC soundness
basically requires (1) that there is a set of initial markings such that every start event is
included in at least one of these initial markings, (2) that for every marking, that is
reachable from a marking in the set of initial markings, there exists a final marking
that can be reached, and (3) that final markings are the only markings reachable from a
marking in the set of initial markings such that no node can fire [6, p.106]. In Section 2,
we briefly sketch the functionality of xoEPC and discuss its different outputs. In
Section 3 illustrate the plug-in that calculates the reachability graph for an EPC, and gives
the result of the verification of EPC soundness. Section 4 summarizes the paper.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Application of Reduction Rules with xoEPC</title>
      <p>
        xoEPC a tool for EPC verification based on reduction rules.1 It is written in the
objectoriented scripting language XOTcl [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], which is an extension of Tcl. xoEPC loads all
*.xml files from the current directory and checks whether they are ARIS XML files [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
If they are, the XML is processed with the tDOM package, a Tcl implementation of the
DOM specification.2 For each EPC model that has at least one event and one function,
xoEPC checks syntactical correctness and applies the reduction algorithm. The internal
data structure of xoEPC uses an adjacency matrix representation of the EPC, and the
reduction methods work on this data structure. xoEPC produces three types of files:
1. All EPCs that cannot be reduced completely are written to the reducedEPCs.epml
file. These EPCs can be further analyzed by tools that can read EPML [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
2. Errors encountered by reduction rules are recorded in the errorresults.xml file. This
file also records the processing time of the reduction, metadata of the model, as
well as the size of the original and the size of the reduced EPC.
3. Finally, an XHTML file with an embedded SVG graphic3 is generated for each
EPC based on the position information in the ARIS XML file. It projects the errors
back to the model by highlighting the involved connectors.
      </p>
      <p>
        The advantages of xoEPC are the following four points. Firstly, due to its reduction
rule approach it is performative, providing a result for many EPCs within less than one
second [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Secondly, since it is based on EPC soundness, it returns a precise result
also for EPCs with multiple start and end events as well as with OR-joins. Thirdly,
the program runs in a batch mode, and is therefore able to analyze not only one, but
several EPC models, without user interaction. Finally, xoEPC projects the errors back
onto the visual model such that they can be easily corrected. Still, it might happen that
the original EPC is not reduced completely. In this case, the partially reduced EPC can
be further analyzed with ProM by importing the reducedEPCs.epml file.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Calculation of Reachability Graph with ProM</title>
      <p>
        Based on the EPC semantics defined in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], we have implemented a conversion plug-in
for the ProM (Process Mining) framework [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. ProM was originally developed as a tool
for process mining, but meanwhile its functionality was extended to include other types
1 Some of the functionality of xoEPC is available at http://wi.wu-wien.ac.at/epc.
2 For an overview of the various DOM specifications of the World Wide Web Consortium refer
to http://www.w3.org/DOM/DOMTR.
3 For the respective specifications, see http://www.w3.org/TR/xhtml1 and http://www.w3.org/
      </p>
      <p>
        TR/SVG.
of analysis, model conversions, model comparison, etc. This was enabled by the
plugable architecture of ProM, that allows to add new functionality without changing the
framework itself, and the fact that ProM supports multiple modeling languages. Since
ProM can interact with a variety of existing workflow management systems, simulation
tools, ERP systems, and analysis tools (cf. [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]), the plug-in for the new EPC semantics
can easily be used for the analysis of existing models. Currently, there are more than
150 plug-ins in release 4.1. ProM basically supports five kinds of plug-ins for mining,
importing, exporting, conversion, and analysis.
      </p>
      <p>
        The conversion plug-in maps an EPC to the transition systems package that was
developed for an implementation of the incremental workflow mining approach by
Kindler, Rubin, and Scha¨fer [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Figure 1 illustrates how the conversion plug-in works.
First, one has to load an EPC business process model into ProM, for instance, by using
the import plug-in for the ARIS XML format [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] or for the EPC Markup Language
[
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. In the figure, the EPC example model for a loan request process is loaded. Since
ProM generates a new layout automatically, the model might look different compared
to the original layout. Once the EPC is displayed in ProM, one can click on it, trigger
the conversion plug-in “EPC to State/Context Transition System”, and the reachability
graph is calculated and shown in a new ProM window. The dense network of states
and transitions on the right-hand side stems from the concurrent execution, if there is
both a positive risk assessment for the loan request and the requester is a new customer.
There are two markings that do not serve as a source for another transition in case if
the request is rejected or accepted. Both these markings are displayed with a green
border since they are proper final markings. If they were deadlocks, they would be drawn
with a red border. The advantage of the reachability graph analysis is that the result is
complete.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Conclusion and Future work</title>
      <p>
        In this demonstration, we have presented a combination of two tools for the verification
of EPCs. Firstly, xoEPC provides a fast analysis of EPCs with the shortcoming that not
all EPCs might be reduced completely. In a second step, only partially reduced EPCs
can be further analyzed with a ProM plug-in that explicitly calculates the reachability
graph. Since partially reduced EPCs tend to be quite small [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], this combination of tools
efficiently circumvents the state explosion problem frequently encountered in process
model verification. Further details on both tools are reported in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>W.M.P. van der Aalst</surname>
          </string-name>
          .
          <article-title>Verification of Workflow Nets</article-title>
          . In Pierre Aze´ma and Gianfranco Balbo, editors,
          <source>Application and Theory of Petri Nets</source>
          <year>1997</year>
          , volume
          <volume>1248</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>407</fpage>
          -
          <lpage>426</lpage>
          . Springer Verlag,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>P.</given-names>
            <surname>Barborka</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Helm</surname>
          </string-name>
          , G. Ko¨ldorfer, J. Mendling,
          <string-name>
            <given-names>G.</given-names>
            <surname>Neumann</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.F. van Dongen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.M.W.</given-names>
            <surname>Verbeek</surname>
          </string-name>
          , and
          <string-name>
            <surname>W.M.P. van der Aalst.</surname>
          </string-name>
          <article-title>Integration of EPC-related Tools with ProM</article-title>
          . In M. Nu¨ttgens and
          <string-name>
            <given-names>F.J.</given-names>
            <surname>Rump</surname>
          </string-name>
          and J. Mendling, editor,
          <source>Proceedings of the 5th GI Workshop on Business Process Management with Event-Driven Process Chains (EPK</source>
          <year>2006</year>
          ), pages
          <fpage>105</fpage>
          -
          <lpage>120</lpage>
          , Vienna, Austria,
          <year>December 2006</year>
          . German Informatics Society.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>J.</given-names>
            <surname>Dehnert</surname>
          </string-name>
          and
          <string-name>
            <given-names>W.M.P. van der Aalst. Bridging</given-names>
            <surname>The Gap Between Business Models And Workflow Specifications. International J. Cooperative Inf</surname>
          </string-name>
          . Syst.,
          <volume>13</volume>
          (
          <issue>3</issue>
          ):
          <fpage>289</fpage>
          -
          <lpage>332</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>IDS</given-names>
            <surname>Scheer</surname>
          </string-name>
          <article-title>AG</article-title>
          .
          <article-title>XML-Export und -Import (ARIS 6 Collaborative Suite 6.2 Schnittstellenbeschreibung)</article-title>
          . ftp://ftp.ids-scheer.de/pub/ARIS/HELPDESK/EXPORT/,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>E.</given-names>
            <surname>Kindler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Rubin</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Scha</surname>
          </string-name>
          <article-title>¨fer. Process Mining and Petri Net Synthesis</article-title>
          . In J. Eder and S. Dustdar, editors,
          <source>Business Process Management Workshops</source>
          , volume
          <volume>4103</volume>
          of Lecture Notes in Computer Science (LNCS), pages
          <fpage>105</fpage>
          -
          <lpage>116</lpage>
          . Springer Verlag,
          <year>September 2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          .
          <article-title>Detection and Prediction of Errors in EPC Business Process Models</article-title>
          .
          <source>PhD thesis</source>
          , Vienna University of Economics and Business Administration,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          and
          <string-name>
            <surname>W.M.P. van der Aalst.</surname>
          </string-name>
          <article-title>Formalization and Verification of EPCs with ORJoins Based on State and Context</article-title>
          . In J.
          <string-name>
            <surname>Krogstie</surname>
            ,
            <given-names>A.L.</given-names>
          </string-name>
          <string-name>
            <surname>Opdahl</surname>
          </string-name>
          , and G. Sindre, editors,
          <source>Proceedings of the 19th Conference on Advanced Information Systems Engineering (CAiSE</source>
          <year>2007</year>
          ), volume
          <volume>4495</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>439</fpage>
          -
          <lpage>453</lpage>
          , Trondheim, Norway,
          <year>2007</year>
          . Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          and
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Nu¨ttgens. EPC Markup Language (EPML) - An XML-Based Interchange Format for Event-Driven Process Chains (EPC)</article-title>
          .
          <source>Information Systems and e-Business Management</source>
          ,
          <volume>4</volume>
          (
          <issue>3</issue>
          ):
          <fpage>245</fpage>
          -
          <lpage>263</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9. D.L. Moody. Theoretical and
          <article-title>practical issues in evaluating the quality of conceptual models: current state and future directions</article-title>
          .
          <source>Data &amp; Knowledge Engineering</source>
          ,
          <volume>55</volume>
          (
          <issue>3</issue>
          ):
          <fpage>243</fpage>
          -
          <lpage>276</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. G. Neumann and
          <string-name>
            <given-names>U.</given-names>
            <surname>Zdun. XOTcl</surname>
          </string-name>
          , an
          <article-title>Object-Oriented Scripting Language</article-title>
          .
          <source>In Proc. of the 7th USENIX Tcl/Tk Conference</source>
          , Austin, Texas, USA,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>M.</given-names>
            <surname>Rosemann</surname>
          </string-name>
          .
          <article-title>Potential pitfalls of process modeling: part a</article-title>
          .
          <source>Business Process Management Journal</source>
          ,
          <volume>12</volume>
          (
          <issue>2</issue>
          ):
          <fpage>249</fpage>
          -
          <lpage>254</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>