Towards An Architecture-Centric Approach to Manage Variability of
Cloud Robotics
Lei Zhang
1
, Huaxi (Yulin) Zhang
2
, Zheng Fang
3
, Xianbo Xiang
4
, Marianne Huchard
5
and Ren
´
e Zapata
6
Abstract— Cloud robotics is a field of robotics that attempts
to invoke Cloud technologies such as Cloud computing, Cloud
storage, and other Internet technologies centered around the
benefits of converged infrastructure and shared services for
robotics. In a few short years, Cloud robotics as a newly
emerged field has already received much research and industrial
attention. The use of the Cloud for robotics and automation
brings some potential benefits largely ameliorating the per-
formance of robotic systems. However, there are also some
challenges. First of all, from the viewpoint of architecture,
how to model and describe the architectures of Cloud robotic
systems? How to manage the variability of Cloud robotic
systems? How to maximize the reuse of their architectures?
In this paper, we present an architecture approach to easily
design and understand Cloud robotic systems and manage their
variability.
I. INTRODUCTION
Cloud robotics is a field of robotics that attempts to
invoke Cloud technologies such as Cloud computing, Cloud
storage, and other Internet technologies centered around the
benefits of converged infrastructure and shared services for
robotics [1]. Cloud Robotics was firstly introduced by James
Kuffner [1]. In a few short years, Cloud robotics as a
newly emerged field has already received much research and
industrial attention.
The use of Cloud computing for robotics and automation
brings some potential benefits largely ameliorating the per-
formance of robotic systems. Due to the limited capacities of
on-board processing, storage and battery capacities, robotic
devices are constrained to numerous limitations. It not only
solves the problems of robotic systems, such as on-board
*This work was supported by the National Natural Science Foundation
of China under Grant No. 61300020, the Scientific Research Funds for
Introduced Talents of Northeastern University under Grant No. 28720524.
1
Lei Zhang is with State Key Laboratory of Synthetical Automa-
tion for Process Industries, Northeastern University, Shenyang, China,
zl.org.cn@gmail.com
2
Huaxi (Yulin) Zhang is with MIS and INSSET, Universit
´
e de
Picardie Jules Verne, 33, rue Saint Leu, 80039 Amiens, France,
yulin.zhang@u-picardie.fr
3
Zheng Fang is with State Key Laboratory of Synthetical Automa-
tion for Process Industries, Northeastern University, Shenyang, China,
fangzheng@mail.neu.edu.cn
4
Xianbo Xiang is with School of Naval Architecture and Ocean Engineer-
ing, Huazhong University of Science and Technology, 1037, Luoyu Road,
430074, Wuhan, China, xbxiang@hust.edu.cn
5
Marianne Huchard is with LIRMM, UMR 5506, CNRS et Uni-
versit
´
e Montpellier 2, 161 rue Ada, 34392 Montpellier, France,
huchard@lirmm.fr
6
Ren
´
e Zapata is with LIRMM, UMR 5506, CNRS et Universit
´
e Mont-
pellier 2, 161 rue Ada, 34392 Montpellier, France, zapata@lirmm.fr
computation and storage limitation, asynchronization com-
munication, compatibility problem of multi-robot systems[2],
but also makes possibility of different directions or en-
hances their performance, such as remote brain, big data and
shared knowledge-base, collective learning and intelligent
behavior[3].
However, beyond these advantages, Cloud robotics also
brings us many challenges. For example, from the view of
architectures, how to construct the architectures of Cloud
robotic systems? How to model these architectures? How
to deploy these architectures in Clouds? How to reuse
these architectures? How to manage the variability of these
architectures?
In this paper, we propose a domain specific language –
CRALA trying to response the above questions. Our main
contributions are to propose:
• an architecture-centric design process for Cloud robotic
systems,
• a domain specific language for architecture-centric
Cloud robotic systems named CRALA.
The rest of the paper is organized as follows: We begin
with an introduction of related concepts, background and
related work of Architecture-centric Cloud robotics. We then
present an overview of the architecture-centric design process
for Cloud robotic systems. Then we describe the metamodel
of CRALA with examples and how CRALA manages the
variability of Cloud robotic systems. Afterwards, we present
the implementation of CRALA. Finally, we finish with a
discussion and future work.
II. BACKGROUND AND RELATED WORK
A. Related concepts
Architecture-centric Cloud robotics is a methodology of
developing robotics systems on Clouds using architecture-
centric development techniques.
Cloud computing Cloud computing is defined by the
National Institute of Standards and Technology (NIST) as:
”Cloud computing as a model for enabling ubiquitous, conve-
nient, on-demand network access to a shared pool of config-
urable computing resources (e.g., networks, servers, storage,
applications, and services) that can be rapidly provisioned
and released with minimal management effort or service
provider interaction [4]”.
Clouds offer services that can be grouped into three
categories: software as a service (SaaS), platform as a service
(PaaS), and infrastructure as a service (IaaS) [5].