<!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>CRISTAL: Collection of Resource-centrIc Supporting Tools And Languages?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Cristina Cabanillas</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Adela del-R o-Ortega</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Manuel Resinas</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Antonio Ruiz-Cortes</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universidad de Sevilla</institution>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In this demo, we introduce CRISTAL (Collection of ResourcecentrIc Supporting Tools And Languages), a tool suite aimed at improving the human resource management capabilities of current Business Process Management Systems (BPMSs), covering the design and enactment phases of the business process (BP) life cycle. The central element is Resource Assignment Language (RAL), a Domain Speci c Language (DSL) for specifying resource assignments in process models. RAL's strong analysis capabilities enable the automated resolution of resource assignment expressions both (i) at design time, serving for post-design analysis to nd and correct potential problems prior to execution, and (ii) at run time, in order to execute the BP in an existing BPMS considering the RAL assignments for resource allocation. The resource assignments can be directly modelled in a Business Process Modelling Notation (BPMN) diagram, or speci ed by means of a RACI matrix. In the latter case, CRISTAL can take all the RACI information automatically and introduce it into a resource-unaware BPMN model at any moment, resulting in a RACI-aware BP model (and, thus, a resource-aware BP model).</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Background. RAL and RACI matrices</title>
      <p>
        RAL is a DSL speci cally developed to express resource assignments for the
activities of a BP [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The language was designed to bridge the gap between
BP models and organizational models, and to exceed the scope of existing
approaches. RAL expressions cover from simple assignments based on speci c
members of the company, to complex assignments containing access-control
constraints (e.g. Segregation of Duty -SoD-) between activities, as well as compound
expressions. As can be seen in the following examples, its syntax is close to
natural language, which increases its understandability:
RAL 1: IS Samuel
RAL 2: NOT (IS PERSON WHO DID ACTIVITY CreateResolutionProposal)
RAL 3: (HAS ROLE DocumentWriter) OR (HAS POSITION ACDocumentSigner)
? This work has been partially supported by the European Commission (FEDER),
Spanish Government under project SETI (TIN2009-07366); and projects THEOS
(TIC-5906) and ISABEL (TIC-2533) funded by the Andalusian Local Government.
      </p>
      <p>
        We provided RAL with formal semantics based on Description Logics (DLs)
in order to be able to automatically solve RAL expressions. It also enabled us to
bene t from operations implemented in DL reasoners to analyse BPs in terms of
how resources are being managed. RAL's semantics now cover both the design
time [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and the run time phases of the BP life cycle [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], meaning that:
{ RAL assignments can be automatically solved at design time. Accuracy is
not possible for those expressions requiring run-time information though,
since some data are missing (e.g. the expressions related to the person who
did a certain activity). Besides, the design-time resource-related analysis of
RAL expressions automates the answering of questions such as (i) who are
the potential performers of each BP activity?; or (ii) what is the potential
set of activities each person of an organization can be allocated at run time?
{ Regarding run time, resource assignments de ned with RAL can be
automatically solved during execution to obtain the real potential performers of
an activity given the speci c run-time information. The allocation method
then depends on the support provided by the Business Process Management
System (BPMS) in which the process is executed.
      </p>
      <p>
        As explained in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], RAL can be easily used in conjunction with BPMN 2.0
because it can be directly integrated into it by using the resource assignment
mechanisms provided by the standard [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Nonetheless, it could also be integrated
into other work ow (WF) modelling notations, provided that they o ered a
exible way to de ne resource assignments in a BP model.
      </p>
      <p>
        Furthermore, RAL can also be used together with RACI matrices to specify
resource assignments in a BP model. RACI matrices constitute an alternative
for enhancing the management of human resources in an organization,
providing detailed information about the degree of involvement of the members of the
company in the activities carried out within it [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. This degree of involvement
is speci ed by means of the so-called RACI roles, which usually are:
Responsible (R), Accountable (A), Consulted (C) and Informed (I). This extends the
traditional notion of resource assignments in BP models which only de nes the
resource that is in charge of the activity.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>CRISTAL's Overview. Demonstration Guideline</title>
      <p>CRISTAL is composed of several tools, to be named RACI2BPMN, DT RAL
Solver and RT RAL Solver, which facilitate the de nition and analysis of
resources in BP models. These tools can be used separately or sequentially.
Figure 1 provides an overview of the system, in which the tools are represented
in rounded rectangles, their inputs and outputs are represented by documents
linked with dashed arrows, and the possible interconnection between tools is
done by using solid arrows. One possible way to use CRISTAL's tools is the
following.</p>
      <p>
        We can use Oryx [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] or any other process editor supporting BPMN to build
a resource-unaware BPMN model, i.e. a process model that does not contain
RACI
Editor *
      </p>
      <p>BPMN Editor</p>
      <p>(Oryx)
BPMN w/o
resources</p>
      <p>BPMN w/
resources
BPMS
(Activiti)
Resource
Modeller</p>
      <p>RACI
model</p>
      <p>RACI2BPMN
Users</p>
      <p>Activiti
Explorer
Process
Modeller
Organizational</p>
      <p>model
DT RAL
Solver</p>
      <p>RT RAL</p>
      <p>Solver
Execution</p>
      <p>History
any resource assignments. Then, with CRISTAL's RACI Editor we can build a
RACI matrix with the responsibility assignments we aim to apply to the process
activities. In order to generate accurate resource assignments for the process,
the RACI matrix may need to be extended with some binding information.
CRISTAL's RACI Editor is a Web application that allows the de nition of both
the RACI matrix and the binding information. It is currently under development.</p>
      <p>With these inputs, the RACI2BPMN tool can automatically turn the
resourceunaware process model into a RACI-aware BPMN model, i.e. it contains the
assignments from the RACI matrix and the binding information. The
resourcerelated information in the model is expressed with RAL. The resulting BP model
can be opened in any editor that supports BPMN 2.0 (e.g. Oryx), so both the
process model and the resource assignments can be modi ed as desired.</p>
      <p>The next tool to be executed may be DT RAL Solver, which allows us to
automatically analyse the RAL expressions associated to the activities of a
RALaware BP model. Among other operations, this tool automatically calculates the
set of potential performers for each activity in the process model. To do so, the
tool must receive the OWL description of an organizational model together with
the RAL-aware BP model.</p>
      <p>Finally, RAL-aware BP models can also be opened in an open-source BPMS
called Activiti1, in which we have previously integrated the RT RAL Solver tool.
The goal of this tool is to automatically solve the RAL expressions at run time.
Then, the proper activities are automatically o ered to the potential performers
resulting from the assignments at run time, to proceed with the allocation of the
tasks to speci c resources. The execution history is stored in execution logs.</p>
      <p>The low-level description of CRISTAL's architecture can be found at www.
isa.us.es/cristal/.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Maturity and Signi cance to the BPM Field</title>
      <p>
        The DT RAL Solver tool was developed in 2011, as a prototype to demonstrate
how DL reasoners could be used to automatically solve RAL expressions at
design time [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Driven by research results, it was then extended to be provided
with the proper implementation to solve them considering run-time data as well.
In the current version, RT RAL Solver is still a prototype.
      </p>
      <p>
        The RACI2BPMN tool has been recently developed from research results
on how to combine BPs and RACI matrices, given that the resource-related
information provided by the matrices is greater than the information that today's
BP modelling notations allow to specify [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. The main features currently provided
by CRISTAL are the following:
1. Automated generation of a BP model with complete information
about the RACI roles involved in the BP. The model can be opened
and modi ed in any modelling tool supporting BPMN, since it is
BPMNcompliant. In addition, it is prepared to be directly executed in a BPMS.
2. Design-time automated resolution of all the RAL expressions
dened in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. As a result, the potential performers of the activities of a BP
model can be automatically inferred from their RAL expressions at design
time. The design-time features are available as a plug-in for Oryx [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
3. Run-time automated resolution of most of the RAL expressions
de ned in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Only those assignments related to information coming from
data objects of the process are not yet implemented, since the mechanism
to access data is ad-hoc to the BPMS in which the process is run, and thus
we did not consider this a fundamental feature to include in the prototype.
Run-time implementation is delivered as a library for Activiti, a light-weight
open-source WF and BPMS.
4. Flexibility in the organizational model against which RAL expressions
are solved. The only requirement is that the model must comply with the
organizational meta model used by RAL [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
5. Usability. In order for module RACI2BPMN to be executed, the user must
ll in the RACI matrix, and con gure the binding information according to
his/her needs. The rest of the procedure is automatic. As for RAL Solver, the
use of both the plug-in for Oryx and the code for Activiti is straightforward.
1 http://activiti.org/
      </p>
      <p>
        For the former, a few instructions can be found at http://www.isa.us.es/
cristal/. The latter is totally transparent to the user of the BPMS.
6. Extensibility capabilities. More analysis operations over RAL
assignments can be easily added by composing operations already implemented
by current DL reasoners (e.g. HermiT, or Pellet), as stated in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
7. Re-usability. The core of the RAL Solver tool (i.e. RAL Analyser) can be
used in other platforms, since it provides a simple and well-de ned interface.
      </p>
      <p>However, CRISTAL has also some limitations. The e ciency of complex
and/or compound resource assignments may not be good enough due to the
inference operations the DL reasoner has to perform.
3.1</p>
      <p>Signi cance to the BPM Field
CRISTAL o ers innovative features with respect to the (human) resource
management capabilities provided by current BPM notations and systems.</p>
      <p>First, to the best of our knowledge, RACI2BPMN is the rst tool focused on
the automated introduction of RACI information in a process model, generating
RACI-aware BP models that can be executed with no need of changes.</p>
      <p>Second, regarding RAL, the RAL Solver tool provides BP modelling
languages with a more expressive mechanism to assign resources to tasks.
Furthermore, as far as we know, RAL is the rst resource assignment language that
o ers automated analysis capabilities at design time that are built in the
language itself. As for run time, it is a fact that most of the BPMSs existing at
present have resource assignment mechanisms based basically on assigning users
or groups of users (sometimes also roles) to the BP activities (e.g. Activiti, jBPM,
Intalio|BPMS). Other tools such as YAWL are more expressive because they
are supported by a more powerful organizational meta model. However, YAWL
does not rely on a speci c language for resource assignments, and uses ad-hoc
mechanisms to assign resources and resolve the assignments instead. Therefore,
we believe RAL outperforms the current scope, both at design time and at run
time.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Availability 5</title>
    </sec>
    <sec id="sec-5">
      <title>Future Work</title>
      <p>Further information about RAL, the descriptions of the tools, user
instructions, and downloadable example les can be found at http://www.isa.us.
es/cristal. The source code and executable les are available on demand.
CRISTAL can be extended in di erent directions referring to resource
management in BPs. Some future work consists of adding the proper functionality to
detect at design time potential allocation problems that can arise at run time,
and which are derived from the control ow of the process, e.g. empty sets of
potential performers due to the de nition of a Binding of Duties (BoD) constraint
between two activities that belong to di erent branches of an XOR gateway.</p>
      <p>Another possible line to extend the tool is about dealing with data together
with resources, e.g. to automatically generate Access Control Lists (ACLs) from
a resource and data-aware BP model.</p>
      <p>The optimization of RAL Analyser is also part of planned work.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgements</title>
      <p>We want to thank ISA group's development team for the support provided,
especially Ana Belen Sanchez and Edelia Garc a.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>C.</given-names>
            <surname>Cabanillas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Resinas</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Ruiz-Cortes</surname>
          </string-name>
          ,
          <article-title>\RAL: A High-Level User-Oriented Resource Assignment Language for Business Processes,"</article-title>
          <source>in Business Process Management Workshops (BPD'11)</source>
          , pp.
          <volume>50</volume>
          {
          <issue>61</issue>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>C.</given-names>
            <surname>Cabanillas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Resinas</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Ruiz-Cortes</surname>
          </string-name>
          , \
          <article-title>De ning and Analysing Resource Assignments in Business Processes with RAL,"</article-title>
          <source>in ICSOC</source>
          , pp.
          <volume>477</volume>
          {
          <issue>486</issue>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>M.</given-names>
            <surname>Weske</surname>
          </string-name>
          ,
          <source>Business Process Management: Concepts</source>
          , Languages, Architectures. Springer,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <source>\BPMN 2</source>
          .
          <article-title>0," recommendation</article-title>
          ,
          <source>OMG</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>M.</given-names>
            <surname>Smith</surname>
          </string-name>
          , \
          <article-title>Role And Responsibility Charting (RACI)," in Project Management Forum (PMForum</article-title>
          ), p.
          <fpage>5</fpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>G.</given-names>
            <surname>Decker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Overdick</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Weske</surname>
          </string-name>
          , \
          <article-title>Oryx - an open modeling platform for the BPM community," in Business Process Management (BPM</article-title>
          ), pp.
          <volume>382</volume>
          {
          <issue>385</issue>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>C.</given-names>
            <surname>Cabanillas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Resinas</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Ruiz-Cortes</surname>
          </string-name>
          ,
          <article-title>\Automated Resource Assignment in BPMN Models using RACI Matrices,"</article-title>
          <source>in OTM Conferences (CoopIS'12)</source>
          , p. In press,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>