<!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>Towards a Cloud-assisted and Agent-oriented Architecture for the Internet of Things</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Giancarlo Fortino</string-name>
          <email>g.fortino@unical.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wilma Russo</string-name>
          <email>w.russo@unical.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dipartimento di Ingegneria Informatica, Modellistica, Elettronica e Sistemistica (DIMES) Università della Calabria Via P. Bucci</institution>
          ,
          <addr-line>cubo 41C, 87036, Rende (CS)</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>- In the Internet of Things (IoT), all things (e.g. sensors, actuators, smart devices, smart objects, RFID, embedded computers, robots) have their identities, physical attributes, and interfaces. They will be seamlessly integrated into the information network such that they will become active participants in business, information and social processes wherever and whenever needed and proper. The technical realization of this vision is a complex challenge as distributed heterogeneous IoT components at different levels of abstractions need to cooperate among themselves, with conventional networked IT infrastructures, and also with human users. To cope with this issue, we propose the synergic exploitation of two complementary mainstream paradigms for large-scale distributed computing: the agent-oriented and the cloud computing paradigms. While the former can support the development of decentralized, dynamic, cooperating and open IoT systems in terms of multi-agent systems, the latter can empower the IoT objects with more computing and memory resources and effectively support system-wide higher-level mechanisms and policies. In this paper, we introduce a cloud-assisted and agent-oriented vision for IoT based on layered reference architecture. Finally, we briefly overview our agent-oriented middleware for cooperating smart objects and a sensor-cloud infrastructure that represent the basic building blocks for technically achieving such vision.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Keywords - Internet of Things; Smart Objects; Agent-oriented
Computing; Cloud Computing, Middleware</p>
      <p>I.</p>
      <p>INTRODUCTION</p>
      <p>
        The Internet of Things (IoT) term usually refers to a
worldwide network of interconnected heterogeneous objects
(sensors, actuators, smart devices, smart objects, RFID,
embedded computers, etc) uniquely addressable, based on
standard communication protocols [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. In the IoT, such objects
have therefore their identities, physical attributes, and
interfaces. They are seamlessly integrated into the information
network such that they become active participants in business,
information and social processes wherever and whenever
needed and proper.
      </p>
      <p>In particular, in this paper we model the IoT as a loosely
coupled, decentralized system of cooperating smart objects
(CSOs). A CSO is an autonomous, physical digital object
augmented with sensing and/or actuating, processing, storing,
and networking capabilities. CSOs are able to sense, store, and
interpret information created within themselves and in the
environment where they are situated, act on their own by also
performing directed actuation, cooperate with each other, and
exchange information with other kinds of IT devices/systems
and human users.</p>
      <p>The actual implementation and integration of IoT smart
objects, their management as well as the development of real
applications atop them, are complex challenges that require the
synergic use of suitable paradigms and technology for
largescale distributed computing. To deal with this challenge, we
propose the synergic exploitation of two complementary
mainstream paradigms for large-scale distributed computing:
(i) the agent-oriented paradigm, which fully supports the
development of decentralized, dynamic, cooperating and open
systems, and (ii) the cloud computing paradigm, which
efficiently enables the empowering of computing and storage
resources of IT systems.</p>
      <p>
        The Agent-oriented Computing paradigm defines
distributed software systems in terms multi-agent systems
(MAS). In particular, agents are networked software programs
that can perform specific tasks for a user and possess a degree
of intelligence that permits them to perform parts of their tasks
autonomously and to interact with their environment in a useful
manner. The agent features perfectly fit the CSO features [
        <xref ref-type="bibr" rid="ref2 ref3">2,
3</xref>
        ]:
•
•
•
•
      </p>
      <p>Autonomy: agents/CSOs should be able to perform the
majority of their problem solving tasks without the
direct involvement of humans or other agents/CSOs,
and they should have a degree of control over their
own actions and their own internal state.</p>
      <p>Interaction: agents/CSOs should be able to interact,
when they deem appropriate, with other software
agents/SOs and humans to complete their own problem
solving and support others with their activities where
appropriate.</p>
      <p>Responsiveness: agents/CSOs should perceive their
environment, in which they are situated and which may
be the physical world, a user, a collection of agents, the
Internet, and so forth, and respond in a timely fashion
to changes that may occur in it.</p>
      <p>Proactiveness: agents/CSOs should not simply act in
response to their environment, they should be able to
exhibit opportunistic, goal-directed behavior and take
the initiative where and when appropriate.</p>
      <p>
        The Cloud Computing paradigm provides flexible, robust
and powerful storage and computing resources, which enables
dynamic data integration and fusion from multiple data sources
[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. In addition a Cloud-based approach can offer flexibility
and adaptability in the management and deployment of data
analysis workflows. The dynamic deployment of software
components as Cloud services removes the need for new client
applications to be developed and deployed when the user
requirements change. This also introduces an intrinsic
competitive environment for the development of better
services. Cloud computing layers (Infrastructure as a Service
IaaS, Platform as a Service - PaaS, Software as a Service
SaaS) and software components (e.g., databases, data mining,
workflow tools) can be customized to support a distributed
real-time system for the management and analysis of IoT
objects and data streams generated by IoT objects.
      </p>
      <p>This paper proposes a cloud-assisted and agent-oriented
vision of IoT based on a layered reference architecture.
Furthermore, we briefly overview our agent-oriented
middleware for CSOs and BodyCloud, a sensor-cloud
infrastructure, that represent the basic building blocks, which
will be purposely integrated, for technically achieving such
vision.</p>
      <p>The rest of this paper is organized as follows. Section II
provides a look at glance of the mainstream IoT visions. In
Section III our reference architecture for cloud-assisted and
agent-oriented vision of IoT is proposed. Section IV overviews
our agent-oriented middleware for cooperating smart objects
and a sensor-cloud infrastructure, and discusses their
integration requirements to realize the proposed reference
architecture. Finally conclusions are drawn.</p>
      <p>II.</p>
      <p>SMART OBJECT-ORIENTED IOT</p>
      <p>
        IoT semantically means a world-wide network of
interconnected things (an ecosystem of things), which are
uniquely addressable and based on standard communication
protocols [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Things include sensors, actuators, sensor
networks, embedded systems, RFID tags and readers, and other
soft sensors in different forms. These things can be deployed in
different physical environments to support diversified
applications domains. They are communication-oriented
objects and provide identification and information storage (e.g.
RFID tags), information collection (e.g. sensor networks),
information processing (e.g. embedded devices and sensor
networks), and control and actuation (e.g. embedded systems
including smart actuators). The interesting advantage is that
everything is "reachable" and can be "exploited". The main
disadvantages are that such enormous heterogeneity makes
distributed communication and management very complex;
moreover, "intelligence" is not embedded and should be
provided at a higher level by means of smart services and/or
applications.
      </p>
      <p>
        Beyond such low-level and network-oriented vision of IoT,
the smart object-oriented vision is at a higher level of
abstraction and promotes an ecosystem of smart objects based
on the Internet [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. In particular, in such vision IoT is viewed as
a loosely coupled, decentralized system of smart objects (SOs),
which are autonomous physical/digital objects augmented with
sensing/actuating, processing, and networking capabilities.
Although, in such vision, not all "things" can be directly
exploited as the object granularity is coarser, communication
among smart objects is homogenized by the adoption of the
Internet protocols and "intelligence" is mainly embedded inside
the objects themselves.
      </p>
      <p>The Application layer encompasses applications based
not only on SOs but also on other IT
infrastructures.</p>
      <p>The Middleware layer provides as set of mechanisms
for the naming, discovery, high-level interaction
and state management of SOs.</p>
      <p>The Internet layer includes application, transport, and
network protocols for supporting the
communication with SOs and among SOs.</p>
      <p>The</p>
    </sec>
    <sec id="sec-2">
      <title>Smart Object layer offers programming frameworks and tools enabling the design and implementation of SOs.</title>
      <p>
        Even though the standardization process of the SO
communications based on IP is supported by the IP for Smart
Objects (IPSO) alliance [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], the availability of middleware and
frameworks that support development and management of SOs
is still limited. Nowadays, apart from several available
middlewares for smart environments (e.g. Smart-Its, 2WEAR,
Ambient Agoras, Aura, Gaia, iRoom) [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ] that are not
centered on the very concept of SO, a few SO-specific
middlewares have been so far proposed: UbiComp [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], FeDNet
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], Smart Products [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], and ACOSO [
        <xref ref-type="bibr" rid="ref12 ref13">12, 13</xref>
        ].
      </p>
      <p>
        UbiComp [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] defines a paradigm providing conceptual
abstractions, the plug/synapse model and a middleware named
GAS (Gadgetware Architectural Style)-OS, which is installed
on each SO, to manage SO as components of distributed
applications composed of ubiquitous computing services.
      </p>
      <p>
        FeDNet [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] is based on a data-centric approach.
Specifically, FeDNet uses XML-based documents to describe
the requirements of an SO application, without considering the
management of the SOs. Therefore, the services offered by SOs
are described through structured documents. On the basis of
such documents, the run-time FeDNet infrastructure provides a
semantic association between the applications and the SOs. In
FeDNet, SOs are objects of the daily life with computing and
communication capabilities. However, as SOs are not
proactive, task-oriented FeDNet applications are able to
provide proactivity by SO orchestration.
      </p>
      <p>
        Smart Products [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] aim at the development of SO
equipped with proactive knowledge. Such knowledge is
exploited to communicate and cooperate with human users,
other smart objects and the external environment. SOs rely on
MundoCore, a communication middleware, and a set of
welldefined ontologies to enable effective cooperation among SOs.
      </p>
      <p>
        ACOSO (Agent-based COoperating Smart Objects) [
        <xref ref-type="bibr" rid="ref12 ref13">12,
13</xref>
        ] is a middleware providing an agent-oriented programming
model for CSOs and tools for their effective development.
CSOs are based on an event-driven proactive architecture and
on two different communication models (message passing and
publish/subscribe). ACOSO is currently available atop JADE
[
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] and JADEX [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. A more detailed description of ACOSO
is reported in Sect. IV.A.
      </p>
      <p>III.</p>
    </sec>
    <sec id="sec-3">
      <title>A CLOUD-ASSISTED AND AGENT-ORIENTED</title>
      <p>ARCHITECTURE FOR IOT</p>
      <p>To deal with the complexity of the SO-based IoT, we
propose a high-level architecture based on cloud and
agentbased computing. The architecture named CA-IoT
(Cloudassisted and Agent-based IoT) is shown in Figure 2. The
architecture components are:</p>
      <p>The Smart User Agent, which models human users in
the context of specific smart systems. They
therefore provide GUI-based functionalities
through which users can request services and/or
formalize specific service requests.</p>
      <p>The Smart Interface Agent, which defines an
interfacing agent such as brokers, mediators,
wrappers. Specifically, they are able to interact
with and/or wrap components of the external IT
systems.</p>
    </sec>
    <sec id="sec-4">
      <title>The Smart Object Agent, which models a CSO.</title>
      <p>
        The CyberPhysical Environment, which refers to the
non-agent-oriented logical and physical context
(made up of logical and physical components) in
which agents are embedded. It can be modeled in
terms of a reactive/proactive environment
abstraction [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] that is able to interact with agents
according to a specific coordination model.
      </p>
      <p>The Cloud Computing Platform, which supports all
smart agents, empowering their specific resources,
and allows for the definition of new (virtual) smart
object agents as meta-aggregation of existing
smart object agents.
IV. INTEGRATING SMART OBJECT MIDDLEWARE AND
CLOUD PLATFORM FOR LARGE-SCALE IOT SYSTEMS</p>
      <p>MANAGEMENT
A. An Agent-oriented Middleware for the Development and
Management of CSOs</p>
      <p>
        The ACOSO middleware allows for the development and
management of CSOs, which are modeled as agents that can
cooperate with each other and with non-agent cyber-physical
entities to fulfill specific goals. An ecosystem of CSOs
therefore forms a multi-agent system (MAS). ACOSO
currently relies on JADE that provides an effective agent
management and communication support and on an external
smart object discovery service that is purposely integrated into
ACOSO [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. Specifically, CSOs can be implemented as either
JADE or JADEX agents, atop both Java-based and
Androidbased devices, and can cooperate by a direct coordination
model based on ACL message passing and/or by a
spatiotemporal decoupled coordination model relying on a
topicbased publish/subscribe mechanism. Figure 3 shows the
JADEbased ACOSO platform for CSO development and
deployment. The platform is composed of three layers:
      </p>
      <p>The high-level CSO architecture, which is the
reference architectural agent-oriented model for</p>
      <p>CSOs.</p>
      <p>The JADE-based agent middleware, which provides
an implementation of the high-level CSO
architecture through JADE and JADEX atop
different computing devices (PCs and mobile
devices).</p>
      <p>
        The WSAN programming and management, which is
based on the Building Management Framework
(BMF1) [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], for the management of the wireless
sensor and actuator network (WSAN) of smart
space-oriented CSOs, and on the Signal In-Node
Processing Environment (SPINE2) [
        <xref ref-type="bibr" rid="ref19 ref20">19, 20</xref>
        ], for the
management of the body area network (BAN) of
body/personal oriented CSOs.
1 http://bmf.deis.unical.it
2 http://spine.deis.unical.it
Figure 4 shows the JADE-based CSO architecture. CSOs
are agents of the JADE platform (either simple JADE agents or
encapsulated JADEX agents). They are therefore managed by
the AMS (Agent Management System), communicate through
the ACL-based message transport system, and use the
Directory Facilitator (DF) to look up CSOs and other agents.
The DF, which supports dynamic agent service discovery, was
purposely modified/extended in ACOSO to allow searching
CSOs on the basis of their specific metadata: type, offered
services, location, static hw properties, dynamic system
properties. Currently, the extended JADE DF receives requests
from the JADE-based CSOs and fulfills them by using the
remote interface of an external CSO discovery service [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ].
The main CSO architecture components are:
      </p>
      <p>The Task Management Subsystem, which manages the
reactive and proactive tasks of CSOs. In particular,
tasks are event-driven and state-based software
components encapsulating specific objectives to
fulfill through computation, communication,
sensing/actuation, and storage management
operations. Tasks can be defined as JADE
Behaviours or JADEX Plans so their execution is
based on the mechanisms provided by the basic
JADE behavioral execution model or
planoriented Jadex execution model, respectively.</p>
      <p>Being tasks driven by events, external CSO
communication, signals to/from the CSO devices,
data to/from the knowledge base (KB) are
internally formalized and managed as events.</p>
      <p>The Communication Management Subsystem, which
provides a common interface for CSO
communications. In particular, message-based
communication is based on the ACL-based
MessagingService whereas publish/subscribe
coordination is the TopicManagementService. The
subsystem is internally organized in handlers. The
CommunicationManagerMessageHandler, which
is implemented as Behaviour in JADE and as Plan
in Jadex, captures the ACL messages targeting
CSOs and translates them into internal events.</p>
      <p>Moreover, the TCPAdapter and UDPAdapter
manage communication with external networked
entities based on TCP and UDP, respectively.</p>
      <p>The Device Management Subsystem, which manages
the sensing/actuation devices that belong to the
CSO. It is organized in a DeviceManager handling
several DeviceAdapters. Currently, two
DeviceAdapters are available: the BMFAdapter,
which allows to manage WSANs based on BMF,
and the SPINEAdapter, which allows to manage
BANs based on SPINE. BMF and SPINE are
based on IoT standards protocols such as IEEE
802.15.4, ZigBee, and 6LowPan.</p>
      <p>The KB Management Subsystem, which supports
CSOs through a knowledge base (KB). It consists
of a KBManager, which manages and coordinates
different KBAdapters, and a KBAdapter, which
manages a KB containing the knowledge of the
CSO. KB can be local and/or remote and archives
information that can be shared among tasks.</p>
      <p>
        Moreover, to support small-size CSOs running on a single
sensor node, the Mobile Agent Platform for SunSPOT
(MAPS3) framework [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] can be adopted to implement the
CSO architecture. It is worth noting that MAPS agents can be
wrapped by JADE agents through the JADE-MAPS gateway
[
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] so as to interact with JADE-based CSO agents.
B. BodyCloud: an architecture for Cloud-assisted body area
networks
      </p>
      <p>
        BodyCloud [
        <xref ref-type="bibr" rid="ref23 ref24 ref25">23, 24, 25</xref>
        ] is a SaaS-oriented architecture for
the integration of BANs and a Cloud PaaS infrastructure. Its
3 http://maps.deis.unical.it
architecture, shown in Figure 5, consists of four main
subsystems (or sides):
      </p>
      <p>The Body-side manages the BAN and sends the
collected sensor data to the Cloud-side through an
Android-enabled mobile device. In particular, data
acquisition is currently based on Android-SPINE,
the Android version of SPINE. It allows
Androidenabled smartphones and tablets to be used as
coordinator of the BAN. In particular, the
coordinator communicates with the wearable
sensors by means of the SPINE application-level
protocol atop Bluetooth and supports sensor
discovery, sensor configuration, in-node
processing, BSN activation/deactivation, data
collection, and logging.</p>
      <p>The Cloud-side provides data collection and storage,
processing/analysis and visualization. Each
specific application can be defined through four
programming abstractions: Group, Modality,
Workflow/Node, and View. Group formalizes a
specific application manipulating a well-defined
BAN data source. Modality captures a specific
interaction Body-Cloud sides and Viewer-Cloud
sides. In particular, it models a specific service,
such as data feeds to the Cloud-side, data analysis
tasks, single-user or community applications.</p>
      <p>Workflow formalizes a data-flow process
analyzing input data to generate output data. It
consists of one or more nodes organized in a
directed acyclic graph. Node is a specific
algorithm that can be developed according to the
Workflow Engine library (see Analyst-side in Fig.
5). A Node is uploaded to the Cloud-side where it
can be used in different workflows. Finally, View
defines the visualization layout of the output data
for Viewers. Such abstractions are supported by
the developed RESTLet-based SaaS Framework,
which makes the interaction with the Cloud-side
fully based on HTTP get, put, post, delete
methods. The Cloud-side is supported by the
Google App Engine PaaS 4 that enables data
persistence and task execution.</p>
      <p>The Analyst-side supports the development of new
application services. In particular, developers can
create new BodyCloud services by defining the
aforementioned abstractions. To program
workflows, the Analyst-side is based on an
appropriate development environment (XML</p>
      <p>Editor and Workflow Engine API).</p>
      <p>The Viewer-side visualizes the output produced by the
data analysis through advanced graphical reports.</p>
      <p>By applying a View abstraction (see above) to the
data, the graphical view is automatically
generated. The current prototype is based on a
Java library named jxReport that has been
purposely implemented and integrated into the
client application.
4 https://cloud.google.com/products/</p>
      <p>To support the CA-IoT architecture introduced in Sect. III
and thus develop large-scale IoT systems, ACOSO and
BodyCloud are being jointly extended and integrated according
to the following main requirements:</p>
      <p>Smart agent enhancement. While the basic smart
agent layer is fully supported by ACOSO, the
Cloud platform needs to provide a new
functionality to define Cloud-based smart agents
to dynamically create new virtual smart interface
and object agents than run on the Cloud-side and
seamlessly interact with the basic ACOSO agents.</p>
      <p>Smart object data stream collection and management.</p>
      <p>Data streams coming from highly decentralized
smart objects needs to be efficiently uploaded onto
the Cloud-side and here effectively managed.</p>
      <p>Workflow-oriented analysis of smart object data.</p>
      <p>Decision making applications should be
dynamically developed through distributed
workflows defined at the Cloud-side involving
smart agents and cloud services.</p>
      <p>Effective multi-level security architecture for smart
object data collection (from smart objects to the
Cloud-side) and data analysis services (at
Cloudside).</p>
    </sec>
    <sec id="sec-5">
      <title>CONCLUSIONS AND FUTURE WORK</title>
      <p>
        In this paper, we have proposed a novel high-level
architecture for smart object-oriented IoT based on Cloud and
Agents. Through the exploitation of agent-based computing,
the proactiveness and cooperation capabilities of smart objects
could be effectively defined, whereas by means of cloud
computing, smart objects could be empowered in terms of
processing power and storage resources. Thus, cloud-assisted
and agent-oriented smart objects could be used as basis for the
development of large-scale IoT applications and systems. The
proposed architecture can be actually implemented by adopting
and integrating an effective smart object middleware and an
efficient cloud platform. To this purpose, we briefly introduced
ACOSO, an agent-oriented middleware for the programming
and management of cooperative smart objects, and BodyCloud,
an architecture for the integration of sensors on the Cloud.
They are currently being integrated according to specific
defined requirements to achieve a large-scale distributed
platform for smart object-based IoT development. Finally,
future work will be aimed at defining a novel methodology for
the development of IoT applications. Such methodology will be
obtained as extension of ELDAMeth [
        <xref ref-type="bibr" rid="ref26 ref27">26, 27</xref>
        ], a methodology
for simulation-based prototyping of distributed agent systems.
      </p>
    </sec>
    <sec id="sec-6">
      <title>ACKNOWLEDGMENT</title>
      <p>Authors wish to thank Antonio Guerrieri and Michele
Lacopo for their valuable efforts and contribution in the
development of the smart object agent-oriented middleware
and Giuseppe Di Fatta (University of Reading) for his valuable
insights for the BodyCloud approach definition. This work has
been partially supported by TETRis – TETRA Innovative Open
Source Services, funded by the Italian Government (PON
0100451). Giancarlo Fortino is also partially funded by DICET –
INMOTO – Organization of Cultural Heritage for Smart
Tourism and REal – Time Accessibility (OR.C.HE.S.T.R.A.)
funded by the Italian Government (PON04a2_D).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>D.</given-names>
            <surname>Bandyopadhyay</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Sen</surname>
          </string-name>
          , “
          <article-title>The internet of things - applications and challenges in technology</article-title>
          and Standardization,” Springer
          <source>International Journal of Wireless Personal Communications</source>
          ,
          <volume>58</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>49</fpage>
          -
          <lpage>69</lpage>
          , May
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M.</given-names>
            <surname>Vinyals</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Rodriguez-Aguilar</surname>
          </string-name>
          , J. Cerquides, “
          <article-title>A Survey on Sensor Networks from a Multiagent Perspective,”</article-title>
          <source>The Computer Journal</source>
          ,
          <volume>54</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>455</fpage>
          -
          <lpage>470</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Rogers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Corkill</surname>
          </string-name>
          , and
          <string-name>
            <given-names>N.R.</given-names>
            <surname>Jennings</surname>
          </string-name>
          ,
          <string-name>
            <surname>N. R.</surname>
          </string-name>
          “
          <article-title>Agent technologies for sensor networks</article-title>
          ,
          <source>” IEEE Intelligent Systems</source>
          ,
          <volume>24</volume>
          , pp.
          <fpage>13</fpage>
          -
          <lpage>17</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>R.</given-names>
            <surname>Hill</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hirsch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Lake</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Moshiri</surname>
          </string-name>
          ,
          <article-title>"Guide to Cloud Computing. Principles and Practice,"</article-title>
          <source>Computer Comm. and Networks</source>
          , Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>G.</given-names>
            <surname>Kortuem</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Kawsar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Sundramoorthy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Fitton</surname>
          </string-name>
          ,
          <article-title>"Smart Objects as Building Blocks for the Internet of Things,"</article-title>
          <source>IEEE Internet Computing</source>
          ,
          <volume>14</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>44</fpage>
          -
          <lpage>51</lpage>
          , January/February,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Adam</given-names>
            <surname>Dunkels</surname>
          </string-name>
          and JP Vasseur, “
          <article-title>IP for Smart Objects”, Internet Protocol for Smart Objects (IPSO) Alliance White paper #1</article-title>
          ,
          <string-name>
            <surname>Sept</surname>
          </string-name>
          .
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Guerrieri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Russo</surname>
          </string-name>
          ,
          <article-title>"Middleware for Smart Objects: Stateof-the-art and Research Challenges"</article-title>
          ,
          <source>in Internet of Things based on Smart Objects: technology, middleware and applications</source>
          ,
          <source>Springer Series on the Internet of Things</source>
          .
          <year>2014</year>
          . to appear.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>L.</given-names>
            <surname>Roalter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kranz</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Moller</surname>
          </string-name>
          ,
          <article-title>A Middleware for Intelligent Environments and the Internet of Things,"</article-title>
          <source>in Proceedings of the 7th international conference on Ubiquitous intelligence and computing (UIC)</source>
          . Berlin, Heidelberg: Springer-Verlag,
          <year>2010</year>
          , pp.
          <fpage>267</fpage>
          --
          <lpage>281</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Christos</given-names>
            <surname>Goumopoulos</surname>
          </string-name>
          and Achilles Kameas, “
          <article-title>Smart Objects as Components of UbiComp Applications</article-title>
          ,”
          <source>International Journal of Multimedia and Ubiquitous Engineering</source>
          , Vol.
          <volume>4</volume>
          , No. 3,
          <string-name>
            <surname>July</surname>
          </string-name>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>F.</given-names>
            <surname>Kawsar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Nakajima</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. H.</given-names>
            <surname>Park</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S. S.</given-names>
            <surname>Yeo</surname>
          </string-name>
          ,
          <article-title>"Design and implementation of a framework for building distributed smart object systems,"</article-title>
          <source>Journal of Supercomputing</source>
          , vol.
          <volume>54</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>4</fpage>
          -
          <lpage>28</lpage>
          , Oct.
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M.</given-names>
            <surname>Miche</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Schreiber</surname>
          </string-name>
          ,
          <string-name>
            <surname>D.</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Hartmann</surname>
          </string-name>
          , “Core Services for Smart Products,” In: AmI-Blocks'
          <volume>09</volume>
          ,
          <string-name>
            <surname>at</surname>
            <given-names>AmI</given-names>
          </string-name>
          '
          <volume>09</volume>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Guerrieri</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Russo</surname>
          </string-name>
          .
          <article-title>Agent-oriented smart objects development</article-title>
          .
          <source>In Proc. of IEEE 16th Int. Conference on Computer Supported Cooperative Work in Design (CSCWD)</source>
          , pp.
          <fpage>907</fpage>
          --
          <lpage>912</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Guerrieri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lacopo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lucia</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Russo</surname>
          </string-name>
          ,
          <article-title>"An Agent-based Middleware for Cooperating Smart Objects", in Highlights on Practical Applications of Agents and Multi-Agent Systems</article-title>
          , Communications in Comp. and Inform.
          <source>Science (CCIS)</source>
          , Vol.
          <volume>365</volume>
          , pp.
          <fpage>387</fpage>
          -
          <lpage>398</lpage>
          , Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bellifemine</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          , and G. Rimassa, “
          <article-title>Developing multi agent systems with a FIPA-compliant agent framework,”</article-title>
          .
          <source>Software Practice And Experience</source>
          <volume>31</volume>
          ,
          <fpage>103</fpage>
          -
          <lpage>128</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>A.</given-names>
            <surname>Pokahr</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Braubach</surname>
          </string-name>
          , W. Lamersdorf, “
          <article-title>Jadex: A BDI Reasoning Engine,” In Multi-Agent Programming: Languages, Platforms and Applications</article-title>
          .
          <source>Multiagent Systems, Artificial Societies, and Simulated Organizations</source>
          , Vol.
          <volume>15</volume>
          , Springer, pp.
          <fpage>149</fpage>
          -
          <lpage>174</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>D.</given-names>
            <surname>Weyns</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Omicini</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Odell</surname>
          </string-name>
          ,
          <article-title>Environment as a first-class abstraction in multiagent systems</article-title>
          ,
          <source>International Journal on Autonomous Agents and Multi-Agent Systems 14 (1)</source>
          , pp.
          <fpage>5</fpage>
          -
          <lpage>30</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lakovic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Russo</surname>
          </string-name>
          , P. Trunfio, “
          <article-title>A discovery service for smart objects over an agent-based middleware”</article-title>
          ,
          <source>IDCS 2013, Lecture Notes in Computer Science (LNCS)</source>
          , Vol.
          <volume>8823</volume>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>14</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Guerrieri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. O</given-names>
            <surname>'Hare</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Ruzzelli, “
          <article-title>A Flexible Building Management Framework based on Wireless Sensor and Actuator Networks”</article-title>
          ,
          <source>Journal of Network and Computer Applications</source>
          ,
          <volume>35</volume>
          (
          <issue>6</issue>
          ), pp.
          <fpage>1934</fpage>
          -
          <lpage>1952</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bellifemine</surname>
          </string-name>
          , G. Fortino,
          <string-name>
            <given-names>R.</given-names>
            <surname>Giannantonio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Gravina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Guerrieri</surname>
          </string-name>
          , M. Sgroi, “
          <article-title>SPINE: A domain-specific framework for rapid prototyping of WBSN applications”</article-title>
          <source>Software Practice and Experience</source>
          ,
          <volume>41</volume>
          (
          <issue>3</issue>
          ),
          <year>2011</year>
          , pp.
          <fpage>237</fpage>
          -
          <lpage>265</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bellifemine</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Aiello</surname>
          </string-name>
          , G. Fortino,
          <string-name>
            <given-names>S.</given-names>
            <surname>Galzarano</surname>
          </string-name>
          , R. Gravina, “
          <article-title>An agent-based signal processing in-node environment for real-time human activity monitoring based on wireless body sensor networks”</article-title>
          .
          <source>Journal of Engineering Applications of Artificial Intelligence</source>
          , Vol.
          <volume>24</volume>
          , n. 7, pp.
          <fpage>1147</fpage>
          -
          <lpage>1161</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>F.</given-names>
            <surname>Aiello</surname>
          </string-name>
          , G. Fortino,
          <string-name>
            <given-names>R.</given-names>
            <surname>Gravina</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Guerrieri</surname>
          </string-name>
          ,
          <article-title>A Java-based Agent Platform for Programming Wireless Sensor Networks</article-title>
          ,
          <source>The Computer Journal</source>
          ,
          <volume>54</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>439</fpage>
          -
          <lpage>454</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>M.</given-names>
            <surname>Mesjasz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Cimadoro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Galzarano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ganzha</surname>
          </string-name>
          , Giancarlo Fortino,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Paprzycki “Integrating JADE and MAPS for the development of Agentoriented WSN-based distributed applications”</article-title>
          ,
          <source>In Intelligent Distributed Computing VI</source>
          , Springer, SCI series, Vol.
          <volume>446</volume>
          , pp.
          <fpage>211</fpage>
          -
          <lpage>220</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Parisi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Pirrone</surname>
          </string-name>
          , G. Di Fatta, “
          <article-title>BodyCloud: A SaaS Approach for Community Body Sensor Networks,” in Future Generation Computer Systems</article-title>
          .
          <year>2014</year>
          . to appear.
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          , G. Di Fatta, “
          <article-title>Engineering Large-Scale Body Area Networks Applications”</article-title>
          ,
          <source>accepted 8th International Conference on Body Area Networks (BodyNets)</source>
          ,
          <source>Sept. 30-Oct- 2</source>
          , 2013 Boston (USA), ACM press.
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pathan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. Di</given-names>
            <surname>Fatta</surname>
          </string-name>
          ,
          <article-title>"BodyCloud: Integration of Cloud Computing and Body Sensor Networks"</article-title>
          ,
          <source>IEEE 4th International Conference on Cloud Computing Technology and Science (CloudCom</source>
          <year>2012</year>
          ), Taipei, Taiwan, Dec 3-
          <issue>6</issue>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Garro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mascillaro</surname>
          </string-name>
          , W. Russo, “
          <article-title>Using Event-driven Lightweight DSC-based Agents for MAS Modeling</article-title>
          ,” in
          <source>International Journal on Agent Oriented Software Engineering</source>
          ,
          <volume>4</volume>
          (
          <issue>2</issue>
          ),
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,W. Russo, “
          <article-title>ELDAMeth: A Methodology For Simulationbased Prototyping of Distributed Agent Systems”</article-title>
          ,
          <source>Information and Software Technology</source>
          ,
          <volume>54</volume>
          (
          <issue>6</issue>
          ), pp.
          <fpage>608</fpage>
          -
          <lpage>624</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>