<!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>BPMNDiffViz: A Tool for BPMN Models Comparison?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sergey Y. Ivanov</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Anna A. Kalenkova</string-name>
          <email>akalenkova@hse.ru</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wil M.P. van der Aalst</string-name>
          <email>w.m.p.v.d.aalst@tue.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Eindhoven University of Technology</institution>
          ,
          <addr-line>Eindhoven</addr-line>
          ,
          <country country="NL">The Netherlands</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>National Research University Higher School of Economics</institution>
          ,
          <addr-line>Moscow, 101000</addr-line>
          ,
          <country>Russia syuivanov</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Automatic comparison of business processes plays an important role in their analysis and optimization. In this paper we present the web-based tool BPMNDiffViz, that finds business processes discrepancies and visualizes them. BPMN (Business Process Model and Notation) 2.0 - one of the most commonly used notations for process modeling was chosen as a representation. This tool implements a structural graph-based comparison analysis using an A* algorithm.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Overview</title>
      <p>Today, various organizations are increasingly faced with modeling their business
processes to reduce costs and to ensure a clear understanding of the processes used in the
organization. Due to changes in legislation, introduction of innovations and other
factors, business processes are constantly changing. Thus, system and business analysts
involved in modeling of business processes need a tool for comparing process models
and diagnosing their differences.</p>
      <p>
        Comparison of business processes is an essential step within various scenarios of
processes analysis. Process comparison is primarily intended to find discrepancies
between a reference and a real process models. In that case, using Process mining [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]
discovery techniques, a model of a real business process behavior can be obtained from
an event log (in particular a BPMN model can be learned from an event log using ProM
framework [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]). After that the comparison between this model and a reference
process model is performed. Thus, the process model comparison serves as a conformance
checking technique. Another example where the comparison of business processes can
be used is the management of large process model repositories with hundreds or
thousands models. Comparison techniques can significantly help in the classification of
processes and finding duplicates. Last but not the least, business processes comparison is
needed to analyze activities of two similar companies with different incomes.
      </p>
      <p>
        Various metrics of business processes similarity were described in [
        <xref ref-type="bibr" rid="ref4 ref5">4,5</xref>
        ]. These
metrics include: label matching similarity (either syntactic or semantic similarity of
element names), structural matching similarity represented as a graph edit distance, and
behavioral matching similarity. Label matching similarity is described in detail in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        Structural matching approaches typically use techniques such as greedy algorithms, A*
algorithms, and context-based similarity measures [
        <xref ref-type="bibr" rid="ref4 ref5 ref7">4,5,7</xref>
        ]. Various behavioral matching
methods and their implementations were proposed in [
        <xref ref-type="bibr" rid="ref10 ref15 ref17 ref2 ref3">2, 3, 10, 15, 17</xref>
        ].
      </p>
      <p>
        Despite the range of techniques proposed in literature, tool support for structural
processes comparison is still limited. A tool for merging and comparison of business
processes called Synergia was presented in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], the underlying approach [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] is based on
finding structural mappings between graphs using heuristics and discovering maximal
common subgraphs to merge them. This tool is used as a part of Apromore platform [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
Another tool, which finds matches between business processes using structural metrics,
is called ICoP Framework [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. This tool constructs multiple mappings, groups and
evaluates them in order to find the result mapping. A tool, which finds structural
discrepancies between BPMN models using SiDiff platform [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], was presented in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
This tool was not realized yet and there is no information on the visualization of
differences.
      </p>
      <p>
        We present a structural matching tool called BPMNDiffViz, which compares
process models represented in BPMN 2.0 format [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] - the most popular industrial standard
for modeling business processes. In contrast to the previous structural matching tools
BPMNDiffViz explicitly visualizes graph differences, stores them and provides
statistics, assisting in analyzing model discrepancies 1. BPMNDiffViz is mature enough and
supports all BPMN modeling constructs including activities, sequence flows,
subprocesses, gateways, events, data flow and others. We hope this tool will be used by the
practitioners. The implemented matching algorithm finds the minimal graph edit
distance between two processes (number of transformations, which should performed to
transform one model to another) using an A* algorithm and calculates the string edit
distance for each pair of the corresponding graph nodes. Thus, the label matching and
the structural matching metrics are used by BPMNDiffViz to find the minimal distance.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Functionality and Architecture</title>
      <p>In this section we will present the functionality and architecture of the BPMNDiffViz
tool. The proposed tool is based on client-server technology and is built on a three-tier
architecture (Fig. 1). A server component and a client component (web forms) were
implemented as parts of BPMNDiffViz tool.</p>
      <p>The server component includes a server application and a database, which stores
comparison results. Tomcat 7.02 is used as an application server and PostgreSQL3 as
a database management system. Spring MVC framework4 is used to dispatch HTTP
requests and responses. The server component allows to load, store, search on BPMN
1 Note that we do not consider tools, such as demo.bpmn.io/diff, academic.
signavio.com, which visualize graph differences using element identifiers. These tools
are not applicable to compare models created by different tools, or even by one tool if models
were generated independently.
2 http://tomcat.apache.org/
3 http://www.postgresql.org/
4 http://docs.spring.io/
diagrams, compare them, and save comparison results. To support the BPMN 2.0
notation Camunda framework5 was utilized as a library for several reasons. It fully supports
BPMN 2.0 elements. Furthermore, it allows good integration with Spring. Besides that,
it incorporates a special JavaScript framework called bpmn.io to render models in a
browser on a client side.</p>
      <p>The client part is simply a set of web forms, which allows the user to perform the
following actions: load models in BPMN 2.0 XML format, visualize BPMN models
(by means of bpmn.io), visualize statistics of BPMN elements usage, search on loaded
models, set parameters of comparison, compare two BPMN models, producing a final
graph edit distance, a list of operations for transformation one model to another, and a
comparison statistics, visualize and save comparison results.</p>
      <p>
        A model in BPMN 2.0 XML format can be
loaded using a web form (Fig 2). After that this
model is saved and appears in the list of loaded
BPMN models. The search through this list is
implemented as well. Each BPMN model can be
visualized and rescaled (Fig. 3a.). For each such
a model statistics of modeling elements usage
is presented as a pie chart (Fig. 3b.). To
compare two BPMN models first these models are
selected from the list, then modification
(insertion and deletion) costs and label matching
algoFig. 2: Upload BPMN models rithms 6 are specified for each type of BPMN
elements. If modification costs were not explicitly
specified, the tool will use default values. After
5 https://camunda.com/
6 Currently the system calculates Levenshtein distance [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] between two labels.
that the comparison begins. A comparison result is visualized in such a way that all
corresponding elements are highlighted in blue, all elements that should be deleted and
added are highlighted in red and green respectively (Fig. 4 a.). A list of matchings,
insertions and deletions and a total cost are visualized as well. Moreover, statistics of
matched, deleted and inserted elements are explicitly shown in a form of pie charts.
When a matching is selected from the list, the corresponding elements are highlighted
(in color) and are moved to the center of the diagrams (Fig. 4 b.).
      </p>
      <p>BPMNDiffViz was tested on various manually created models and models loaded
from the Camunda collection. The tool has shown good performance for models that
contain up to 30 elements. A link to the source code and a screencast are available at
http://pais.hse.ru/research/projects/CompBPMN/.</p>
      <p>In our future work, we plan to extended the tool to make it capable to recognize
behaviorally similar constructions, which are structurally different. Also we plan to
provide programming interfaces in order to achieve stronger integration with existing
tools. Privacy aspects of the web-based tool will be worked out as well.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Business</given-names>
            <surname>Process</surname>
          </string-name>
          <article-title>Model and Notation (BPMN)</article-title>
          . http://www.omg.org/spec/BPMN/ 2.0/.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>A.</given-names>
            <surname>Armas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Baldan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          , and
          <string-name>
            <given-names>L.</given-names>
            <surname>Garc</surname>
          </string-name>
          <article-title>´ıa-Ban˜uelos</article-title>
          .
          <source>Behavioral Comparison of Process Models Based on Canonically Reduced Event Structures. In 12th International Conference, BPM. Proc.</source>
          , pages
          <fpage>267</fpage>
          -
          <lpage>282</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>A.</given-names>
            <surname>Armas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Baldan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          , and
          <string-name>
            <given-names>L.</given-names>
            <surname>Garc</surname>
          </string-name>
          <article-title>´ıa-Ban˜uelos. BP-Diff: A Tool for Behavioral Comparison of Business Process Models</article-title>
          .
          <source>In Proc. of the BPM Demo Sessions, BPM</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>R.</given-names>
            <surname>Dijkman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.F. van Dongen</surname>
          </string-name>
          ,
          <string-name>
            <surname>R.</surname>
          </string-name>
          <article-title>Ka¨a¨rik, and</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          .
          <article-title>Similarity of Business Process Models: Metrics and Evaluation</article-title>
          . Inf. Syst.,
          <volume>36</volume>
          (
          <issue>2</issue>
          ):
          <fpage>498</fpage>
          -
          <lpage>516</lpage>
          ,
          <year>April 2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>R. M. Dijkman</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Dumas</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <article-title>Garc´ıa-Ban˜uelos, and</article-title>
          <string-name>
            <given-names>R.</given-names>
            <surname>Ka</surname>
          </string-name>
          <article-title>¨a¨rik. Aligning Business Process Models</article-title>
          .
          <source>In Proc. of the 13th IEEE EDOC</source>
          <year>2009</year>
          , pages
          <fpage>45</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>A.</given-names>
            <surname>Kalenkova</surname>
          </string-name>
          , M. de Leoni, and
          <string-name>
            <surname>W. M. P. van der Aalst. Discovering,</surname>
          </string-name>
          <article-title>Analyzing and Enhancing BPMN Models Using ProM</article-title>
          .
          <source>In Proc. of the BPM Demo Sessions, BPM</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>M. La Rosa</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Dumas</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Uba</surname>
            , and
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Dijkman</surname>
          </string-name>
          .
          <article-title>Business Process Model Merging: An Approach to Business Process Consolidation</article-title>
          .
          <source>ACM Trans. Softw</source>
          . Eng. Methodol.,
          <volume>22</volume>
          (
          <issue>2</issue>
          ),
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>M. La Rosa</surname>
            ,
            <given-names>H. A.</given-names>
          </string-name>
          <string-name>
            <surname>Reijers</surname>
            ,
            <given-names>W. M. P. van der Aalst</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R. M.</given-names>
            <surname>Dijkman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dumas</surname>
          </string-name>
          , and L.
          <string-name>
            <surname>Garca-Bauelos</surname>
          </string-name>
          .
          <source>APROMORE: An Advanced Process Model Repository. Expert Syst. Appl.</source>
          ,
          <volume>38</volume>
          (
          <issue>6</issue>
          ):
          <fpage>7029</fpage>
          -
          <lpage>7040</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>V. I.</given-names>
            <surname>Levenshtein</surname>
          </string-name>
          .
          <article-title>Binary Codes Capable of Correcting Deletions, Insertions and Reversals</article-title>
          .
          <source>Soviet Physics Doklady</source>
          .,
          <volume>10</volume>
          (
          <issue>8</issue>
          ):
          <fpage>707</fpage>
          -
          <lpage>710</lpage>
          ,
          <year>February 1966</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>J. Mendling</surname>
            ,
            <given-names>B.F. van Dongen</given-names>
          </string-name>
          , and
          <string-name>
            <given-names>W.M.P. van der</given-names>
            <surname>Aalst</surname>
          </string-name>
          .
          <article-title>On the Degree of Behavioral Similarity between Business Process Models</article-title>
          .
          <source>In Proc. of WI-EPK</source>
          <year>2007</year>
          , pages
          <fpage>39</fpage>
          -
          <lpage>58</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>P.</given-names>
            <surname>Pietsch</surname>
          </string-name>
          and S. Wenzel.
          <article-title>Comparison of BPMN2 Diagrams</article-title>
          . In Business Process Model and Notation - 4th
          <source>International Workshop, BPMN 2012</source>
          , pages
          <fpage>83</fpage>
          -
          <lpage>97</lpage>
          . Springer,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>M. La Rosa</surname>
            and
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Gottschalk</surname>
          </string-name>
          .
          <article-title>Synergia Comprehensive Tool Support for Configurable Process Models</article-title>
          .
          <source>In Proc. of the BPM Demo Sessions, BPM</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>C. Treude</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Berlik</surname>
            , S. Wenzel, and
            <given-names>U.</given-names>
          </string-name>
          <string-name>
            <surname>Kelter</surname>
          </string-name>
          .
          <article-title>Difference Computation of Large Models</article-title>
          .
          <source>In Proc. of the the SIGSOFT</source>
          , pages
          <fpage>295</fpage>
          -
          <lpage>304</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <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="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>B.F. van van Dongen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. M.</given-names>
            <surname>Dijkman</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Mendling</surname>
          </string-name>
          .
          <article-title>Measuring Similarity between Business Process Models</article-title>
          . In CAiSE, volume
          <volume>5074</volume>
          <source>of LNCS</source>
          , pages
          <fpage>450</fpage>
          -
          <lpage>464</lpage>
          . Springer,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>M. Weidlich</surname>
            ,
            <given-names>R. M.</given-names>
          </string-name>
          <string-name>
            <surname>Dijkman</surname>
            , and
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Mendling</surname>
          </string-name>
          .
          <article-title>The ICoP Framework: Identification of Correspondences between Process Models</article-title>
          . In CAiSE, volume
          <volume>6051</volume>
          <source>of LNCS</source>
          , pages
          <fpage>483</fpage>
          -
          <lpage>498</lpage>
          . Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>M. Weidlich</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Polyvyanyy</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Desai</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Mendling</surname>
            , and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Weske</surname>
          </string-name>
          .
          <source>Process Compliance Analysis Based on Behavioural Profiles. Inf. Syst.</source>
          ,
          <volume>36</volume>
          (
          <issue>7</issue>
          ):
          <fpage>1009</fpage>
          -
          <lpage>1025</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>