<!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>Model-Checking Cloud Systems Using BigMC</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Cloud Computing, Reconfiguration, Formal Methods, Bigraphical Reactive System</institution>
          ,
          <addr-line>Model Checking</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Hamza Sahli Faiza Belala Chafia Bouanaka LIRE Laboratory, University of Constantine II Constantine</institution>
          ,
          <country country="DZ">Algeria</country>
        </aff>
      </contrib-group>
      <fpage>25</fpage>
      <lpage>33</lpage>
      <abstract>
        <p>Cloud computing is a promising concept in the IT evolution that has increasingly attracted attention from both industry and academic sectors. However, it has introduced new security problems and obstacles. Since formal methods provide a reliable mathematical basis giving rise to safely analysable and easily verifiable models, we aim in this paper to propose a formal framework to specify cloud system architectures and verify their inherent proprieties. Bigraphical Reactive Systems are adopted as a semantic framework for their graphical aspect and rigorous basis. We argue that the proposed models are useful for simulation and analysis of cloud systems proprieties as elasticity and plasticity, while using a given model checker tool dedicated to BRS.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. INTRODUCTION</title>
      <p>
        In recent years, cloud computing
        <xref ref-type="bibr" rid="ref1">(Mell et al., 2011)</xref>
        has emerged as a new and promising concept in the
IT evolution; it has increasingly attracted attention
from both industry and academic sectors. The basic
idea beyond cloud computing is to provide a poll of
computing resources as on demand services (e.g.
servers, storage, applications, and services). These
resources are consumed by users according to their
needs and by paying only their real consumption.
Such flexibility and cost effectiveness is what makes
cloud computing models very attractive. Albeit cloud
computing offers numerous benefits, it has raised
new obstacles (Michael et al., 2009) and security
concerns (
        <xref ref-type="bibr" rid="ref3">Vic (J.R.), 2011</xref>
        ).The fact that the cloud is
accessible from everywhere makes it vulnerable to
various types of attacks, like distributed denial of
service attacks (DDoS). Such attacks could heavily
affect the cloud quality of service (QoS) properties
as high service availability.
      </p>
      <p>
        Cloud service availability introduces a very
important concept that distinguishes cloud
computing paradigm from the other ones, which is
rapid elasticity
        <xref ref-type="bibr" rid="ref4">(Guilherme et al., 2012)</xref>
        (Dustdar et
al., 2011). Elasticity goes beyond a simple flexible
and dynamic allocation and deallocation of
resources on the fly. It implies a permanent
reconfiguration of the underlying network and its
associated controls. Elasticity has many forms of
violation such as plasticity
        <xref ref-type="bibr" rid="ref6">(Gambi et al., 2013)</xref>
        (i.e.
the inability to spontaneously return back to the
original configuration after an adaptation process).
To ensure cloud systems reliability and consistency,
these concepts need to maintain a formal model that
supports specification and analysis of such
properties. Until now, there are only few formal
models for cloud systems.
      </p>
      <p>
        Bigraphs
        <xref ref-type="bibr" rid="ref7">(Milner, 2008)</xref>
        enriched with a set of
metareaction rules, giving rise to Bigraphical Reactive
Systems, are a good candidate to formalise cloud
computing fundamental architectural aspects and
their reconfiguration. Indeed, bigraphs differ from
traditional formalisms in their expressive power
getting designers a great flexibility to specify their
own reaction rules. In overall terms, our contribution
is two-fold:
      </p>
      <p>We argue that Milner’s BRS, through their
graphical aspect, are capable of
representing both locality and connectivity
that constitute main concepts of cloud
computing architecture.</p>
      <p>We propose a bigraph-based model for
cloud system composed of two independent
regions (physical or logical). For instance,
the client and service provider may
represent these regions. Then, interactions
between these two regions are defined via
reaction rules. Since BRS have an
executable algebraic language, the
obtained formal model serves to
modelcheck some proprieties that are inherent to
cloud systems as the elasticity and some
forms of its violation (plasticity).
The rest of the paper is organised as follows. In
section 2, we present related work. In section 3, we
give a brief overview on Bigraphical Reactive
Systems (BRS) and their dedicated model checker.
Section 4 presents our bigraphical specification of
cloud systems. In, section 5 we formally verify the
elasticity and plasticity proprieties. Finally, some
concluding remarks and ongoing work rounds up the
paper.</p>
    </sec>
    <sec id="sec-2">
      <title>2. RELEATED WORK</title>
      <p>
        There is a significant body of work on defining and
analysing cloud systems, but we are unaware of
approaches involving formal and rigorous
mathematical models. For instance, authors in
        <xref ref-type="bibr" rid="ref8">(Grandison et al., 2010)</xref>
        and
        <xref ref-type="bibr" rid="ref9">(Dong et al., 2010)</xref>
        try
to tackle the lack of consensus or base
comprehension on technical constituents of a cloud
by presenting an initial definition of cloud computing.
They particularly provide some discussion on the
relationship between cloud computing and
virtualization.
      </p>
      <p>
        Formal models for managing the complexity of
evolving cloud system behaviour while it is executing
is a recent area of interest. Existing approaches in
this context are based on various formalisms.
        <xref ref-type="bibr" rid="ref10">(Freitas et al., 2012)</xref>
        present an abstract
formalisation of federated cloud workflows using the
Z notation. In addition, a process algebra framework
for the specification of virtual machines migration
and the associated security policies in the cloud is
given in (Jarraya et al., 2012). On the other hand,
author in
        <xref ref-type="bibr" rid="ref12">(Rady, 2013)</xref>
        proposes a formal definition
of service availability in cloud computing using the
web ontology language OWL. Authors in
        <xref ref-type="bibr" rid="ref13">(Klai et al.,
2013)</xref>
        propose a formal model adopting Petri nets
for describing service-based business processes in
cloud environments.
      </p>
      <p>
        While our adopted formalism (BRS) is different and
more appropriate, our work has a similar goal in that
it is reasoning about cloud systems. We note a
related bigraphical modelling approach taken on by
        <xref ref-type="bibr" rid="ref15">(Benzadri et al., 2014)</xref>
        to model-check
configurations of a cloud system. In this work, only
some functional properties are verified using LTL
Maude tool. Besides, all these research studies do
not explicitly tackle the formal analysis of elasticity
property which is inherent to cloud systems, expect
those defining a systematic model-based test
generation framework for testing the elastic
properties of cloud systems
        <xref ref-type="bibr" rid="ref6">(Gambi et al., 2013)</xref>
        and
        <xref ref-type="bibr" rid="ref16 ref17">(Amziani et al., 2013)</xref>
        .
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. OVERVIEW OF BRS</title>
      <p>
        Bigraphical reactive systems (BRS) were initially
introduced by
        <xref ref-type="bibr" rid="ref7">(Milner, 2008)</xref>
        to provide a graphical
intuitive formal model capable of representing at the
same time connectivity and locality of distributed
entities. Thus, it coincides strongly with cloud
computing concepts. A bigraph is composed of two
graphs: a place graph for entities locality and
hierarchy representation and a link graph for
interconnectivity representation. Bigraphs structural
dynamics is formalised by reaction rules that
express their eventual reconfigurations. Hence,
bigraphs can be used for representing system
possible configurations, and reaction rules for
specifying how these configurations may evolve (i.e.
relations between bigraphs).
      </p>
    </sec>
    <sec id="sec-4">
      <title>3.1 Structural Aspects</title>
      <p>
        A bigraph is the combination of two independent
structures: the place and link graphs. The place
graph represents system entities geographical
distribution. The Link graph is a hypergraph
representing interconnections between these
entities. Within a BRS, system entities are
represented by nodes and interactions between
them are represented by edges (see Figure 1).
A node can be dotted with ports representing
connection points to edges or inner/outer names. A
control is also associated to each node; consisting
of node type identifier that belongs to a set called
signature. Each control indicates the number of
ports of each node (i.e. arity), which controls are
atomic for empty nodes and which of the non-atomic
controls are active (i.e. subject to reactions) or
passive. The inner/outer names of a bigraph indicate
connectors to other elements. Such interconnection
is only possible if the outer name of a bigraph or root
corresponds to the inner name of another bigraph.
Sites represent holes into which a root or node can
be nested, they are considered as an abstraction
indicating the presence of other elements.
Definition
        <xref ref-type="bibr" rid="ref18">(Milner, 2009)</xref>
        : a bigraph is formally
defined by
      </p>
      <p>,   ):  → ,  = &lt; ,  &gt;,  =&lt;
 = (, , , 
,  &gt;,where:



</p>
      <p>V and E represent finite sets of nodes and
edges respectively.
 ∶  →  is a control map that assigns a
control to each node. The signature K is a
set of controls.
     are Place and Link graphs
respectively.</p>
      <p>I and J represent inner and outer names
(interfaces) respectively, of the bigraph G. m
and n are the number of sites and roots
respectively.</p>
      <p>In addition to the graphical representation, a term
algebraic language is defined to specify bigraphs,
language primary operations and elements are
summarized in Table 1.</p>
    </sec>
    <sec id="sec-5">
      <title>3.2 Dynamical aspects</title>
      <p>Bigraphs structural dynamics is expressed via
reaction rules; each one defines a redex bigraph to
be transformed to a reactum one.</p>
      <p>As an example, Figure 2 represents a reaction rule
that allows a person P in the same root, as a room
R, to leave the room. This rule is purely a placing
reconfiguration. A linking reconfiguration represents
any possible connectivity; reaction rule of Figure 3
represents a person P connecting to a pc in the
same root through the edge e0.</p>
      <p>
        Formally, a reaction rule takes the form (R,R',η)
where R:m⟶J is a redex, R':m'⟶J is a reactum and
η:m⟶m′ is a map of ordinals
        <xref ref-type="bibr" rid="ref7">(Milner, 2008)</xref>
        . The
category of all bigraphs and their reaction rules
constitute a BRS.
      </p>
    </sec>
    <sec id="sec-6">
      <title>3.3 A Model Checker for BRS</title>
      <p>
        Few tools for verifying BRS-based distributed
systems inherent properties exist as BigMC
        <xref ref-type="bibr" rid="ref19">(Perrone et al., 2012)</xref>
        model checker.
      </p>
      <p>BigMC (Bigraphical Model Checker) is a
modelchecker designed to operate on Bigraphical
Reactive Systems, where model checking is
accomplished through an exhaustive search of all
possible states of the bigraphical model that satisfy
the property to be verified.</p>
      <p>
        One of the main benefits of a model checking
approach is the ability to provide a counter-example
whenever the desired property does not hold in the
actual system model. In our case, this means
showing system configuration that violates the
specified property, and the transition system path by
which this configuration was reached. The full
grammar of BigMC bigraph terms is summarized in
Table 2
        <xref ref-type="bibr" rid="ref19">(Perrone et al., 2012)</xref>
        .
Using this grammar, we can specify all bigraphical
elements. A BigMC model (designated by M) can be
composed using other models and/or expressions
(designated by E). An expression E can be a node
declaration, a reaction rule, a term (T), or a property
(P). A term T can represent a single node, site,
region or a combination of all these elements. Terms
of the form T -&gt; T are considered reaction rules. A
property P represents a state definition to be
checked with BigMC tool.
      </p>
      <p>We will use this grammar to specify our cloud model.
Then, we will use the BigMC tool to verify some of
the cloud system proprieties.</p>
    </sec>
    <sec id="sec-7">
      <title>4. CLOUD SYSTEMS BIGRAPH-BASED</title>
    </sec>
    <sec id="sec-8">
      <title>SPECIFICATION</title>
      <p>At a high level of abstraction, a cloud computing
system is considered as a set of computing
resources (e.g. data centers, servers, services) that
are distributed across multiple computing sites, and
are often referred to as nodes. These resources are
provided as on demand services that users (clients)
can consume. Thus, two types of entities are
identified in cloud computing: the front-end entity
and the back-end entity that are interacting via the
Internet.</p>
      <p>The front-end represents the client interface, used to
access the cloud. Clients are classified into two
kinds: end users (i.e. simple cloud service
consumers) and developers (i.e., costumers
exploiting cloud as for Google Apps, Codeita to host
their applications).</p>
      <p>The back-end is the cloud service provider. It offers
a complete system for allocating the required
resources to execute user applications and
managing the entire system flow.</p>
      <p>Many types of resources can exist in a cloud as:



</p>
      <sec id="sec-8-1">
        <title>Data centers: physical facilities used to</title>
        <p>gather cloud computing resources and
components.</p>
        <p>Load balancers: devices responsible of
service requests rooting and resources
provision.</p>
        <p>Servers: infrastructures for calculation
and execution.</p>
        <p>Virtual machines (VMs): abstractions of
the underlying infrastructure.</p>
        <p>Example 1: In order to ease the understanding of
our proposed cloud system formalisation, we will first
introduce the following generic example illustrating
important features that will be considered.</p>
        <p>The cloud system is composed of a unique instance
of the following cloud components (data center, load
balancer, server and virtual machine) and offers two
different services for the end users (end user 1, end
user 2, end user 3).</p>
      </sec>
    </sec>
    <sec id="sec-9">
      <title>4.1 Modelling Cloud System Architecture</title>
      <p>
        In a previous work
        <xref ref-type="bibr" rid="ref20">(Sahli et al., 2014)</xref>
        we have
shown that bigraphs constitute a suitable
mathematical model allowing the formalisation of the
two parts (back-end and front-end) of cloud
architecture using two distinct regions of bigraph.
This is achieved thanks to a formal mapping based
on correspondence rules between the cloud system
elements and bigraph concepts (see Table 3).
Let us return to our running example and apply the
bigraph based formalisation approach
        <xref ref-type="bibr" rid="ref20">(Sahli et al.,
2014)</xref>
        to give a well-defined semantics of its
architectural aspect.
      </p>
      <p>Assuming that the two services are deployed in the
same virtual machine and an end user is connected
to the first service while the others are connected to
the second service. The corresponding bigraphical
model is shown in Figure 5.</p>
      <p>As we can notice in Figure 5, there are two services
actually deployed in the virtual machine VM1 and
two end users connected to S2 service through the
edge e3. Thus, the S2 service cannot be allocated
to another end user and the virtual machine VM1
cannot deploy any other service instance. This is
expressed in our model by the absence of a site in
that virtual machine.</p>
      <p>The signature associated to a cloud bigraph is as
follows: K = {L: (0, active), N :( 2, atomic)}, L and N
represent controls associated to different nodes.
The different nodes types used in the model and
their associated controls are summarized in Table 4.
The cloud system initial configuration expression in
BigMC tool appropriate grammar is shown in Figure
EU
DC
LB
SE
VM</p>
      <p>S
We notice that each concept involved in the cloud
system
bigraphs
has a precise semantics. The conceived
do
not
specify
just
the
graphical
representation, but also the intended mathematical
Hamza Sahli ● Faiza Belala ● Chafia Bouanaka
models. Furthermore, the proposed formalisation
approach is general enough; it remains valid for any
cloud architecture examples.</p>
      <p>To deal with the dynamic behaviour of cloud system
at runtime, we enrich the proposed bigraph-based
model with reaction rules. Hence, a set of reaction
rules
defining
system</p>
      <p>configurations and their
evolution at runtime is specified.</p>
    </sec>
    <sec id="sec-10">
      <title>4.2 Modelling Cloud System Reconfiguration</title>
      <p>Albeit, bigraphs are sufficient to formally specify
cloud systems static structure, they do not represent
their dynamic behaviour. Our main contribution is to
extend the proposed bigraph-based model for cloud
system by a set of reaction rules expressing its
possible reconfiguration.
based on reaction rules, to graph transformation
ones, to deal in this case with Bigraphical Reactive</p>
      <sec id="sec-10-1">
        <title>Systems (BRS).</title>
        <p>Therefore, Cloud system dynamics is formalised as
bigraphical
reactive
system.</p>
        <p>Its
configuration
transition is performed through a series of
metareaction rules.</p>
        <p>Thus, the meta-reaction rule examples cited above
can
be
instantiated to
express
cloud
system
changes in terms of shape shifting or elasticity, while
preserving cloud architectural constraints. For a
better comprehension of our model, we will illustrate
more these reaction rules examples in what follows.</p>
      </sec>
    </sec>
    <sec id="sec-11">
      <title>4.2.1 Deploying a new service meta-reaction rule</title>
      <p>It specifies a developer client type (denoted by D)
being connected to the cloud in order to deploy a
new service. As we can see in the reactum of the
reaction rule in Figure 7, a new service S1 is created
within the virtual machine (denoted VM) along with
a communication link between the developer and
the service he deployed. In the redex, presence of
site 1 means that VM virtual machine is able to
deploy other services while its disappearance in the
reactum means that the virtual machine has reached
its limits (saturation), we suppose here that virtual
machine capacity is of two services. We can also
note the existence of another service that is already
loaded in virtual machine VM and is actually
exploited by a client of type end user (denoted by
EU).</p>
    </sec>
    <sec id="sec-12">
      <title>4.2.2 Service migration meta-reaction rule</title>
      <p>This rule expresses the fact that a service may
migrate from one virtual machine to another for
many reasons, as degraded virtual machine
performance or overloaded virtual machine,
expressed in our model by the absence of a site in
the virtual machine. As shown in Service migration
reaction rule of Figure 8, service S changes its
placing from virtual machine VM to a virtual machine
VM1.</p>
    </sec>
    <sec id="sec-13">
      <title>4.2.3 Virtual machine migration meta-reaction rule</title>
      <p>The virtual machine migration reaction rule (see
Figure 9) expresses the fact that a virtual machine
may migrate from an excessively loaded host server
to a less loaded server. A loaded server is
expressed in our model by the absence of a site in
this server. In the redex below, we can see an
excessively loaded server (denoted SE).</p>
      <p>The presented rules are just few examples of many
other reaction rules that can be expressed through
our model (e.g. new client, service allocation, virtual
machine replication, service instance replication,
new service instance).</p>
      <p>Example 2: Let us head back again to our previous
example, a new end user wishes to connect to the
second service. Assuming that a service instance
can handle at most two end users simultaneously, a
new instance of the service has to be created within
the virtual machine to treat the new request. We also
assume that a virtual machine can handle at most
two service instances at the same time. Hence, the
virtual machine might be replicated in order to
deploy the new service instance.</p>
      <p>To express our model dynamics, we have defined
two meta-reaction rules sequences written in BigMC
appropriate grammar. The first reaction rules
sequence expresses the scaling up of our running
example cloud architecture when the workload rises
(see Figure 10).
After the workload dropping (e.g. deallocation of
service, disconnection of client), the cloud system
has to go back to its original configuration shown in
Figure 5 (scale down). Hence, the defined second
reaction rules sequence provide to our model the
ability to scale down (see Figure 12).
By applying this first reaction rules sequence (new
end user, virtual machine replication, new service
instance, service allocation), we expect the cloud
system configuration shown in Figure 11. We can
notice the appearance of new service S2 instance
denoted S2_1, deployed in a new virtual machine
VM1_1 and connected to a new end user denoted
EU4.</p>
    </sec>
    <sec id="sec-14">
      <title>5. FORMAL ANALYSIS OF PROPERTIES</title>
      <p>Model checking is a fully automatic and fast
verification technique, which makes it very effective
one. Thus, for its ability to express and check safety
and liveness properties we use BigMC tool, a model
checker designed to operate on Bigraphical
Reactive Systems, in order to verify some cloud
systems inherent properties.</p>
      <p>Through the following example, we identify some
properties that we intend to verify using BigMC
model checker as elasticity property and its dual
one, i.e. a form of elasticity violation (the absence of
plasticity).</p>
      <p>While the elasticity property consists of checking
that the cloud system is scaling up, when the
workload rises and scaling down when, it drops.
Verifying the absence of plasticity is to ensure that a
cloud configuration returns to its initial state after an
adaptation process.</p>
      <p>
        Example 3: Cloud computing service availability is
key quality that can be affected by many threats as
distributed denial of service (DDoS) attacks
conducting to ensure the elasticity property, which
plays a significant role in keeping a high level of
service availability. To illustrate elasticity and its
verification technique, we return back to our running
example of a cloud system and its possible
reconfiguration.
Elasticity property: in
        <xref ref-type="bibr" rid="ref21">(Herbst et al., 2013)</xref>
        elasticity
is defined as ability degree of the cloud system to
adapt to workload changes by
provisioning/deprovisioning computing resources in
an autonomic manner.
      </p>
      <p>Using BigMC tool grammar (see Figure 13), we
express in our BRS-based analysis technique, this
property by the following formula.</p>
      <p>BigMC model checker tries to apply the two reaction
rules sequences (see Figure 10 and Figure 12) to
verify that the elasticity property holds. This means
checking whether cloud configuration size is
growing and shrinking.</p>
      <p>The result of the model checking is shown in Figure
14; we can notice that BigMC model checker
reaches the state 9 starting from initial state 1
without reporting any property violation (existence of
counter example).This means that the cloud system
is scaling up/down.</p>
      <p>Plasticity property: this property can be seen as a
cloud system stuck in a giving configuration while
being incapable to return to its initial one. This time,
we have associated the clause of Figure 15, to
express the plasticity property, and the BigMC tool
checks its absence, which means reaching the state
specified in the property clause.</p>
      <p>We can notice that the final state 9 corresponds to
the initial state (see Figure 16), meaning that the
cloud system has returned to its original
configuration at some point.</p>
    </sec>
    <sec id="sec-15">
      <title>6. CONCLUSION</title>
      <p>Elasticity is a key aspect in cloud computing that
plays a significant role in keeping a high level of
service availability in cloud-based systems. In this
paper, we have proposed a formal framework to
specify cloud-based systems and verify their
proprieties as the elasticity property and some forms
of its violation (e.g. plasticity). First, Bigraphical
Reactive Systems were adopted as a formal
framework for designing and reconfiguring cloud
architectures. Cloud Bigraphs graphical and formal
basis simplify considerably cloud systems
readability. Then, to formally analyse the elasticity
and plasticity proprieties, we have extended our
proposed cloud model by defining associated
clauses that are integrated in the model checker
BigMC, designed to operate on Bigraphical Reactive
Systems.</p>
      <p>BigMC model checker is a very interesting tool that
enables executing bigraphical models and checking
some of their proprieties. As future work, we intend
to evaluate our proposed bigraphical model with
other complementing model-checkers.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Mell</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Grance</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          (
          <year>2011</year>
          )
          <article-title>The NIST definition of Cloud Computing</article-title>
          .
          <source>Technical Report, National Institute of Standards and Technology (NIST)</source>
          , Gaithersburg, MD, p.
          <fpage>800</fpage>
          -
          <lpage>145</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>J.</surname>
          </string-name>
          (
          <year>2009</year>
          )
          <article-title>A Berkeley View of Cloud, A Berkeley View of Cloud: s</article-title>
          .n.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Vic (J.R.)</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          (
          <year>2011</year>
          )
          <article-title>Securing the Cloud: Cloud Computer Security Techniques and Tactics</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Guilherme</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          and
          <string-name>
            <given-names>Luis</given-names>
            <surname>Carlos</surname>
          </string-name>
          ,
          <string-name>
            <surname>E.D.</surname>
          </string-name>
          (
          <year>2012</year>
          )
          <article-title>A Survey on Cloud Computing Elasticity</article-title>
          .
          <source>In Proceedings of the 2012 IEEE/ACM Fifth International Conference on Utility and Cloud Computing (UCC '12)</source>
          , IEEE Computer Society, Washington, USA, p.
          <fpage>263</fpage>
          -
          <lpage>270</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          (
          <year>2011</year>
          )
          <article-title>Principles of Elastic Processes</article-title>
          .
          <source>IEEE Internet Computing</source>
          , vol.
          <volume>15</volume>
          , no.
          <issue>5</issue>
          , p.
          <fpage>66</fpage>
          -
          <lpage>71</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Gambi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Filieri</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Dustdar</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2013</year>
          )
          <article-title>Iterative Test suites refinement for elastic computing systems</article-title>
          .
          <source>In Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering (ESEC/FSE</source>
          <year>2013</year>
          ), ACM, New York, USA, p.
          <fpage>635</fpage>
          -
          <lpage>638</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Milner</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          (
          <year>2008</year>
          )
          <article-title>Bigraphs and their algebra</article-title>
          .
          <source>In Proceedings of the LIX Colloquium on Emerging Trends in Concurrency Theory (LIX</source>
          <year>2006</year>
          ), Electronic Notes in Theoretical Computer Science, Volume
          <volume>209</volume>
          , Elsevier, p.
          <fpage>5</fpage>
          -
          <lpage>19</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Grandison</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maximilien</surname>
            ,
            <given-names>E. M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Thorpe</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Alba</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2010</year>
          )
          <article-title>Towards a Formal Definition of a Computing Cloud</article-title>
          .
          <source>6th World Congress on Services, Miami</source>
          , p.
          <fpage>191</fpage>
          -
          <lpage>192</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>Dong</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hao</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          , Zhang,
          <string-name>
            <given-names>T.</given-names>
            and
            <surname>Zhang</surname>
          </string-name>
          <string-name>
            <surname>B.</surname>
          </string-name>
          (
          <year>2010</year>
          )
          <article-title>Formal discussion on relationship between virtualization and cloud computing</article-title>
          .
          <source>In Parallel and Distributed Computing</source>
          , Applications and Technologies (PDCAT), International Conference on, p.
          <fpage>448</fpage>
          -
          <lpage>453</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <surname>Freitas</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Watson</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          (
          <year>2012</year>
          )
          <article-title>Formalising workflows partitioning over federated clouds: Multilevel security and costs</article-title>
          .
          <source>In Services (SERVICES)</source>
          ,
          <year>2012</year>
          IEEE Eighth World Congress on, p.
          <fpage>219</fpage>
          -
          <lpage>226</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <surname>and Pourzandi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>2012</year>
          )
          <article-title>Cloud calculus: Security verification in elastic cloud computing platform</article-title>
          .
          <source>In International Symposium on Security in Collaboration Technologies and Systems (SECOTS2012)</source>
          , IEEE Press, p.
          <fpage>447</fpage>
          -
          <lpage>454</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <surname>Rady</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>2013</year>
          )
          <article-title>Formal definition of service availability in cloud computing using owl</article-title>
          .
          <source>In Computer Aided Systems Theory-EUROCAST</source>
          <year>2013</year>
          , Springer, p.
          <fpage>189</fpage>
          -
          <lpage>194</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <surname>Klai</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Tata</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2013</year>
          )
          <article-title>Formal Modelling of Elastic Service-Based Business Processes</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <given-names>Services</given-names>
            <surname>Computing</surname>
          </string-name>
          (SCC), 2013IEEE International Conference on, p.
          <fpage>424</fpage>
          -
          <lpage>431</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <surname>Benzadri</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bouanaka</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Belala</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          (
          <year>2014</year>
          )
          <article-title>Verifying Cloud Systems using A Bigraphical Maude-Based Model Checker</article-title>
          .
          <source>The 4th International Conference on Cloud Computing and Services Science</source>
          ,
          <string-name>
            <surname>CLOSER</surname>
          </string-name>
          , Barcelona, Spain.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <surname>Amziani</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Melliti</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Tata</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2013</year>
          )
          <article-title>Formal Modeling and Evaluation of Service-Based Business Process Elasticity in the Cloud</article-title>
          .
          <source>22nd IEEE International Conference on Collaboration Technologies and Infrastructure (WETICE</source>
          <year>2013</year>
          ), Hammamet, Tunisia, p.
          <fpage>284</fpage>
          -
          <lpage>291</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <string-name>
            <surname>Amziani</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Melliti</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Tata</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2013</year>
          )
          <article-title>Formal Modeling and Evaluation of Stateful Service-Based Business Process Elasticity in the Cloud</article-title>
          .
          <source>On the Move to Meaningful Internet Systems OTM 2013 Conferences</source>
          , Springer.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          <string-name>
            <surname>Milner</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          (
          <year>2009</year>
          )
          <article-title>The Space and Motion of Communicating Agents</article-title>
          . Cambridge University Press.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          <string-name>
            <surname>Perrone</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Debois</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Hildebrandt</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          (
          <year>2012</year>
          )
          <article-title>A Model Checker for Bigraphs</article-title>
          .
          <source>In proceedings of the 27th ACM Sym, in Applied Computing ACM-SAC'12</source>
          , p.
          <fpage>1320</fpage>
          -
          <lpage>1325</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          <string-name>
            <surname>Sahli</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bouanaka</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Dib</surname>
            ,
            <given-names>A.T.E.</given-names>
          </string-name>
          (
          <year>2014</year>
          )
          <article-title>Towards a Formal Model for Cloud Computing Elasticity</article-title>
          . To appear
          <source>in the 23rd IEEE International Conference on Collaboration Technologies and Infrastructure (WETICE</source>
          <year>2014</year>
          ), Parma, Italy.
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          <string-name>
            <surname>Herbst</surname>
            ,
            <given-names>N.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kounev</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Reussner</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          (
          <year>2013</year>
          )
          <article-title>Elasticity in Cloud Computing: What It Is, and What It Is Not</article-title>
          .
          <source>Proceedings of the 10th International Conference on Autonomic Computing (ICAC 13)</source>
          , San Jose, CA, USENIX, p.
          <fpage>23</fpage>
          -
          <lpage>27</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>