<!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>Automated Adaptation of Business Process Models Through Model Transformations Specifying Business Rules</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Roman Popp</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hermann Kaindl</string-name>
          <email>hermann.kaindlg@tuwien.ac.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Vienna University of Technology</institution>
          ,
          <addr-line>Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <fpage>65</fpage>
      <lpage>72</lpage>
      <abstract>
        <p>Both business processes and business rules are changing over time. In addition, when business process models try to capture all details, they are complex and need to deal with variability according to context. Manual adaptation of process models takes time and is error-prone. We address these issues through explicit separation of process models (represented in BPMN) and specifications of business rules (represented as modeltransformation rules based on BPMN). Applying such rules as model transformations to a model of a reference process (at design-time) leads to models of either refined or new models of business processes. In this way, both the change of a process per se or the inclusion of a new business rule can be handled through automated adaptation of the related business models, without an extension of the BPMN 2.0 standard.</p>
      </abstract>
      <kwd-group>
        <kwd>Business process adaptation</kwd>
        <kwd>Model-driven transformation</kwd>
        <kwd>BPMN</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>Business processes in organizations are changing over time, so their models need to be
kept up-to-date. Usually, such models are represented today in Business Process Model
and Notation (BPMN), more precisely its version BPMN 2.0, since this language offers
a standard for modeling business processes.1</p>
      <p>
        Business processes also need to take variability into account, depending on certain
conditions. According to, e.g., Hallerbach and Bauer [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], neither conditional branches
inside a process nor separate process models are satisfactory solutions for representing
process variability, since both can result in redundancies.
      </p>
      <p>Business rules often define such variability, but informally. Manual adaptations of
business processes according to business rules are tedious and lead to such
redundancies.</p>
      <p>Therefore, research approaches (discussed below) propose automated adaptation
of reference processes. We present a new approach in this paper based on
modeltransformation, which is a core technology of the Object Management Group’s Model
Driven Architecture2 (MDA). Model-transformation employs rules that transform a</p>
      <sec id="sec-1-1">
        <title>1 http://www.omg.org/spec/BPMN/2.0/ 2 http://www.omg.org/mda/</title>
        <p>given source model to a related target model, according to precisely specified
metamodels.</p>
        <p>Our new idea for automated adaptation of business processes presented in this
paper is to represent certain kinds of business rules as model-transformation rules. When
specified precisely in this way, they can be more or less automatically used to adapt
business processes represented as models. For BPMN 2.0, a corresponding metamodel
exists and is used by our approach. Since we transform from BPMN to BPMN, the same
metamodel defines both source and target model in our approach.</p>
        <p>We present our new approach with a running example of a business rule in the
context of payment and its conditional authorization. We also show how BMPN models
can actually be modified automatically through such model transformations.</p>
        <p>The remainder of this paper is organized in the following manner. First, we discuss
related work. Then we explain specifying a business rule as a model-transformation
rule. Based on that, we explain automatically adapting reference processes through
model transformations. Finally, we discuss our approach more generally, draw some
conclusions and indicate future work.
2</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        In product-line engineering of software or general systems, the core theme is
commonality and variability, see e.g., [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] for an approach and its formalization in the context of
requirements and systems engineering. Most of this work is based on feature-oriented
models as introduced early by Kang et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], which typically distinguish between
mandatory and optional features, as well as mutual exclusion and lists of choices.
Mannion and Kaindl [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] integrated parameters into such models as well. A product line
in these approaches usually encompasses all (pre-)defined variants. We are not aware,
however, of any application of these ideas to adaptability of business process models.
      </p>
      <p>
        In this paper, we deal with business processes modeled in standard BPMN 2.0, and
business rules for their adaptation. So, we also focus the further discussion of related
work on this topic. Still, let us also mention an earlier approach to achieving business
process flexibility with business rules [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. However, the points of variability in the
reference process have to be identified manually.
      </p>
      <p>
        Hallerbach and Bauer [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] pursue an approach named Provop, where a business
process variant constitutes an adjustment of a reference process. Either a standard process
or the most frequently used process can be taken as the reference process. Provop
defines specific change operations (with pre- and post-conditions) for adaptation of the
reference process, which may also be grouped into so-called options. It is not so clear,
however, how business rules for adapting a reference process can, in general, be
formulated in such an approach, so that they are understandable per se.
      </p>
      <p>
        Milanovic et al. [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] devised a dedicated language for rule-based sub-process
selection and workflow composition called rBPMN. It extends BPMN through weaving with
the R2ML rule language. Since the resulting models are, in general, not compatible
with the BPMN standard, however, the usual tooling for BPMN cannot be directly used
with this approach.
      </p>
      <p>
        La Rosa and Dumas [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] propose modeling one large reference workflow. Their
approach provides design-time configuration for realizing workflow variants, but there is
no extensible approach for including business rules.
      </p>
      <p>
        Do¨hring et al. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] defined a new metamodel for so-called vBPMN models resulting
from weaving BMPN2 and business rules (specified in the R2ML rule language). This
approach allows specifying change patterns for application at run-time. However, the
reference workflow requires to have adaptive segments explicitly marked. Like rBPMN,
vBPMN is an extension of BPMN (as standardized), so that the usual tooling for BPMN
cannot be directly used with this approach.
      </p>
      <p>
        Do¨hring et al. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] address this latter problem through design-time model
transformations from vBPMN to BPMN2 Sub-Processes (as standardized), where the
transformations are hard-coded in Java. Still, the reference model requires adaptive segments
to be marked.
      </p>
      <p>In summary, we are not aware of any approach that allows modeling and executing
business rules specified directly as model transformations according to MDA, where
both source and target model conform to the BPMN 2.0 metamodel.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Business Rules Specified as Model Transformation Rules</title>
      <p>In our approach, we specify business rules as model transformation rules, as
independently as possible from any existing process model as possible. Of course, such a
business rule has to refer to something in some existing business process, in order to be
useful at all. However, these rule specifications and the process specifications should
be maximally decoupled. So, we explain simple examples of such business rules even
before referring to any concrete reference process.</p>
      <p>Our chosen example deals with payment, a very usual part of typical business
processes. Let us assume that payment is to be handled differently in a given business
depending on the amount to be paid. If this amount exceeds a defined threshold,
another business actor than the one primarily responsible for executing a payment Activity
needs to authorize the payment before its execution.</p>
      <p>One possibility for specifying this business rule in our approach is illustrated in
Fig. 1, which implements an “in-situ” substitution (at the same place) of a given
Payment Activity with the conditional payment authorization. In addition to this graphical
illustration, such a rule needs to be specified in more detail for making it automatically
executable. We specified this rule as a transformation in the ATLAS Transformation
Language (ATL).3 Each ATL rule consists at least of a from and a to part. The from part
specifies which element is transformed (possibly with some conditions) and the to part
specifies the corresponding part in the target model. These parts are based on BPMN
in our approach, more precisely BPMN 2.0, where all the technical details have been
specified in an XML representation.</p>
      <p>We also specified this business rule in different ways, but due to lack of space, we
cannot explain them all here. Still, let us mention another formalization for simply
transforming a Payment Activity into a BPMN model through a Payment Sub-Process that
includes additionally an authorization Activity and conditional Payment. This
transformation also needs to create this Sub-Process in BPMN in such a way, that it contains
this conditional payment processing.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Automatically Adapting Reference Processes through Model</title>
    </sec>
    <sec id="sec-5">
      <title>Transformations</title>
      <p>Based on such specifications of business rules, our approach can automatically adapt
reference processes through model transformations. A small example of a reference
process represented in BPMN is shown in Fig. 2. It is a simplified version of the
“payment handling” process of [9, p. 108]. This payment handling process starts with the
creation of an invoice. This invoice is then sent to the customer. After the customer has
received the invoice, she makes the payment of the invoice. Concurrently, the
delivering company checks the receipt of payment (through its bank). Until the payment is
received, the check is repeated periodically. Once the payment is received, it is booked
as paid. After that, this example reference process is finished. Note, that payment is
unconditional in this process.</p>
      <p>This process specification per se does not include any variability. Of course, it could
be simply changed manually to include the conditional payment authorization as desired
in the business rule example above. This would encode this particular rule in this
particular process model, with all the disadvantages already discussed in the literature (see
also above).</p>
      <p>Much as other approaches, we strive for automated adaptation, but we pursue it
through model transformation. After the given business rule as shown in Fig. 1 had
been formalized in ATL, applying the ATL rule engine resulted in a process model as
shown in Fig. 3. This rule replaces the simple Payment Activity in a reference process
with a whole process part directly inside the adapted reference process. In fact, we had
to implement several technical work-arounds to make this work because of restrictions
of this transformation approach. Due to lack of space, we cannot specify these here.
5</p>
    </sec>
    <sec id="sec-6">
      <title>Discussion</title>
      <p>It may seem as though it is straight-forward to add more and more business rules as
transformation rules according to our approach. However, certain constraints have to</p>
      <sec id="sec-6-1">
        <title>3 http://www.eclipse.org/atl/</title>
        <p>
          be fulfilled, so that the business process resulting through model transformation still
conforms to BPMN. For example, it is necessary that the from and to parts have the
same input and output “ports”. In our simple example, these are one entry point and
one exit point. These constraints will have to be studied yet, possibly along the lines of
[
          <xref ref-type="bibr" rid="ref10">10</xref>
          ].
        </p>
        <p>Our approach presented in this paper allows strong decoupling of (new) business
rules from existing business processes. So almost any existing process can potentially
be adapted according to new business rules automatically.</p>
        <p>It is also an advantage of our approach that no segments of existing processes need
to be marked for adaptation, and so the designer does not need to think of possible
adaptions at all, because all the adaptions are fully specified in the business rules.</p>
        <p>
          We only want to modify parts of the models, but the model transformation engines
are made for transforming a whole model. This leads to large overhead, like providing
generic transformation rules, and because of their triggering restriction we also need
the approach of Wagelaar et al. [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] for circumventing this technical problem.
        </p>
        <p>
          A more convenient solution could be based on a specific transformation engine
providing triggering and firing of more than one rule for the same source element.
It could be devised along the lines of an existing one as specifically implemented in
another context [
          <xref ref-type="bibr" rid="ref12 ref13">12, 13</xref>
          ], which makes the approach of Wagelaar et al. unnecessary.
6
        </p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Conclusion and Future Work</title>
      <p>The work presented in this paper addresses adaptability of business process models
and, in particular, automating it. We follow the approach to separate reference processes
from business rules and propose here the new idea to represent certain kinds of business
rules as model transformations.</p>
      <p>Our implementation assumes reference processes to be represented as standard
BPMN 2.0 models. The from and to parts of each transformation rule are based on
BPMN 2.0 as well, so the process models resulting from such transformations are also
standard BPMN. Therefore, existing BPMN execution engines / environments can be
used for the resulting process models.</p>
      <p>Viewed from a higher perspective, this approach leads to a new form of
representing and managing variability of business process models. When specifying reference
processes, it is not yet necessary to envisage their variability. In particular, no marking
of variable parts is necessary. Vice versa, when specifying business rules in this way,
the available reference processes need not be taken into account as a whole or in detail.
Just knowing about parts of such processes or sub-processes is required for specifying
the business rules.</p>
      <p>Still, future work will be necessary for studies with people actually working on
adaptable business processes. In order to avoid the technicalities when using currently
available transformation engines, creating an advanced one will facilitate the adoption
of this approach. Such an engine will not necessarily have to be general enough to
handle any metamodel, but support specifically the one of BPMN 2.0. The use of such
a (specific) transformation engine will support the specification of business rules as
transformation rules.
7</p>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgments</title>
      <p>Part of this research has been carried out in the ProREUSE project (No. 834167), funded
by the Austrian FFG.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Hallerbach</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bauer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Reichert</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Configuration and management of process variants</article-title>
          .
          <source>In: Intl. Handbook on BPM</source>
          . Springer Berlin / Heidelberg (
          <year>2010</year>
          )
          <fpage>237</fpage>
          -
          <lpage>255</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Mannion</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kaindl</surname>
          </string-name>
          , H.:
          <article-title>Using parameters and discriminants for product line requirements</article-title>
          .
          <source>Systems Engineering</source>
          <volume>11</volume>
          (
          <issue>1</issue>
          ) (
          <year>2008</year>
          )
          <fpage>61</fpage>
          -
          <lpage>80</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Kang</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cohen</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hess</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Novak</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peterson</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Feature-Oriented Domain Analysis (FODA) feasibility study</article-title>
          .
          <source>Technical report</source>
          , Carnegie Mellon University, Pittsburgh, PA (
          <year>November 1990</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. van Eijndhoven,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Iacob</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.E.</given-names>
            ,
            <surname>Ponisio</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          :
          <article-title>Achieving business process flexibility with business rules</article-title>
          .
          <source>In: Proceedings of the 12th Enterprise Distributed Object Computing Conference (EDOC'08)</source>
          .
          <source>(Sept</source>
          <year>2008</year>
          )
          <fpage>95</fpage>
          -
          <lpage>104</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Milanovic</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gasevic</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rocha</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Modeling flexible business processes with business rule patterns</article-title>
          .
          <source>In: Proceedings of the 15th Enterprise Distributed Object Computing Conference (EDOC'11)</source>
          . (
          <year>2011</year>
          )
          <fpage>65</fpage>
          -
          <lpage>74</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>La</given-names>
            <surname>Rosa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Dumas</surname>
          </string-name>
          , M., t. Hofstede,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Mendling</surname>
          </string-name>
          , J.:
          <article-title>Configurable multi-perspective business process models</article-title>
          .
          <source>IS</source>
          <volume>36</volume>
          (
          <issue>2</issue>
          ) (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. Do¨hring,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Zimmermann</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          : vBPMN:
          <article-title>Event-Aware Workflow Variants by Weaving BPMN2 and Business Rules</article-title>
          .
          <source>In: Proceedings of the 16th International Conference on Exploring Modeling Methods in Systems Analysis and Design</source>
          . Volume
          <volume>81</volume>
          of LNBIP., Springer (
          <year>2011</year>
          )
          <fpage>332</fpage>
          -
          <lpage>341</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8. Do¨hring,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Schulz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Galkin</surname>
          </string-name>
          ,
          <string-name>
            <surname>I.</surname>
          </string-name>
          :
          <article-title>Emulating Runtime Workflow Adaptation and Aspect Weaving by Recursive Rule-Based Sub-Process Selection - A Model Transformation Approach</article-title>
          .
          <source>In: Proceedings of the 16th Enterprise Distributed Object Computing Conference (EDOC'12)</source>
          , Beijing, IEEE (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Schumacher</surname>
          </string-name>
          , J., Meyer, M.:
          <article-title>Customer Relationship Management strukturiert dargestellt: Prozesse, Systeme</article-title>
          , Technologien. Springer-Verlag (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. Do¨hring,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Heublein</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.:</surname>
          </string-name>
          <article-title>Anomalies in Rule-Adapted Workflows - A Taxonomy and Solutions for vBPMN</article-title>
          .
          <source>In: Proceedings of the 16th European Conference on Software Maintenance and Reengineering</source>
          , Szeged, Hungary, IEEE (
          <year>2012</year>
          )
          <fpage>117</fpage>
          -
          <lpage>126</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Wagelaar</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Van Der Straeten</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Deridder</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Module superimposition: a composition technique for rule-based model transformation languages</article-title>
          .
          <source>Software and Systems Modeling</source>
          <volume>9</volume>
          (
          <year>2010</year>
          )
          <fpage>285</fpage>
          -
          <lpage>309</lpage>
          10.1007/s10270-009-0134-3.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Popp</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Raneburger</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kaindl</surname>
          </string-name>
          , H.:
          <article-title>Tool support for automated multi-device GUI generation from discourse-based communication models</article-title>
          .
          <source>In: Proceedings of the 5th ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS '13)</source>
          , New York, NY, USA, ACM (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Raneburger</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Popp</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kaindl</surname>
          </string-name>
          , H.:
          <article-title>Model-driven transformation for optimizing PSMs: A case study of rule design for multi-device GUI generation</article-title>
          .
          <source>In: Proceedings of the 8th International Joint Conference on Software Technologies (ICSOFT'13)</source>
          ,
          <source>SciTePress (July</source>
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>