<!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>A Cloud-based Service-oriented Architecture for Business Process Modeling and Simulation</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Guglielmo Marconi University Viale Plinio</institution>
          ,
          <addr-line>44 00193, Rome</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Rome Tor Vergata Via del Politecnico</institution>
          ,
          <addr-line>1 00133, Rome</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The adoption of Modeling &amp; Simulation (M&amp;S) approaches is widely recognized as a valuable solution for enacting a timely analysis of business processes (BPs). Despite their relevance, the effective introduction of such approaches in the BP lifecycle is still limited, due to the know-how and skills for building and implementing a simulation model and to the cost and effort for setting up and maintaining the execution platform. In this respect, this paper proposes a cloud-based architecture that exploits the M&amp;S as a Service (MSaaS) paradigm and containerization technology for the flexible and dynamic composition of M&amp;S services, so to allow business analysts to carry out an effortless and effective M&amp;Sbased BP analysis. An example case study dealing with an e-commerce scenario is also presented in order to show the actual application of the proposed approach.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>I. INTRODUCTION</p>
      <p>
        Modeling and Simulation (M&amp;S) is widely recognized as a
valuable solution to analyze the behavior of complex systems
and processes at both design time and operation time, in order
to assess their performance and evaluate design alternatives
from the early lifecycle stages. This work specifically focuses
on the use of M&amp;S for the analysis of Business Processes
(BPs). The BP management field particularly benefits from
the adoption of M&amp;S-based approaches, which allow business
analysts, enterprise managers and ICT specialists to get the
appropriate performance-oriented understanding of their BPs,
according to the desired or required level of abstraction, i.e.,
from the BP conceptual definition down to the technical BP
implementation and operation [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>Despite the acknowledged relevance of M&amp;S approaches,
their actual introduction in the BP lifecycle is still limited,
mostly due to the significant know-how, effort and cost that
are needed to build, implement, deploy and execute simulation
models of BPs.</p>
      <p>In order to overcome such limitations and provide a more
effective adoption of M&amp;S approaches for BP analysis, this
paper proposes a solution based on the M&amp;S as a Service
(MSaaS) paradigm, which brings the benefits of
serviceoriented architectures and cloud computing into the M&amp;S field,
so to enhance interoperability, composability, reusability and
reduce the effort and cost of M&amp;S.</p>
      <p>MSaaS platforms enable the flexible and dynamic
composition of M&amp;S services that provide on demand access to M&amp;S
solutions to be used both at definition time, when the BP is
specified by use of a BP modeling language (e.g., BPMN
Business Process Model and Notation), and at operation time,
when the BP execution is monitored and proper decisions have
to be taken in case of a performance downgrade, so to get a
performance improvement.</p>
      <p>This paper contribution further enhances standard MSaaS
capabilites by exploiting model-driven development (MDD)
approaches, which allow to significantly reduce the effort
of developing, deploying and executing simulations by
focusing on the use of formal models and automated model
transformations, as illustrated in [2] and [3].</p>
      <p>In this respect, the main contribution of this paper is the
specification of a platform, denoted as BP-MSaaS, which is
founded on the use of:
a cloud computing infrastructure, to outsource and
to dynamically configure the required hardware and
software platform without the necessity of building
and maintaining costly internetworked computational
nodes;
a model-driven development (MDD) approach, to
significantly reduce the effort of building, implementing,
deploying and executing BP simulation models;
a microservice paradigm, a granular service oriented
architecture which allows to compose the desired
M&amp;S capability by integrating loosely coupled
selfcontained services that cooperate by use of a standard
communication protocol [4];
a containerization method, which allows to wrap
services in a self-contained runtime environment,
in order to ease their cloud-based deployment and
execution. Specifically, this paper adopts Docker [5],
an open-source containerization infrastructure that
provides native integration with various cloud service
providers, such as Microsoft Azure [6] and Amazon
AWS [7].</p>
      <p>It is worth noting that the proposed architecture is flexible
enough to be effectively used not only in the BP management
domain, as discussed in Section III.</p>
      <p>In order to provide an actual understanding of the proposed
contribution, the paper also presents its application to an
example e-commerce scenario.</p>
      <p>The reminder of this paper is structured as follows: Section
II outlines the literature review and summarizes the identified
open issues that limit the effective adoption of M&amp;S-based
BP analysis. Section III illustrates the proposed BP-MSaaS
platform, which is described from both an architectural and
a behavioral perspective. Section IV presents an application
scenario and provides additional implementation details.
Finally, Section V gives concluding remarks.</p>
      <p>OPEN ISSUES IN BUSINESS PROCESS MODELING AND</p>
      <p>SIMULATION</p>
      <p>BP modeling and simulation is a widely considered and
analyzed research and development field. A complete and
rigorous investigation on methodologies, techniques and tools
can be found in [8]. An additional analysis on modeling
methods such as Gantt Chart, IDEF family methods, Colored
Petri-Net, Object Oriented methods, Workflow techniques is
provided in [9], while an overview on BPMN, BPEL4WS,
UML, Petri-Net can be found in [10], [11]. A quantitative
analysis and classification of BPMN, Flow Chart, EPC and
UML modeling languages, according to the Moody’s quality
criterion for a good diagram [12], is provided in [13], in which
the authors state that BPMN is the language with the highest
score, but still far from the maximum value.</p>
      <p>A key point emerging from the literature review is the need
to adopt approaches that consider modeling as a continuous
activity to be carried out throughout the business process
lifecycle, thus evidencing the strict correlation with other
activities and, in particular, with simulation. Such a correlation
is also discussed in [14], in which the authors present the
benefits that a multi-dimensional approach provides, in [15],
which presents methods to obtain a model suitable for business
process simulation, and in [16], in which simulation techniques
are presented as complementary to modeling, since they
separately consider dynamic and static aspects of a process,
respectively.</p>
      <p>
        Several authors reveal some limitations of current business
process modeling and simulation approaches, such as the lack
of focus on the actual IT platform that enacts the business
process model, and the semantic gap between conceptual and
simulation models [17], [18], [19], [20], [
        <xref ref-type="bibr" rid="ref18">21</xref>
        ]. In particular,
[20] points out that there is no commonly accepted conceptual
modeling technique for simulation.
      </p>
      <p>
        These limitations have been addressed in literature,
and strategies to overcome them have been presented,
such as multi-dimensional approaches [14], hybrid modeling
techniques with performance analysis and process optimization
[19], and model-driven approaches that aim at reducing the gap
between conceptual and simulation models [20], [
        <xref ref-type="bibr" rid="ref18">21</xref>
        ]. Indeed,
in [
        <xref ref-type="bibr" rid="ref18">21</xref>
        ] traditional modeling methods, such as BPMN, Flow
Chart, Gantt Chart, IDEF0, IDEF3, and UML are shown to
provide an abstract BP representation, which does not allow
to include those details required to enact a direct translation
into an executable simulation model. Thus, the authors propose
a model-driven framework that contributes to reduce the gap
between conceptual and simulation models. Also in [
        <xref ref-type="bibr" rid="ref19">22</xref>
        ] the
authors state that, due to the aforementioned semantic gap, the
conceptual model usually does not contain enough information
to directly allow simulation and thus a transformation approach
is required. In this respect, model-driven development is
considered both as a promising solution and as a challenge
[23].
      </p>
      <p>
        A systematic review of business process simulation tools
can be found in [15], in which the authors analyze business
process modeling tools that also provide simulation features,
business process management tools having simulation
capabilities and general purpose simulation tools. Several simulation
tools are also compared in [
        <xref ref-type="bibr" rid="ref21">24</xref>
        ] in terms of characteristics
such as coding aspects, user support, cost, pedigree, modeling
assistance, friendliness, simulation capabilities and software
and hardware requirements.
      </p>
      <p>
        Most of the existing simulation tools require M&amp;S
knowhow and programming skills above those generally available
in organizations [
        <xref ref-type="bibr" rid="ref22">25</xref>
        ]. For such reason, the adoption of
model-driven development, which provides increased levels
of automation, is considered a promising approach both
for transforming process conceptual models into simulation
models and for obtaining the corresponding simulation code
[20], [26], [
        <xref ref-type="bibr" rid="ref18">21</xref>
        ].
      </p>
      <p>To summarize, the literature review has identified the
following open issues as limitations of currently available
approaches to M&amp;S-based BP analysis:</p>
      <p>BP modeling is considered as a separate activity rather
than being correlated to simulation throughout the BP
lifecycle;
a significant semantic gap exists between the BP
model and the simulation model;
existing simulation tools require M&amp;S know-how
and programming skills which business analysts are
usually not familiar with.</p>
      <p>In order to overcome such limitations, this paper proposes
the BP-MSaaS platform, as illustrated in next section.</p>
      <p>III.</p>
      <p>BP-MSAAS PLATFORM FOR M&amp;S-BASED BP</p>
      <p>ANALYSIS</p>
      <p>This section describes the BP-MSaaS platform, which
enables the M&amp;S-based analysis of BPs according to a
MSaaS paradigm. In this respect, Section III-A illustrates
the platform architecture, whereas Section III-B gives the
behavioral specification.</p>
    </sec>
    <sec id="sec-2">
      <title>A. BP-MSaaS Architecture</title>
      <p>The proposed architecture, shown in Figure 1, has been
designed in order to overcome the most relevant open issues
affecting existing M&amp;S-based BP analysis approaches, as
discussed in Section II. The rationale of the proposed approach
is that a set of cloud-based remote services can be selected,
orchestrated and executed in order to carry out the several
tasks required to conduct a BP analysis: modeling services
to specify abstract BP models; transformation services to
generate the corresponding executable simulation models;
simulation services to execute simulations and presentation
services to summarize and show the related results.</p>
      <p>The outermost layer of the BP-MSaaS architecture is the
Web Layer, which implements the portal through which the
user interacts with the platform. The portal is intended to
be a one stop shop that provides an easy-to-use interface to
the platform and its offered services. Underneath the Web
Layer, the Middleware Layer provides the access point to the
M&amp;S services that are made available through the following
components of the underlying cloud infrastructure:
User Identification and Authorization: component
providing authentication services.</p>
      <p>Model Repository Manager: component providing
services for storing/retrieving models to/from the
cloud-based repository.</p>
      <p>Modeling Service Manager: component providing
modeling services for creating, editing and storing
models. In order to make the architecture flexible
enough to fit the needs of several application domains
and modeling languages, modeling services can be
automatically generated from a domain metamodel
that defines a given modeling language, by use of
transformation services.</p>
      <p>Transformation Service Manager: component
providing services for storing, retrieving and executing
model transformations on the cloud infrastructure.
Model transformations are used to generate models
(e.g., simulation models from BP models), by applying
model-to-model transformations, as well as to generate
the code that implements executable services (e.g.,
modeling services or simulation services), by applying
model-to-text transformations.</p>
      <p>Simulation Service Manager: component in charge
of managing the required tasks needed to first select
a simulation service image available in the cloud
repository and then deploy and execute it on the cloud
infrastructure.</p>
      <p>Presentation Service Manager: component providing
services for the visual rendering of simulation results.
Docker Infrastructure: component providing
services for interacting with the underlying cloud
infrastructure by use of the Docker containerization
approach.
transformation or edited by use of a modeling
service, configurations data and service images. The
executable code that implements a M&amp;S service (i.e.,
a simulation, transformation or modeling service) is
stored in the repository, along with the required library
and runtime, as an executable image, which has to be
deployed to a given container for execution.</p>
      <p>Computation Service: to ease the execution of
services on the computational nodes provided by the
cloud infrastructure, the architecture exploits virtual
containers, e.g., Docker [5], within which service
images are deployed and executed.</p>
      <p>Docker plays a relevant role in the proposed architecture
as it provides the containerization feature enabling easy
deployment of service implementations. The Docker architecture
is founded on three main concepts: images, containers and
registry. An image is a stand-alone and executable package
that includes everything needed to run a piece of software
(e.g., code, runtime, libraries, etc.). A container is a runtime
instance of an image when actually executed. Finally, the
registry, referred to as Docker Hub, is a repository of images.
Docker also includes volumes, or directories stored outside of
the containers filesystem, which are used to hold data that can
persist even after container termination, thus providing data
persistence to stateless Docker images.</p>
      <p>Regarding the availabity of modeling, transformation and
simulation services, it is worth noting that the following
services have been already provided as standalone applications
that exploit QVT [27], the standard provided by the OMG’s
Model Driven Architecture (MDA) [28] for the specification of
model-to-model transformations, and Acceleo [29], the
modelto-text transformation language compliant to the MOFM2T
MDA standard [30]:</p>
      <p>Simulation Services: jEQN [31] and eBPMN [32]
domain specific languages for enabling the simulation
of EQN (Extended Queueing Networks) and BPMN
models, respectively;
Model-to-Text Transformation Services:
Acceleobased transformations to generate jEQN code from
EQN models [2] and eBPMN code from PyBPMN
models, being PyBPMN the performance-oriented
BPMN extension proposed in [33] and [34]. Moreover,
an Ecore to Javascript and HTML Acceleo-based
transformation to generate modeling services from
domain metamodels specified in terms of Ecore
models [35];
Model-to-Model Transformation Services: a
QVTbased transformation to generate EQN models from
UML activity diagrams [2] and a QVT-based
transformation to generate PyBPMN models from BPMN
models with text annotations specifying the related
performance-oriented characterization [3].</p>
      <p>The portal of the BP-MSaaS platform relies on the
underlying cloud infrastructure layer, which provides the
following services:</p>
      <p>Storage Service: the cloud-based repository stores
the several data and entities used by M&amp;S services:
models, which can be generated by a model
Development activities are currently in progress to finalize
the porting of such applications as microservices into the
BPMSaaS platform. In this respect, the flexible and modular
approach at the basis of the BP-MSaaS platform design and the
availability of several modeling, transformation and simulation
services make it possible to effectively use the BP-MSaaS
Web Layer
r
e
y
a
L
e
r
a
w
e
l
d
d
i</p>
      <p>M
r
e
y
a
L
e
r
u
t
c
u
tr
s
a
fr
n
I
d
u
o
l
C</p>
      <sec id="sec-2-1">
        <title>User Idenfication and Authorization Web Browser</title>
        <p>WAN Infrastructure
Portal
e
c
i
v
r
e
S r
iton age
raom anM
f
s
n
a
r</p>
        <p>T</p>
      </sec>
      <sec id="sec-2-2">
        <title>Docker Interface</title>
        <p>Docker
y
tr
o
iso re
lepdeR aganM
o
M
e
c
i
platform in various application domains, by selecting the
relevant set of services.</p>
        <p>Finally, it is worth noting that the proposed architecture still
provides the opportunity to make use of remote SOAP/REST
Web services offered through a conventional WAN.</p>
        <p>The next Section provides an operational view of the
proposed approach by giving the behavioral specification of
the BP-MSaaS platform.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>B. Behavioral Model</title>
      <p>Figure 2 shows the UML use case diagram that identifies
relevant actors with related responsibilities. The specification
of most important use cases is given later on in this Section.</p>
      <p>Service Provider is the actor in charge of developing
the several services available in the cloud, e.g., the
above-mentioned eBPMN simulation service or the
UMLto-EQN transformation service. The Service Provider also
manages the service catalog by use of the Modeling Service
Manager component provided by the BP-MSaaS platform, to
deploy/delete services onto/from the cloud repository.</p>
      <p>End User is the actor carrying out the
simulationbased analysis of BPs. In this respect, it is in charge of
configuring and executing a simulation experiment by selecting
the simulation model and the required services from the
catalog. The Simulation Expert supports the End User and is
specifically involved in the definition of simulation models,
which can be built from scratch or obtained by executing
an automated model transformation (in such a case, models
obtained by use of automated model transformations may need
to be manually refined and configured).</p>
      <p>Domain Expert is the actor that builds the domain models
taken as input by model transformations used to generate
other models (e.g., model-to-model transformations to generate
simulation models) or the code that implements a service
(e.g., a model-to-text transformation to generate a modeling
service providing a Javascript-based visual editor). Finally, the
System Administrator is in charge of managing the BP-MSaaS
platform and the underlying cloud-based infrastructure.</p>
      <p>The UML sequence diagram shown in Figure 3 provides
the specification of the Build simulation experiment use case.</p>
    </sec>
    <sec id="sec-4">
      <title>As specified in Figure 2, the Build simulation experiment use case is extended by the Select and execute transformations</title>
      <p>Service Provider
End User
Domain Expert
System Administrator
OPT</p>
      <p>User</p>
      <p>Login request
Login confirmation
Brose model catalog</p>
      <p>REF</p>
      <p>Model
[Simulation model must be
generated]
Browse transformation
catalog</p>
      <p>REF
Simulation model
Configure(params)
Execute(Simulation model)</p>
      <p>REF
Simulation results
Build service
Deploy service
Delete service
Browse models and
services catalog
Build simulation
experimnent</p>
      <p>«extends»
Select and execute
transformations
Build simulation
model
«includes»
Run simulation
«includes»
«includes»
Select
models
Manage Cloud
infrastructure
«includes»
Build domain model
Store model
Manage MSaaS portal
&lt;&lt;UI&gt;&gt;
Web Client
&lt;&lt;Portal&gt;&gt;
MSaas Portal
&lt;&lt;Portal&gt;&gt;
Docker Interface
&lt;&lt;DockerRegistry&gt;&gt;
Repository
&lt;&lt;DockerEngine&gt;&gt;
Execution Environment</p>
      <p>Login()
Login confirmation
Select Models
Select and Execute Transformations
Run Simulation
updateModel(params)
updateModel(params)</p>
      <p>Browse transformation</p>
      <p>catalog
[Simulation service
available in the cloud]
Transf images list
Select transf image(s)
&lt;&lt;UI&gt;&gt;
Web Client
Dock&lt;&lt;eProIrntatle&gt;&gt;rface
getTransformations()
Transf images list
Transf images list
getImage(imageList)
getFromRepo(imageList)</p>
      <p>Transf image(s)
Build executable
transformation set
Start(tr_engine,model)
Simulation model
getFromRepo(tr_images)
A set of transformation images is
selected among the list of
available transformations
DockerSearch(tr_images)
Transf images list
DockerPul (imageList)
Transformation image(s)
DockerRun(tr_engine)
Execute(tr_engine, model)
The transformation engine
(tr_engine) executes the set of
selected transformations, in order
to generate the simulation model
from the input model
Simulation model</p>
      <sec id="sec-4-1">
        <title>We&lt;bUCI&gt;lient</title>
      </sec>
      <sec id="sec-4-2">
        <title>MS&lt;aPaosrtPal&gt;ortal</title>
        <p>&lt; Portal&gt;
Docker Interface
&lt; DRoeckpeorRseitgoisrtyry&gt;</p>
      </sec>
      <sec id="sec-4-3">
        <title>Exec&lt;utDioocnkeErEnnvgiirnoe&gt;nment</title>
        <p>&lt; ServiceProvider&gt;
Simulation Service
Simulation model
Simulation model
User
Execute(SimulationModel)
Execute(SimulationModel)
OPT
[Simulation service
available in the cloud]
getFromRepo(images)
Engine image list
Select engine
Engine images list
Engine images list
getImage(imagelName)
Simulation results
[Simulation service
available in WAN]
Simulation results
Simulation results
Simulation results
Fig.</p>
        <p>Use
case
diagram
of
the</p>
        <p>BP-MSaaS
platfor</p>
        <p>Fig.
the</p>
        <p>Build
sim
ulation
experim
ent
use
case.
and
includes</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Select model</title>
      <p>and</p>
      <p>Run
simulation
use
use case
cases.</p>
      <p>The Select model use case is first activated to browse the
catalog and select a model, which may be at various levels of
abstraction. In other words, if the selected model is a domain
model or an abstract BP model, then the appropriate model
transformations have to be selected and executed in order to
generate an executable simulation model, as specified by the
optional fragment in the diagram that refers to the Select and
execute transformations sequence diagram. Differently, if an
executable simulation model is the one selected by the user,
then it is directly given as input to the appropriate simulation
engine.</p>
      <p>Figure 4 shows the sequence diagram specifying the Select
and execute transformations use case, which is optionally
executed when the selected model is not in executable format
and thus one or more model transformations are to be carried
Simulation Expert
«extends»
«extends»</p>
      <p>Specification
of
the</p>
      <p>Select
and
execute
transformations
use
case.</p>
      <p>Specification
of
the</p>
      <p>Run
sim
ulation
use
case.
out. In the considered scenario, the logged user browses the
catalog of available model transformations and selects the
set of required ones. It should be noted that the type and
the number of the required transformation is strictly related
to the type of the input model and the simulation engine
which executes the simulation. As an example, an input UML
activity diagram to be analyzed by use of an EQN model
may require two different model transformations: a
modelto-model transformation, to generate an abstract EQN model
from the input UML activity diagram, and a model-to-text
transformation to map the EQN model to an executable code
ready to be taken as input by the EQN simulation engine.
Differently, an input BPMN model may only require a single
model-to-text transformation to directly generate the simulation
implementation code for the available BP simulation engine.
The required engine(s) are eventually deployed to the Docker
container that executes the transformation(s) yielding the
executable simulation model as output.</p>
      <p>Finally, Figure 5 shows the sequence diagram specifying
the Run simulation use case. The identified scenario illustrates
how the BP-MSaaS platform allows users to execute
simulation services deployed in the cloud or available as conventional
SOAP/REST Web services. In the former case, the scenario
overlaps with the Select and execute transformations use case,
and thus the selected engine is deployed to a Docker container
to enable the execution of the simulation model. In the latter
case, the simulation model is used as input parameter of the
invoked remote simulation service.</p>
      <p>getFromRepo(image)
Engine image
Build executable
simulation
Start(engine,model)
Simulation results
Build service
request
startSimulaton(model)</p>
      <p>DockerSearch(images)
Engine images list
DockerPul (image)
Engine image
DockerRun(engine)
Execute(engine, model)</p>
      <p>Simulation results</p>
      <p>Simulation results
Fig. 6. BPMN model of the Checkout BP.</p>
      <p>IV.</p>
      <p>APPLICATION SCENARIO</p>
      <p>The proposed BP-MSaaS platform is used in this section
to carry out the simulation-based analysis of a BP dealing with
the check out of a purchase order submitted to an e-commerce
website.</p>
      <p>E-commerce application scenarios, being closely related to
Business to Business Integration (B2Bi), can be effectively
improved by use of the BP-MSaaS platform. B2Bi tasks
are challenging because of the heterogeneous and distributed
nature of systems in the enterprise network environment. ERP,
CRM and logistic department are always triggered by
ecommerce processes. The BP-MSaaS platform contributes to
facilitate communication among the disparate systems and to
recognize their dependencies with each other, which ultimately
enables business process automation.</p>
      <p>The model of the BP under study can be either retrieved
from a catalog of available models or directly edited by use
of a modeling service. Let us assume the BP is specified as a
BPMN model built by use of a visual editor provided by the
modeling service illustrated in [35]. Figure 3 shows the BPMN
visual editor along with the BPMN model of the considered
example.</p>
      <p>The BPMN model has to be transformed into a
simulation-oriented implementation and thus a model-to-text
transformation is executed to take as input the BPMN model
and yield as output the corresponding simulation code. The
image of a transformation service is first searched and pulled
from Docker Hub. Then, it is deployed and executed in a
Docker container in order to get the desired simulation code.
Such activities are transparently accomplished and supported
by the BP-MSaaS platform.</p>
      <p>Specifically, from the set of available services (as
summarized in Section III-A) the BPMN-to-eBPMN
Modelto-text Transformation Service is selected and executed in
the example application scenario. The transformation takes as
input the BPMN model and yields as output the simulation
code specified in eBPMN [32], a BP simuation language built
on top of the SimArch discrete-event simulation architecture
[31].</p>
      <p>Finally, the image of a simulation service is selected and
executed, as specified by the sequence diagram in Figure 5.
In this respect, an eBPMN-compliant simulation service is
deployed and executed.</p>
      <p>The Docker image which implements the eBPMN
simulation engine is based on the official tomcat image
availabe at https://hub.docker.com/ /tomcat/, a minimal
runtime environment that provides Linux OS, Oracle JRE 8 and
the Apache Tomcat 8.0 application service, which deploys the
ebpmnService war file into the webapps folder.</p>
      <p>Similarly to the generation of the eBPMN code, the
BPMSaaS platform transparently provides what needed to build
and execute the Docker container, as well as to package the
war file that contains the executable simulation code.</p>
      <p>Finally, an eBPMN-based presentation service is executed
to retrieve the simulation results and provide them in visual
form to the user.</p>
      <p>As stated in Section I, the BP-MSaaS platform can
be extended to cover additional application domains, which
can be easily served by selecting a different set of M&amp;S
services. As an example, the performance analysis of a
software system specified in UML can be enacted by selecting
a UML-compliant modeling service, a different simulation
service (e.g., the available jEQN simulation service) and an
appropriate set of transformation services (e.g., the available</p>
    </sec>
    <sec id="sec-6">
      <title>UML-to-EQN and EQN-to-jEQN transformation services).</title>
      <p>The paper has illustrated the proposed BP-MSaaS
platform, which enables the effective adoption of M&amp;S-based
approaches throughout the BP lifecycle. Specifically, the
BPMSaaS architecture exploits a cloud infrastructure and the
Docker containerization architecture to build a flexible
serviceoriented platform which provides the facilitated selection,
deployment and execution of M&amp;S services that support the
business analyst in the specification and simulation-based
analysis of BPs. The adoption of model-driven development
approaches allows to ease the automated development of
services and configuration files, in order to hide the complexity
of simulation modeling and implementation activities, as well
as platform management activities.</p>
      <p>An application scenario dealing with an e-commerce BP
has been illustrated to show a concrete example of how the
BP-MSaaS platform can be effectively used to support and
automate the selection, deployment and execution of modeling,
transformation and simulation services.</p>
      <p>The prototype Docker-based implementation of the
BPMSaaS platform has been used to assess the feasibility and
the effectiveness of the proposed architecture. Ongoing work
includes the development of a full-featured implementation
of the BP-MSaaS platform, by porting already existing
applications as microservices into the platform, as well as by
adding simulation engines that cover application domains not
limited to the analysis of BPs.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>D.</given-names>
            <surname>Gianni</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. D'Ambrogio</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <surname>A</surname>
          </string-name>
          . Tolk, Eds.,
          <source>Modeling and Simulation-Based Systems Engineering Handbook</source>
          . CRC Press,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [Online]. Available: http://www.crcnetbase.com/isbn/9781466571464 [2]
          <string-name>
            <given-names>P.</given-names>
            <surname>Bocciarelli</surname>
          </string-name>
          and
          <string-name>
            <surname>A. D'Ambrogio</surname>
          </string-name>
          , “
          <source>Automated Performance Analysis of Business Processes,” in Proceedings of the 2012 Symposium on Theory of Modeling</source>
          and Simulation
          <string-name>
            <surname>- DEVS Integrative M&amp;S Symposium. Orlando</surname>
          </string-name>
          , Florida: Society for Computer Simulation International,
          <year>2012</year>
          , pp.
          <volume>10</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          :
          <fpage>9</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <given-names>P.</given-names>
            <surname>Bocciarelli</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. D'Ambrogio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Giglio</surname>
            , E. Paglia, and
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Gianni</surname>
          </string-name>
          , “
          <source>Empowering Business Process Simulation Through Automated Model Transformations,” in Proceedings of the Symposium on Theory of Modeling &amp; Simulation - DEVS Integrative</source>
          ,
          <article-title>ser</article-title>
          .
          <source>DEVS '14</source>
          ,
          <string-name>
            <surname>Tampa</surname>
          </string-name>
          , Florida,
          <year>2014</year>
          , pp.
          <volume>39</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>39</lpage>
          :
          <fpage>9</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <given-names>A.</given-names>
            <surname>Karmel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Chandramouli</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Iorga</surname>
          </string-name>
          , NIST Special Publication 800-180: NIST Definition of Microservices,
          <source>Application Containers and Virtual Machines</source>
          ,
          <year>2016</year>
          . [Online]. Available: http://csrc.nist.gov/ publications/drafts/800-180/sp800-180 draft.pdf Docker, “Docker - Build, Ship, and Run Any App, Anywhere,” Website: https://www.docker.com,
          <year>2016</year>
          . [Online]. Available: https: //www.docker.com/ Microsoft, Microsoft Azure,
          <year>2017</year>
          . [Online]. Available: https://azure.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          microsoft.com Amazon,
          <source>Amazon Web Services (AWS)</source>
          ,
          <year>2017</year>
          . [Online]. Available: https://aws.amazon.com/ W. J.
          <string-name>
            <surname>Kettinger</surname>
            ,
            <given-names>J. T. C.</given-names>
          </string-name>
          <string-name>
            <surname>Teng</surname>
            , and
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Guha</surname>
          </string-name>
          , “
          <article-title>Business Process Change: A Study of Methodologies, Techniques, and</article-title>
          <string-name>
            <surname>Tools</surname>
          </string-name>
          ,
          <source>” MIS Quarterly</source>
          , vol.
          <volume>21</volume>
          , no.
          <issue>1</issue>
          , p.
          <fpage>55</fpage>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <given-names>R. S.</given-names>
            <surname>Aguilar-Save´</surname>
          </string-name>
          n, “
          <article-title>Business process modelling: Review and framework</article-title>
          ,”
          <source>International Journal of Production Economics</source>
          , vol.
          <volume>90</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>129</fpage>
          -
          <lpage>149</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <given-names>C.</given-names>
            <surname>Ren</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Dong</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Ding</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Shao</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Q.</given-names>
            <surname>Wang</surname>
          </string-name>
          , “
          <article-title>Towards a flexible business process modeling and simulation environment</article-title>
          ,”
          <source>in Proceedings of the 2008 Winter Simulation Conference</source>
          ,
          <year>2008</year>
          , pp.
          <fpage>1694</fpage>
          -
          <lpage>1701</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <given-names>L.</given-names>
            <surname>Aldin</surname>
          </string-name>
          and S. De Cesare, “
          <article-title>A comparative analysis of business process modelling techniques,” in U.K Academy for Information Systems (UKAIS</article-title>
          <year>2009</year>
          ),
          <source>14th Annual Conference</source>
          , Oxford, UK,
          <year>2009</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>17</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          D. Moody, “
          <article-title>What Makes a Good Diagram? Improving the Cognitive Effectiveness of Diagrams in IS Development,”</article-title>
          <source>in Advances in Information Systems Development</source>
          . Springer,
          <year>2007</year>
          , pp.
          <fpage>481</fpage>
          -
          <lpage>492</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <given-names>L. O.</given-names>
            <surname>Johansson</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Wa¨rja, and</article-title>
          <string-name>
            <surname>S. Carlsson,</surname>
          </string-name>
          “
          <article-title>An evaluation of business process model techniques, using Moody's quality criterion for a good diagram</article-title>
          ,
          <source>” CEUR Workshop Proceedings</source>
          , vol.
          <volume>963</volume>
          , pp.
          <fpage>54</fpage>
          -
          <lpage>64</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <given-names>B.</given-names>
            <surname>Gladwin</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Tumay</surname>
          </string-name>
          , “
          <article-title>Modeling Business Processes with Simulation Tools,”</article-title>
          <source>in Proceedings of the 26th Conference on Winter Simulation</source>
          ,
          <year>1994</year>
          , pp.
          <fpage>114</fpage>
          -
          <lpage>121</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <surname>M. H. Jansen-Vullers</surname>
            and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Netjes</surname>
          </string-name>
          , “
          <string-name>
            <surname>Business Process Simulation - A Tool Survey</surname>
          </string-name>
          ,” Workshop and Tutorial on
          <source>Practical Use of Coloured Petri Nets and the CPN</source>
          , vol.
          <volume>834</volume>
          , pp.
          <fpage>77</fpage>
          -
          <lpage>96</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <given-names>V.</given-names>
            <surname>Bosilj-Vuksic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Ceric</surname>
          </string-name>
          , and
          <string-name>
            <given-names>V.</given-names>
            <surname>Hlupic</surname>
          </string-name>
          , “
          <article-title>Criteria for the Evaluation of Business Process Simulation Tools</article-title>
          ,”
          <source>Interdisciplinary Journal of Information, Knowledge, and Management</source>
          , vol.
          <volume>2</volume>
          , pp.
          <fpage>73</fpage>
          -
          <lpage>88</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <given-names>G.</given-names>
            <surname>Abeysinghe</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Phalp</surname>
          </string-name>
          , “
          <article-title>Combining process modelling methods</article-title>
          ,
          <source>” Information and Software Technology</source>
          , vol.
          <volume>31</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>514</fpage>
          -
          <lpage>124</lpage>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <surname>F.-R. Lin</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.-C. Yang</surname>
            , and
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Yu-Hua</surname>
          </string-name>
          ,
          <article-title>“A generic structure for business process modeling,” Business Process Management Journal</article-title>
          , vol.
          <volume>8</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>19</fpage>
          -
          <lpage>41</lpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <given-names>K.</given-names>
            <surname>Vergidis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Tiwari</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B.</given-names>
            <surname>Majeed</surname>
          </string-name>
          , “
          <source>Business Process Analysis and Optimization: Beyond Reengineering,” IEEE Transactions on Systems, Man, and Cybernetics</source>
          , Part C (
          <article-title>Applications</article-title>
          and Reviews), vol.
          <volume>38</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>69</fpage>
          -
          <lpage>82</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <string-name>
            <given-names>D.</given-names>
            <surname>Cetinkaya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Verbraeck</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Seck</surname>
          </string-name>
          , “
          <article-title>Applying a Model Driven Approach To Component Based Modeling</article-title>
          and Simulation,”
          <source>in Proceedings of the 2010 Winter Simulation Conference</source>
          ,
          <year>2010</year>
          , pp.
          <fpage>546</fpage>
          -
          <lpage>553</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>I.</given-names>
            <surname>Rust</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Cetinkaya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Seck</surname>
          </string-name>
          ,
          <string-name>
            <surname>and I. Wenzler</surname>
          </string-name>
          , “
          <article-title>Business Process Simulation for Management Consultants: a Devs-Based Simplified Business Process Modelling Library</article-title>
          ,”
          <source>in Proceedings of the 23rd European Modelling and Simulation Symposium (EMSS</source>
          <year>2011</year>
          ),
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [22] [23]
          <string-name>
            <given-names>O.</given-names>
            <surname>Kloos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Nissen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Petsch</surname>
          </string-name>
          , “From Process to Simulation - A
          <string-name>
            <surname>Transformation Model</surname>
            <given-names>Approach</given-names>
          </string-name>
          ,”
          <source>in Proceedings of the 3rd International Workshop on Enterprise Modelling and Information Systems Architectures</source>
          ,
          <year>2009</year>
          , pp.
          <fpage>83</fpage>
          -
          <lpage>96</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          <string-name>
            <given-names>M.</given-names>
            <surname>Indulska</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. C.</given-names>
            <surname>Recker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rosemann</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Green</surname>
          </string-name>
          , “
          <article-title>Business Process Modeling: Current Issues</article-title>
          and Future Challenges,”
          <source>in Proceedings of the 21st International Conference on Advanced Information Systems Engineering</source>
          . Springer-Verlag,
          <year>2009</year>
          , pp.
          <fpage>501</fpage>
          -
          <lpage>514</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>I.</given-names>
            <surname>Imam</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Nounou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Hamouda</surname>
          </string-name>
          , and
          <string-name>
            <given-names>H. A. A.</given-names>
            <surname>Khalek</surname>
          </string-name>
          , “
          <article-title>Survey of business process simulation tools: A comparative approach</article-title>
          ,
          <source>” Proceedings of SPIE - The International Society for Optical Engineering</source>
          , vol.
          <volume>8285</volume>
          , no.
          <source>July</source>
          , pp.
          <fpage>0</fpage>
          -
          <lpage>7</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          <source>[25] [26] [27] [28] [29] [30] [31] [32] [33] [34]</source>
          [35]
          <string-name>
            <surname>K. D. Barber</surname>
            ,
            <given-names>F. W.</given-names>
          </string-name>
          <string-name>
            <surname>Dewhurst</surname>
            ,
            <given-names>R. L. D. H.</given-names>
          </string-name>
          <string-name>
            <surname>Burns</surname>
            , and
            <given-names>J. B. B.</given-names>
          </string-name>
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          <string-name>
            <surname>Rogers</surname>
          </string-name>
          , “
          <article-title>Business-process modelling and simulation for manufacturing management: A practical way forward,” Business Process Management Journal</article-title>
          , vol.
          <volume>9</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>527</fpage>
          -
          <lpage>542</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          <string-name>
            <given-names>D.</given-names>
            <surname>Cetinkaya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Verbraeck</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Seck</surname>
          </string-name>
          , “
          <article-title>MDD4MS: A Model Driven Development Framework for Modeling and</article-title>
          Simulation,”
          <source>in Proceedings of the 2011 Summer Computer Simulation Conference</source>
          ,
          <year>2011</year>
          , pp.
          <fpage>113</fpage>
          -
          <lpage>121</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          <string-name>
            <surname>OMG</surname>
          </string-name>
          , “
          <article-title>Meta Object Facility (MOF) 2</article-title>
          .0 Query/View/Transformation,”
          <year>2015</year>
          . [Online]. Available: http://www.omg.org/spec/QVT/ OMG, “
          <source>MDA Guide, version 1.0</source>
          .1,”
          <year>2003</year>
          . [Online]. Available: http://www.omg.org/MDA/
          <year>2016</year>
          . [Online]. Available: Eclipse Foundation, “Acceleo,” sep http://www.eclipse.org/acceleo/ OMG, MOF Model to Text Transformation Language,
          <year>2008</year>
          . [Online].
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          Available: http://www.omg.org/spec/MOFM2T/ D. Gianni,
          <string-name>
            <surname>A. D'Ambrogio</surname>
          </string-name>
          , and G. Iazeolla, “
          <article-title>A software architecture to ease the development of distributed simulation systems</article-title>
          ,” Simulation, vol.
          <volume>87</volume>
          , no.
          <issue>9</issue>
          , pp.
          <fpage>819</fpage>
          -
          <lpage>836</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          <string-name>
            <given-names>P.</given-names>
            <surname>Bocciarelli</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. D'Ambrogio</surname>
          </string-name>
          , and E. Paglia, “
          <article-title>A Language for Enabling Model-Driven Analysis of Business Processes,”</article-title>
          <source>in Proceedings of the 2nd International Conference on Model-Driven Engineering and Software Development</source>
          , ser.
          <source>MODELSWARD'14</source>
          . Lisbon, Portugal: SciTePress,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          <string-name>
            <given-names>P.</given-names>
            <surname>Bocciarelli</surname>
          </string-name>
          and
          <string-name>
            <surname>A. D'Ambrogio</surname>
          </string-name>
          , “
          <article-title>A model-driven method for describing and predicting the reliability of composite services</article-title>
          ,
          <source>” Software &amp; Systems Modeling</source>
          , vol.
          <volume>10</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>265</fpage>
          -
          <lpage>280</lpage>
          , May
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          <string-name>
            <given-names>P.</given-names>
            <surname>Bocciarelli</surname>
          </string-name>
          and
          <string-name>
            <surname>A. D'Ambrogio</surname>
          </string-name>
          , “
          <article-title>A model-driven method for enacting the design-time QoS analysis of business processes</article-title>
          ,
          <source>” Software &amp; Systems Modeling</source>
          , vol.
          <volume>13</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>573</fpage>
          -
          <lpage>598</lpage>
          , May
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          <string-name>
            <given-names>P.</given-names>
            <surname>Bocciarelli</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. D'Ambrogio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Giglio</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Mastromattei</surname>
          </string-name>
          , “
          <source>Automated Development of Web-based Modeling Services for MSaaS Platforms</source>
          ,” in International Workshop on Model-Driven Approaches for Simulation Engineering (Mod4Sim
          <year>2017</year>
          ),
          <source>part of the 2017 Spring Simulation Multiconference (SpringSim</source>
          <year>2017</year>
          ), Virginia Beach,
          <string-name>
            <surname>VA</surname>
          </string-name>
          , USA,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>