these steps.
The library has been validated by conducting ex-
periments aiming at assessing the overhead it intro-
duces at runtime while it acts as an intermediary be-
tween the application and the native PaaS APIs. The
experiments have shown that such overhead is negli-
gible.
The paper is structured as follows: Section 2
presents related work. Section 3 introduces the ap-
proach we have taken in building the CPIM library.
Section 4 describes the application “Meeting in the
Cloud” (MiC), we have developed and used as a ref-
erence for our experiments. Section 5 discusses the
experimental tests we performed and the results we
have obtained. Finally, Section 6 draws the conclu-
sion and outlines future work.
2 RELATED WORK
The PaaS market is, in these days, rich of interest-
ing initiatives. The first and most known solutions
are those offered by Google App Engine (Euphro-
sine, 2013) and Windows Azure (Meier, 2013), but
others are being launched and are gaining interest in
the practitioners and scientific communities. Among
the others, we can mention so called open platform
as a service which allow to develop, test, and de-
ploy applications implemented in any programming
language, see for instance OpenShift (Red-Hat, 2012)
and Cloud Foundry (CloudFoundry, 2013).
Currently each Cloud provider exposes services
that, even when they are classified as similar, offer
a different semantic and can be accessed through dif-
ferent APIs. This leads to serious problems of inter-
operability and portability of applications and of data
residing on Cloud platforms.
There are some general approaches that could
be taken to facilitate the portability across platforms
(Petcu, 2011):
• Adoption of globally recognized and accepted
standard APIs.
• Use of Wrapper/Adapter, i.e., a mediation layer
that can decouple applications from the character-
istics of Cloud platforms.
Among the standardization initiatives, IEEE
P2301 (Ortiz, 2011) is a working group aiming to
draw directives for the definition of Cloud services
APIs. The goal is to define concepts, formats and
conventions that, if widely adopted, would facili-
tate the portability and interoperability of different
Clouds, allowing further growth and effective use of
Cloud computing. Another example in this area is the
partnership between Google and VMware (VMware
and Google, 2012). The two companies, leaders of
the Cloud market, through this alliance are trying to
answer to portability issues by leveraging VMware
vCloud technologies, Spring-Source, Google Web
Toolkit and Google App Engine, to facilitate the de-
velopment and implementation of business applica-
tions. Using the development environment based on
Eclipse Spring Source Tool Suite, developers can cre-
ate their own applications and later have the oppor-
tunity to carry out the deployment on a VMWare
vSphere private environment, on a VMware vCloud
partner or directly on Google AppEngine. OCCI,
Open Cloud Computing Interface (OCCI, 2012) is an-
other standardization activity that has been initially
focusing on the creation of OCCI API for remote
management of low level Clouds called IaaS (Infras-
tructure as a Service) and that now is trying to cover
the PaaS model as well.
Among the mediation approaches, CSAL, Cloud
Storage Abstraction Layer (Hill and Humphrey,
2010), provides an abstraction of typical storage ser-
vices offered by most of PaaS, i.e., blobs and tables.
The challenge of this project is related to the map-
ping of abstract operations in specific calls to such
services.
SimpleCloud (Zend et al., 2013) is a open source
project created by Zend Technologies in collabora-
tion with IBM, Microsoft, Rackspace, Nirvanix and
GoGrid, having the objective of improving the porta-
bility of PHP applications. With SimpleCloud, the
developercan use a provider specific API or use a me-
diation layer that allows to write portable code among
the supported set of vendors.
Among the current European-funded projects,
mOSAIC (Open-Source API and Platform for Mul-
tiple Clouds) (mOSAIC, 2013) has the aim of de-
veloping an open-source PaaS as a mean of com-
munication between Cloud applications and IaaS ser-
vices. A mOSAIC application is able to postpone
the choice of the underlying infrastructure. In other
words, application developers and Cloud operators
have the potential to defer decisions about which IaaS
provider to use when the applications will actually
run. The Cloud4SOA(Nikos Loutas, 2011) consor-
tium seeks to consolidate three computing paradigms,
namely Cloud computing, the service-oriented archi-
tecture (SOA) and lightweight semantics. The overall
objective is to propose a reference architecture that
allows interoperability between different Cloud ven-
dors, facilitating the development, deployment and
migration of applications among different Cloud PaaS
providers. Specifically, Cloud4SOA adopts a seman-
tic approach to allow developers and PaaS providers
to express their technology-specific concepts with a
CLOSER2013-3rdInternationalConferenceonCloudComputingandServicesScience
592