<!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>Elastic Process Optimization and Scheduling in the Cloud</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Philipp Waibel</string-name>
        </contrib>
      </contrib-group>
      <pub-date>
        <year>2016</year>
      </pub-date>
      <fpage>11</fpage>
      <lpage>14</lpage>
      <abstract>
        <p>Business processes in today's industry are getting more complex and resource-intensive from day to day. Cloud computing offers methods and technologies that can help managing this steadily increase of complexity in the business process executions. A new class of Business Process Management Systems (BPMS), called elastic BPMS (eBPMS), is using Cloud computing resources for the enactment of so-called Elastic Processes (EP). Those eBPMS are combining traditional BPMS with Cloud controllers and are thus able to use Cloud resources for the EP enactment in an ad hoc manner. This paper focuses on our current work on a research eBPMS called ViePEP and discusses open research questions in the field of eBPMS. 1 TU Wien, Distributed Systems Group, Argentinierstrasse 8, 1040 Wien, p.waibel@infosys.tuwien.ac.at</p>
      </abstract>
      <kwd-group>
        <kwd>Elastic Processes</kwd>
        <kwd>Elastic BPMS</kwd>
        <kwd>ViePEP</kwd>
        <kwd>Business Process</kwd>
        <kwd>Cloud Computing</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>The focus of Business Process Management (BPM) is the management and optimization
of companies’ business processes. The daily work with business processes is supported
by so-called Business Process Management Systems (BPMS). Such a BPMS supports the
customer during the complete BPM lifecycle, including the definition of a business process
and its enactment [We12]. A business process is a composition of several human tasks as
well as software tasks that have to be executed on computational resources. Furthermore,
the design of a business process can range from simple sequential executed process steps
to more complex processes with loops, splits or choices [va03]. A special case of business
processes, called workflows, are processes that only consist of software services [Ho15].
Workflow execution requests may occur in a regular interval, as well as in an ad hoc
manner. Especially in the latter case, the rapidly changing resource requirements can lead to a
suboptimal usage of the available computational resources (e.g., CPU or RAM). This may
lead to over-provisioning, where more resources than needed are available, or to
underprovisioning, where less resources than needed are available and the system may not be
able to fulfill the request in time [Sc15].</p>
      <p>Cloud computing offers a promising solution for the optimal usage of computational
resources. By using well-known basic principles of Cloud computing, like leasing and
releasing computational resources on-demand, BPMS are able to elastically react to rapidly
changing resource requirements. A BPMS that is using Cloud resources to execute
workflows is called an elastic BPMS (eBPMS) and the corresponding business processes are
called elastic processes (EPs) [Du11]. Besides the management of the process lifecycle,
an eBPMS is also a Cloud controller that leases and release Cloud resources, deploys
services on them, and starts the services execution according to a schedule [Ho16].
This work-in-progress paper aims at presenting our former work on an eBPMS called
ViePEP and discusses further open research questions in the field of eBPMS.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Vienna Platform for Elastic Processes</title>
      <p>ViePEP (Vienna Platform for Elastic Processes) is a state-of-the-art eBPMS solution that
combines the functionalities of a traditional BPMS with a Cloud controller that is able to
enact software services on Cloud resources in a cost-efficient way [Sc13a]. This is done
by continuous monitoring, optimization and scheduling of the available Cloud resources,
in form of Virtual Machines (VMs), and service enactment while considering predefined
Service Level Agreements (SLAs) to guarantee a certain level of Quality of Service (QoS).
As can be seen in the Figure 1, ViePEP consists of five top level entities. The first entity, the
Client, is responsible for the modeling of the business process, the definition of optional
SLAs and the issuing of business process enactment requests. The second entity, called
BPMS VM, is the core of ViePEP. It is responsible for the enactment of the process and
the optimization of the Cloud resources by solving an optimization problem in continuous
intervals. The BPMS VM is also responsible for the leasing and releasing of VMs on
Cloud resources and the execution of Backend VMs on them. Those Backend VMs are
then responsible for the execution of services that represent the process steps. Finally, the
Message Queue is used by the Backend VMs to send monitoring information to the BPMS
VM . The Service Repository hosts the services that can be deployed on Backend VMs.
Due to space constraints we can not discuss each entity in greater detail, but the interested
reader can find a more detailed description in [Sc13a].
3</p>
    </sec>
    <sec id="sec-3">
      <title>Research Questions</title>
      <p>Our former work on ViePEP raises several research questions, which are discussed in the
following.</p>
      <p>In the recent years the concept of Dockers significantly gained popularity. Compared to
a traditional VM, Docker is a more light-weight system, which can be used to execute
services that need less additional computational resources by surpassing the need of an</p>
      <p>Elastic Process Optimization and Scheduling in the Cloud 13
own operating system and is thus cheaper to execute than a VM. At the current status,
ViePEP executes services on VMs. By updating the used optimization problem to allow
Docker-based service enactment, the overall execution costs can be reduced even further.
To be able to optimize the usage of the Cloud resources as cost-efficient as possible while
considering predefined SLAs, ViePEP analyzes the workflow including the process steps
that are not yet executed. During this analysis, ViePEP tries to predict and schedule the
execution of the upcoming process steps. This analysis raises two new research questions:
The first question concerns the execution duration of a process step. Currently ViePEP
uses Ordinary Least Squares Linear Regression, a 2-dimensional regression, to predict the
execution duration of a process step. However, for many real-world services, this
prediction mechanism is not sufficient and a multi-dimensional resource prediction is needed.
The second question concerns the execution of a workflow. For a sequential workflow, the
scheduling is straightforward. However, real-world workflows can be more complex and
include XOR-gates and loops. In the first case, an analyzing software cannot predict which
route the actual execution will take. Here, ViePEP considers the route with the longest
execution duration and schedules according to these times, i.e., ViePEP applies a worst-case
approach. Furthermore, if the process model contains loops, ViePEP cannot predict how
often this loop will be taken. At the current state, ViePEP considers a predefined amount
of loop rounds. By using stochastic analyzes both solutions can be enhanced. This means
that a “smart” BPMS can learn from previous process executions and with this
information, predict how often the loop will be executed or which branch of the XOR-gate will be
taken.</p>
      <p>Finally, the architecture of ViePEP can be extended by changing the central component
BPMS VM (see Section 2) into a decentralized component. This adds the possibility to
distribute the load, which is currently processed at one instance of the BPMS VM, onto
several BPMS VM instances, so the BPMS VM does not become a bottleneck.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Related Work</title>
      <p>To the best of our knowledge, relatively little research has been done in the field of eBPMS,
as well as scheduling and resource usage of EPs. Besides our own work [Ho16, Sc13a,
Ho13, Sc13b, HSD13], the work of Cai et al. [CLG13], Wei and Blake [WB14] and Bessai
et al. [Be13] are worth mentioning. For a full discussion of the related work, we refer
to [Sc15, Ho16].</p>
      <p>Similar to ViePEP, in the work of Cai et al. [CLG13] the authors define an optimization
model that provides a cost-efficient Cloud resource usage for EPs. However, their work
only considers single processes. Therefore, their approach is not able to share resources
among different processes like it is done by ViePEP. Bessai et al. also provide algorithms
for cost- and time-efficient scheduling of business processes in Cloud computing
environments [Be13]. In the work of Wei and Blake [WB14], the authors also provide algorithms
for using Cloud resources for the execution of business processes. In comparison to the
work of Bessai et al., they also allow QoS constraints. However, in comparison to ViePEP,
they do not consider deadline constraints.</p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgment</title>
      <p>This work is partially supported by the Commission of the European Union within the
CREMA H2020-RIA project (Grant agreement no. 637066).</p>
      <p>Bessai, Kahina; Youcef, Samir; Oulamara, Ammar; Godart, Claude: Bi-criteria strategies
for business processes scheduling in cloud environments with fairness metrics. In: 7th Int.</p>
      <p>Conf. on Research Challenges in Information Science. IEEE, pp. 1–10, 2013.
[Be13]
[Ho13]
[Ho16]
[Sc13b]
[Sc15]
[va03]
[WB14]</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <source>[Du11] [Ho15] [Sc13a] Schulte</source>
          , Stefan; Hoenisch, Philipp; Venugopal, Srikumar; Dustdar,
          <article-title>Schahram: Introducing the Vienna Platform for Elastic Processes</article-title>
          .
          <source>In: Performance Assessment and Auditing in Service Computing Workshop at 10th Int. Conf. on Service Oriented Computing</source>
          . volume
          <volume>7759</volume>
          <source>of LNCS</source>
          . Springer, pp.
          <fpage>179</fpage>
          -
          <lpage>190</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Schulte</surname>
          </string-name>
          , Stefan; Schuller, Dieter; Hoenisch, Philipp; Lampe, Ulrich; Dustdar, Schahram; Steinmetz, Ralf:
          <article-title>Cost-Driven Optimization of Cloud Resource Allocation for Elastic Processes</article-title>
          .
          <source>Int. Journal of Cloud Computing</source>
          ,
          <volume>1</volume>
          (
          <issue>2</issue>
          ):
          <fpage>1</fpage>
          -
          <lpage>14</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Schulte</surname>
          </string-name>
          , Stefan; Janiesch, Christian; Venugopal, Srikumar; Weber, Ingo; Hoenisch, Philipp: Elastic Business Process Management:
          <article-title>State of the Art and Open Challenges for BPM in the Cloud</article-title>
          .
          <source>Future Generation Computer Systems</source>
          ,
          <volume>46</volume>
          :
          <fpage>36</fpage>
          -
          <lpage>50</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>van der Aalst</surname>
          </string-name>
          , Wil M. P.; ter Hofstede,
          <string-name>
            <surname>Arthur H. M.; Kiepuszewski</surname>
            , Bartek; Barros,
            <given-names>Alistair P.</given-names>
          </string-name>
          : Workflow Patterns.
          <source>Distributed and Parallel Databases</source>
          ,
          <volume>14</volume>
          (
          <issue>1</issue>
          ):
          <fpage>5</fpage>
          -
          <lpage>51</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Wei</surname>
            , Yi; Blake,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Brian: Proactive virtualized resource management for service workflows in the cloud</article-title>
          .
          <source>Computing</source>
          ,
          <volume>96</volume>
          (
          <issue>7</issue>
          ):
          <fpage>1</fpage>
          -
          <lpage>16</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <source>Springer, 2nd edition</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>