<!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>
      <journal-title-group>
        <journal-title>March</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Towards the Usage of Object-Aware Process Variants in Multiple Autonomous Organisations</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Philipp Hehnle</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Manfred Reichert</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute of Databases and Information Systems, Ulm University</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2022</year>
      </pub-date>
      <volume>1</volume>
      <issue>2024</issue>
      <fpage>0000</fpage>
      <lpage>0003</lpage>
      <abstract>
        <p>Managing similar software products and thereby reducing costs has been subject to research in the field of Software Product Line Engineering (SPLE). In our previous work, we applied the concepts of SPLE to activity-centric processes. Although research was conducted to manage variants of object-aware processes, there are still open challenges. In this paper, we address the challenge of managing objectaware process variants in autonomous organisations, which run their information systems separately.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Business Process Management</kwd>
        <kwd>Process Configuration</kwd>
        <kwd>Process Variability</kwd>
        <kwd>Software Reuse</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        implements the data-centric process management paradigm. There are object types and their
corresponding object behaviours. The latter are specified in terms of lifecycle processes which
comprise states and state transitions. At runtime, the object types are instantiated with their
lifecycle processes. Activities with user forms are generated when a state is reached in which
data is required and activities are completed (i.e. the process continues) when the required data
becomes available (i.e. the user has entered the object attributes). Thus, the progress of a lifecycle
process is data-driven and determined by changes of the object attributes. PHILharmonicFlows
is a framework for object-aware process management. In [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], and [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], an object-aware and
process-aware information system (OPAIS) is presented as a proof-of-concept implementation of
PHILharmonicFlows. While there have been approaches dealing with variants in activity-centric
processes, only little research covers variants in OPAISs. The work in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] deals with variants
in one OPAISs. However, the same process can be operated in variants in diferent autonomous
organisations that run their OPAIS separately. The management of process variants in separate
OPAISs remains an open challenge, which is addressed in this paper.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Related Work</title>
      <p>This section presents an approach to deal with variants in OPAISs as well as core concepts of
SPL Engineering.</p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], an approach is presented for coping with process variants in OPAISs. At design time,
when evolving a process in an OPAIS (e.g. adding or removing attributes from an object or
updating a lifecycle process) the changes are logged rather than propagated to the process in
production. As soon as the changes need to be deployed to production, the logs created during
design time can be replayed, i.e. propagating the changes to production. When developing
various variants of a process, the base process containing the commonalities is copied by
replaying the corresponding logs. Each copy of the base process is the starting point for a
variant where the variant-specific changes are applied to. When the base process is altered, the
changes can be applied to all variants by replaying the logs triggered by the changes to the base
process. Certainly, this approach facilitates the development of variants and the propagation
of common changes. However, the approach neglects that autonomous organisations that
run process variants will most likely have physically independent hardware/OPAIS instances.
Therefore, the logs need to be distributed among various OPAIS instances. Furthermore, the
approach assumes that each variant is used once. However, multiple organisation might use the
same variant each on their separate OPAIS instance. The logs should not be copied but referenced
so that changes to a variant can be performed centrally and applied to all organisations that use
the same variant. Moreover, an organisation might use a combination of variants instead of
creating a new variant from scratch or use an outdated version of a variant while the variant
has been updated centrally, i.e. diferent versions of a variant might be in production. During
bug analysis, it becomes necessary to rebuild a specific version of a variant of an organisation.
      </p>
      <p>
        Feature models [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] describe software products in terms of their features by outlining which
features are mandatory, optional, and which features require or exclude each other.
      </p>
      <p>
        Configuration management in SPL Engineering [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] deals with managing the versions of the
common core artefacts as well as the derived software products over time. In contrast, version
control tools for configuration management in software engineering only manage one software
product over time. In [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], a Divide &amp; Conquer approach for configuration management is
proposed that divides the challenge in sub-challenges and solves them with the use of existing
version control tools from software engineering.
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Research Direction</title>
      <p>This section presents an approach to deal with variants in OPAIS of autonomous organisations.
First, a real-world example is described which serves as motivation. Then, requirements are
elicited based on the example. Finally, an approach satisfying these requirements is sketched.
icpiaaDlliuptiraeirnsk,gintahgecpopoerrpomecrieatstaisopnfpolwricicathhtieoGcnkerionmfgacnrtahmfetsuspnpeiecr--- +comOpAabpnjepycNlitcaaTmtyioepnes FilleOdbijnect LifeAcpyDpcelliceciasPitorioonncesses ARcecjeepctteedd
sapoasnrleisgdwhttaolsyosautduradppiertedev.diToahunisds wpsiromorckpelsi[fies1d]i.sfIopnricmGtuecrroemdmai-nn +comm1.e.nrcialReg+islitceernNCsoae.rPlate Filled in DeCcaisrion ARcecjeepctteedd
municipalities craftspersons may apply for a
special parking permit which allows them to Figure 1: Object-Aware Process
park in zones of the city where citizens have to pay or where parking is not permitted. The
object-aware process for checking this application is depicted in Figure 1. The applicant must
provide information about her company and the company’s cars for which the parking permit
shall be valid (cf. object types on the left-hand side). On the right-hand side, the lifecycle
processes for the object types are shown. Diferent municipalities might need adaptions to the
base process (cf. Figure 1) which results in variants. Some municipalities might require the
applicant to submit pictures of the cars to prevent issuing parking permits for private cars. In
other municipalities, information about the cars is not required at all. Then, the parking permit
is valid for whatever car it is situated in. German municipalities are autonomous organisations,
which run their information systems separately.</p>
      <p>Based on the example, the requirements are deduced for managing variants in OPAISs of
autonomous organisations.</p>
      <p>R1: Each organisation must be able to select a combination of adaptions in conjunction with
the base process and build (i.e derive) a process variant.</p>
      <p>R2: Multiple organisations may derive the same process variant.</p>
      <p>R3: Adaptions need to be managed centrally in that changes to them can be propagated easily
to all process variants that are using these adaptions.</p>
      <p>R4: Not every combination of adaptions may be valid. It needs to be evident what adaptions
exclude each other.</p>
      <p>R5: As the base process and the adaptions evolve, not every organisation may want to apply
the updates.</p>
      <p>R6: For bug analysis, it needs to be evident which organisation uses which version and
adaptions of the base process in order to rebuild and analyse the corresponding variant.</p>
      <p>
        Using concepts of SPL Engineering, namely feature models [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] and the Divide &amp; Conquer
approach for configuration management proposed in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], it becomes possible to satisfy the
      </p>
      <p>A
.
g
fi
n
o
C
e
s
a
B
V1</p>
      <p>V2
V1
BOapstieo:nVs:2 L5:[+Car]
- Adaption 1 Adapt1: V1</p>
      <p>V3
1
.t
p
a
d
A
V1
V2
L3:[-Car]</p>
      <p>V1
2
.t
p
a
d
A</p>
      <p>L1:[+Picture]
requirements. The base process and every adaption are stored as logs each in a central repository
under version control. Thereby, changes due to the evolution of the base process and the
adaptions can be applied centrally. Every organisation has a configuration that stores the
version of the base process and the selected adaptions. During derivation, the referenced logs
are fetched and replayed in the organisation’s OPAIS instance. As each repository is under
version control, older version of the logs can be used which allows the organisations to stay
on older versions of the variants. Furthermore, for bug analysis, the configuration of each
organisation is under version control as well. Consequently, to analyse a bug a specific version
of a variant of an organisation can be restored and inspected. Figure 2 is an example for
configuration management and shows the repositories and their version history over time.
It reveals that Adaption 1 in Version V2 uses log L3 to remove the object type Car, whereas
Adaption 2 in Version V1 uses log L1 to add the object type Picture. Obviously, Adaptions 1 and
2 cannot be co-selected as the picture object type needs a car object type it belongs to, which
is removed in Adaption 1. Figure 3 imposes the base process with its adaptions in a feature
model, which indicates that Adaptions 1 and 2 are mutually exclusive. Furthermore, Figure
2 represents the evolution of the base process model (viz. three versions) and the exemplary
repository of one organisation, which stores a configuration (Config. A) to derive a process
variant by specifying that the base process in version V2 and Adaptation 1 is selected.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Conclusion and Outlook</title>
      <p>This paper deals with managing variants in OPAISs in that multiple autonomous organisations
may derive process variants from a base process by selecting and combining adaption to the
base process whereas diferent versions of both the base process and the adaptions may be used.
Consequently, there may be a variety of process variants and versions that need to be tracked.
This work presents an approach that applies concepts of SPL Engineering to OPAIS variants in
order to keep track of the process variants and their versions.</p>
      <p>
        In future work, we plan to assemble a tool chain that is able to automatically derive and
keep track of process variants in OPAIS by using, extending, and integrating tools from SPL
Engineering, and, where necessary, creating new tools. Furthermore, black-box-activities [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]
implementing business logic as well as customised forms (i.e. opposed to generated forms) need
to be considered in the future.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>P.</given-names>
            <surname>Hehnle</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Reichert</surname>
          </string-name>
          ,
          <article-title>Handling Process Variants in Information Systems with Software Product Line Engineering</article-title>
          , in: 2023
          <source>IEEE 25th Conference on Business Informatics (CBI)</source>
          ,
          <year>2023</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>A.</given-names>
            <surname>Hallerbach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Bauer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Reichert</surname>
          </string-name>
          ,
          <article-title>Capturing variability in business process models: the Provop approach</article-title>
          ,
          <source>Journal of Software Maintenance and Evolution: Research and Practice</source>
          <volume>22</volume>
          (
          <year>2010</year>
          )
          <fpage>519</fpage>
          -
          <lpage>546</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Dreiling</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Gottschalk</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Rosemann</surname>
            ,
            <given-names>M. H.</given-names>
          </string-name>
          <string-name>
            <surname>Jansen-Vullers</surname>
          </string-name>
          ,
          <article-title>Configurable Process Models as a Basis for Reference Modeling</article-title>
          , in: Business Process Management Workshops, volume
          <volume>3812</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2006</year>
          , pp.
          <fpage>512</fpage>
          -
          <lpage>518</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>L.</given-names>
            <surname>Bass</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Clements</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kazman</surname>
          </string-name>
          ,
          <article-title>Software architecture in practice, Always learning, 3</article-title>
          . ed. ed.,
          <source>Addison-Wesley</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>S.</given-names>
            <surname>Deelstra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Sinnema</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Bosch</surname>
          </string-name>
          ,
          <article-title>Product derivation in software product families: A case study</article-title>
          ,
          <source>Journal of Systems and Software</source>
          <volume>74</volume>
          (
          <year>2005</year>
          )
          <fpage>173</fpage>
          -
          <lpage>194</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>C.</given-names>
            <surname>Kästner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Apel</surname>
          </string-name>
          ,
          <article-title>Feature-Oriented Software Development, in: Generative and Transformational Techniques in Software Engineering IV: International Summer School</article-title>
          , GTTSE 2011, Springer,
          <year>2013</year>
          , pp.
          <fpage>346</fpage>
          -
          <lpage>382</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S.</given-names>
            <surname>Steinau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Marrella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Andrews</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leotta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mecella</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Reichert, DALEC: A framework for the systematic evaluation of data-centric approaches to process management software</article-title>
          ,
          <source>Software &amp; Systems Modeling</source>
          <volume>18</volume>
          (
          <year>2019</year>
          )
          <fpage>2679</fpage>
          -
          <lpage>2716</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>V.</given-names>
            <surname>Künzle</surname>
          </string-name>
          , M. Reichert,
          <article-title>PHILharmonicFlows: towards a framework for object-aware process management</article-title>
          ,
          <source>Journal of Software Maintenance and Evolution: Research and Practice</source>
          <volume>23</volume>
          (
          <year>2011</year>
          )
          <fpage>205</fpage>
          -
          <lpage>244</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>C. M.</given-names>
            <surname>Chiao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Kuenzle</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Andrews</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Reichert</surname>
          </string-name>
          ,
          <article-title>A Tool for Supporting Object-Aware Processes</article-title>
          ,
          <source>in: 2014 IEEE 18th International Enterprise Distributed Object Computing Conference Workshops and Demonstrations</source>
          ,
          <year>2014</year>
          , pp.
          <fpage>410</fpage>
          -
          <lpage>413</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>K.</given-names>
            <surname>Andrews</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Steinau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Reichert</surname>
          </string-name>
          ,
          <article-title>A Runtime Environment for Object-Aware Processes</article-title>
          , in: International Conference on Business Process Management,
          <year>2015</year>
          , pp.
          <fpage>6</fpage>
          -
          <lpage>10</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>S.</given-names>
            <surname>Steinau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Andrews</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Reichert</surname>
          </string-name>
          ,
          <article-title>A Modeling Tool for PHILharmonicFlows Objects and Lifecycle Processes</article-title>
          , in: International Conference on Business Process Management,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>K.</given-names>
            <surname>Andrews</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Steinau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Reichert</surname>
          </string-name>
          ,
          <article-title>Enabling Process Variants and Versions in Distributed Object-Aware Process Management Systems</article-title>
          ,
          <source>in: Information Systems in the Big Data Era</source>
          , Springer,
          <year>2018</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>15</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>K. C. Kang</surname>
            ,
            <given-names>S. G.</given-names>
          </string-name>
          <string-name>
            <surname>Cohen</surname>
            ,
            <given-names>J. A.</given-names>
          </string-name>
          <string-name>
            <surname>Hess</surname>
            ,
            <given-names>W. E.</given-names>
          </string-name>
          <string-name>
            <surname>Novak</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Peterson</surname>
          </string-name>
          ,
          <string-name>
            <surname>Feature-Oriented Domain Analysis (FODA) Feasability</surname>
            <given-names>Study</given-names>
          </string-name>
          ,
          <source>Technical Report</source>
          ,
          <year>1990</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>P.</given-names>
            <surname>Clements</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Northrop</surname>
          </string-name>
          ,
          <article-title>Software product lines: Practices and patterns</article-title>
          ,
          <source>SEI series in software engineering</source>
          , 7. print ed.,
          <source>Addison-Wesley</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>C. W.</given-names>
            <surname>Krueger</surname>
          </string-name>
          ,
          <article-title>Variation Management for Software Production Lines</article-title>
          ,
          <source>in: Software Product Lines</source>
          , volume
          <volume>2379</volume>
          of Lecture Notes in Computer Science, Springer Nature,
          <year>2002</year>
          , pp.
          <fpage>37</fpage>
          -
          <lpage>48</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>