<!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>From Service-Oriented Architectures to Nature-Inspired Pervasive Service Ecosystems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Franco Zambonelli</string-name>
          <email>franco.zambonelli@unimore.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mirko Viroli</string-name>
          <email>mirko.viroli@unibo.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dipartimento di Elettronica Informatica e Sistemistica, Alma Mater Studiorum - Universita` di Bologna</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Dipartimento di Scienze e Metodi dell'Ingegneria, Universita` di Modena e Reggio Emilia</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>II. CASE STUDY AND REQUIREMENTS</title>
      <p>A simple case study – representative of a larger class
of emerging pervasive scenarios – can help grounding our</p>
      <p>
        I. INTRODUCTION arguments and sketching the requirements of future pervasive
The ICT landscape, yet notably changed by the advent of services.
ubiquitous wireless connectivity, is further re-shaping due to It is a matter of fact that we are increasingly surrounded by
the increasing deployment of pervasive computing technolo- digital displays: from those of wearable devices to wide
wallgies. Via RFID tags and alike, objects will carry on digital mounted displays pervading urban and working environments.
information of any sort. Wireless sensor networks and camera Currently, the latter are simply conceived as static information
networks will be spread in our cities and buildings to monitor servers to show information in a manually-configured manner
physical phenomena. Smart phones and alike will increasingly – e.g., cycling some pre-defined commercials or general
intersense and store notable amounts of data related to our personal, est news – independently of the context in which they operate
social and professional activities, other than feeding (and being and of the users nearby. However, such displays infrastructures
fed by) the Web with spatial and social real-time information can be made more effective and advantageous for both users
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. and information/service providers by becoming general, open,
      </p>
      <p>
        This evolution is contributing to building integrated and and adaptable information service infrastructures.
dense infrastructures for the pervasive provisioning of general- First, information should be displayed based on the current
purpose digital services. If all their components will be able to state of the surrounding physical and social environment. For
opportunistically connect with each other, such infrastructures instance, by exploiting information from surrounding
tempercan be used to enrich existing services with the capability ature sensors and from user profiles, an advertiser could have
of autonomously adapting their behavior to the physical and ice tea commercials – instead of liquor ones – being displayed
social context in which they are invoked, and will also in a warm day and in a location populated by teenagers. Also,
support innovative services for enhanced interactions with the actions could be coordinated among neighboring displays, e.g.,
surrounding physical and social worlds [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Users will play an to avoid irritating users with the same ads as they pass by, or to
active role, by contributing data and services and by making use adjacent displays as a single wide one to show complex
available their own sensing and actuating devices. This will multifaceted information. These examples express a general
make pervasive computing infrastructures as participatory and requirement for pervasive services:
capable of value co-creation as the Web [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], eventually acting Situatedness — Pervasive services deal with
spatiallyas globally shared substrates to externalize and enhance our and socially-situated activities of users, and should thus
physical and social intelligence, and make it become collective be able to interact with the surrounding physical and
and more valuable. social world and adapt their behavior accordingly. The
      </p>
      <p>We are already facing the commercial release of a variety infrastructure itself, deeply embedded in the physical
of early pervasive services trying to exploit the possibili- space, should effectively deal with spatial concepts and
ties opened by these new scenarios: GPS navigator systems data.
providing real-time traffic information and updating routes Second, and complementary to the above, the display
infrasaccordingly, cooperative smart phones that inform us about tructure and the services within should automatically adapt to
their own modifications and contingencies in an automatic way
without experiencing malfunctionings, and possibly taking
advantage of such modifications. Namely, when new devices
are deployed or when new information is injected, a
spontaneous re-distribution and re-shaping of the overall displayed
information should take place. For instance: the deployment of
a big advertising display in a room may suggest re-directing
there all the ads previously forwarded to the personal displays
of users; the injection of a new information service could
induce aggregating it with the existing ones to provide a
more complete yet uniform service. In terms of a general
requirement for decentralized and dynamic scenarios:</p>
    </sec>
    <sec id="sec-2">
      <title>Adaptivity — Pervasive services and infrastructures</title>
      <p>should inherently exhibit properties of autonomous
adaptation and management, to survive contingencies without
human intervention and at limited costs.</p>
      <p>
        Third, the display infrastructure should enable users – other
than display owners – to upload information and services to
enrich the offer or adapt it to their own needs. For instance,
users may continuously upload personal content (e.g., pictures
and annotations related to the local environment) from their
own devices to the infrastructure, both for better
visualization and for increasing the overall local information offer.
Similarly, a group of friends can exploit a public display
to upload software letting it host a shared real-time map to
visualize what’s happening around (which would also require
opportunistic access to the existing environmental sensors and
to any available user-provided sensors, to make the map alive
and rich in real-time information). In general, one should
enable users to act as “prosumers” – i.e., as both consumers
and producers – of devices, data, and services. Not only
this will make environments meet the specific needs of any
specific user (and capture the long tail of the market), but
will also induce a process of value co-creation increasing
the overall intrinsic value of the system and of its services
[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. If the mentioned real-time map accesses some sensors in
unconventional ways to better detect situations around, this
adds value both to such sensors and to all existing and future
services requiring situation recognition. In terms of a general
requirement:
      </p>
      <p>Prosumption and Diversity — The infrastructure should
tolerate open models of service production and usage
without limiting the number and classes of services
provided, and rather taking advantage of the injection of
new services by exploiting them to improve and integrate
existing services whenever possible, and add further value
to them.</p>
      <p>Finally, beside short-term adaptation, in the longer-term
any pervasive infrastructure will experience dramatic changes
related to the technology being adopted, as well as in the
kinds of services being deployed and in their patterns of usage.
For instance, a display infrastructure will somewhen integrate
more sophisticated sensing means than we have today and
will possibly integrate enriched actuators via which to attract
user attention and interact with them. This can be the case
of personal projection systems to make any physical object
become a display, or of eyeglass displays for immersive
perception and action. While this can open up the way for brand
new classes and generation of services to be conceived and
deployed, it also requires that such evolution can be gradually
accommodated without harming the existing infrastructure and
services. As a general requirement:</p>
      <p>Eternity — The infrastructure should tolerate long-term
evolutions of structure, components, and usage patterns,
to accommodate the changing needs of users and
technological evolution without forcing significant and
expensive re-engineering efforts to incorporate innovations and
changes.</p>
    </sec>
    <sec id="sec-3">
      <title>III. FROM SERVICE-ORIENTED ARCHITECTURES TO</title>
      <p>
        NATURE-INSPIRED PERVASIVE SERVICE ECOSYSTEMS
Could the above requirements be met by architecting
pervasive service environments around standard service-oriented
architectures (SOA) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]? Yes, to some extents, but the final
result would be such a scramble of SOA to rather suggest
re-thinking from scratch the architecture and its founding
principles.
      </p>
      <sec id="sec-3-1">
        <title>A. Centralized SOA Solution</title>
        <p>In general, SOA consider the inter-related activities of
service components to be managed by various infrastructural
(middleware) services such as: discovery services to help
components get to know each other; context services to help
components situate their activities; orchestration services to
coordinate interactions according to specific application logics;
and shared dataspace services to support data-mediated
interactions. To architect a pervasive display environment in such
terms (Figure 1-up), one has to set up up a middleware server
in which to host all the necessary infrastructural services to
support the various components of the scenario, i.e., displays,
information and advertising services, user-provided services,
sensing devices and personal devices.</p>
        <p>Such components access the discovery service to get aware
of each other. However, in dynamic scenarios (users and
devices coming and going), components are forced to
continuously access (or being notified by) the discovery service
to preserve up-to-date information—a computational and
communication wasting activity. Also, since discovery and
interactions among components have to rely on spatial information
(i.e., a display is interested only in the users and sensors in its
proximity), this requires either sophisticated context-services
to extract the necessary spatial information about components,
or to embed spatial descriptions for each component into its
discovery entry, again inducing frequent and costly updates to
keep up with mobility.</p>
        <p>
          To adapt to situations and contingencies, components should
be able to recognize relevant changes in their current
environment and plan corrective actions in response to them, which
again require notable communication and computational costs
for all the components involved. Alternatively, or
complementary, one could think at embedding adaptation logics into some
specific server inside the middleware (e.g., in the form of
autonomic control managers [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]). However, such logics would
have to be very complex and heavyweight to ensure capability
of adapting to any foreseeable situation, and especially hard
for long-term adaptivity.
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>B. Decentralized SOA Solution</title>
        <p>To reduce the identified complexities and costs and better
match the characteristics of the scenario, one could think at a
more distributed solution, with a variety of middleware servers
deployed in the infrastructure to serve, on a strictly local basis,
only a limited portion of the overall infrastructure. For instance
(Figure 1-bottom), one could install one middleware server for
each of the available public displays. It will manage the local
display and all local service components, thus simplifying
local discovery and naturally enforcing spatial interactions.
Adaptation to situations is made easier, thanks to the
possibility of recognizing in a more confined way (and at reduced
costs) local contingencies and events, and of acting locally
upon them.</p>
        <p>With the adoption of a distributed solution enforcing
locality, the distinction between the logics and duties of the
different infrastructural services fades: discovering local services
and devices implies discovering something about the local
context; the dynamics of the local scenarios, as reflecting in the
local discovery tables, makes it possible to have components
indirectly influence each other (being their actions possibly
dependent of such tables), as in a sort of shared dataspace
model. This also induces specific orchestration patterns for
components, based on the local logics upon which the
middleware relies to distribute information and events among
components and to put components in touch with each other.</p>
        <p>A problem of this distributed architecture is to require
solutions both to tune it to the spatial characteristics of the
scenario and to adaptively handle contingencies. The logics of
allocation of middleware servers (i.e., one server per display)
derives naturally only in a static scenario, but the arrival and
dismissing of displays requires the middleware servers to react
by re-shaping the spatial regions and the service components
of pertinence of each of them, also correspondingly notifying
components. To tackle this problem, the actual distribution
of middleware servers should become transparent to service
components—they should not worry about where servers are,
but will simply act in their local space confident that there
are servers to access. Moreover, the network of servers should
be able to spontaneously re-organize its shape in autonomy,
without directly affecting service components but simply
adaptively inducing in them a re-organization of their interaction
patterns.</p>
      </sec>
      <sec id="sec-3-3">
        <title>C. Nature-inspired Ecosystems</title>
        <p>Pushed towards a very dense and mobile network of nodes
and pervasive devices, the architecture will end up being
perceivable as a dense distributed environment above which
a very dynamic set of spatially-situated components discover,
interact, and orchestrate with each other. This is done in
terms of a much simplified logics, embedded into the unique
infrastructural service, subsuming the roles of discovery,
context, dataspace, and orchestration services, and taking the
form of a limited set of local rules embedded in the spatial
substrate itself. That is, we would end up with something that
notably resembles the architecture of natural ecosystems: a
set of spatially situated entities interacting according to
welldefined set of natural laws enforced by the spatial environment
in which they situate, and adaptively self-organizing their
interaction dynamics according to its the shape and structure.</p>
        <p>
          Going further than architectural similarity, the natural
metaphor can be adopted as the ground upon which to rely to
inherently accommodate the requirements of pervasive service
scenarios. Situatedness and spatiality are there by construction.
Adaptivity can be achieved because of the basic rules of the
game: the dynamics of the ecosystem, as determined by the
enactment of laws and by the shape of the environment, can
spontaneously induce forms of adaptive self-organization
beside the characteristics of the individual components.
Accommodating new and diverse component species, even towards a
long-term evolution, is obtained by making components part
to the game in respect of its rules, and by letting the ecosystem
dynamics evolve and re-shape in response to the appearance
of such new species. This way, we can take advantage of
the new interactional possibility of such new services and
of the additional value they bring in, without requiring the
Fig. 2. A Conceptual Architecture for Pervasive Service Ecosystems
individual components or the infrastructure itself (i.e., its laws
and structure) to be re-engineered [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ].
        </p>
        <p>
          Indeed, nature-inspired solutions have already been
extensively exploited in distributed computing [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] for the
implementation of specific adaptive algorithmic solutions or of specific
adaptive services. Also, many initiatives – like those named
upon digital/business service ecosystems [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] – recognize that
the complexity of modern service systems is comparable to
that of natural ones and requires innovative solutions also to
effectively support diversity and value co-creation. Yet, the
idea that natural metaphors can become the foundation on
which to fully re-think the architecture of service systems is
far from being metabolized.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>IV. A REFERENCE CONCEPTUAL ARCHITECTURE The above discussion leads to the identification of a reference conceptual architecture for nature-inspired pervasive service ecosystems (see Figure 2).</title>
      <p>The lowest level is the concrete physical and digital ground
on which the ecosystem will be deployed, i.e., a dense
infrastructure (ideally a continuum) of networked computing devices
and information sources. At the top level, prosumers access the
open service framework for using/consuming data or services,
as well as for producing and deploying in the framework
new services and new data components or for making new
devices available. In our case study, they include the users
passing by, the display owners, and the advertising companies
interested in buying commercial slots. At both levels openness
and its dynamics arise: new devices can join/leave the system
at any time, and new users can interact with the framework
and can deploy new services and data items on it. In our case
study, we consider integration at any time of new displays and
new sensors, and the presence of a continuous flow of new
visualization services (e.g. commercial advertisers) and users,
possibly having their own devices integrated in the overall
infrastructure.</p>
      <p>In between these two levels, lay the abstract computational
components of the pervasive ecosystem architecture.
Species — This level includes a variety of components,
belonging to different “species” yet modeled and
computationally rendered in a uniform way, representing
the individuals populating the ecosystem: physical and
virtual devices of the pervasive infrastructure, digital and
network resources of any kind, persistent and temporary
knowledge/data, contextual information, software service
components, or personal user agents. In our case study,
we will have different software species to represent
displays and their displaying service, the various kinds
of sensors distributed around the environment and the
data they express, software agents to act on behalf of
users, display owners, and advertisers. In general terms,
an ecosystem is expected to be populated with a set
of individuals physically deployed in the environment,
situated in some portion of the ecosystem space, and
dynamically joining/leaving it.</p>
      <p>Space — This level provides and gives shape to the
spatial fabric supporting individuals, their spatial activities
and interactions, as well as their life-cycle. Given the
spatial nature of pervasive services (as it is the case of
information and advertising services in our case study),
this level situates individuals in a specific portion of the
space, so that their activities and interactions are directly
dependent on their positions and on the shape of the
surrounding space.</p>
      <p>Practically, the spatial structure of the ecosystem will be
reified by some minimal middleware substrate, deployed
on top of the physical deployment context, supporting the
execution and life cycle of individuals and their spatial
interactions. From the viewpoint of such individuals, the
middleware will have to provide them (via some API)
with the possibility of advertising themselves, accessing
information about their local spatial context (there
included the other individuals around), and detecting local
events. From the viewpoint of the underlying
infrastructure, the middleware should provide for transparently
absorbing dynamic changes and the arrival/dismissing of
the supporting devices, without affecting the perception
of the spatial environment by individuals.</p>
      <p>
        Technologically, this can be realized by a network of
active data-oriented and event-oriented localized services
(e.g., tuple spaces [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]), spread on the nodes of the
pervasive substrate, and accessible on a location-dependent
basis by individuals and devices. Indeed, recent proposals
in the area of tuple-based coordination services for
pervasive and mobile devices, such as TOTA [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] or LIME
[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], can effectively candidate as the basic engine for
reifying the space level, provided they are extended to
automatically re-shape the spatial domain of competence
of each node in response to contingencies (e.g., along the
lines promoted in P2P computing by content-addressable
networks [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). In the case study, for instance, one could
think at assigning one tuple space for each display, and
have the various displays dynamically self-configure their
spatial domain of competence accordingly to
geographical and “line of sight” factors.
      </p>
      <p>Eco-Laws — The way in which individuals (whether
services components, devices, or generic resources) live
and interact is determined by the set of fundamental
“ecolaws” regulating the ecosystem model. Enactment of
ecolaws on individuals will typically affect and be affected
by the local space around and by the other individuals
around. In our case study, eco-laws might provide at
automatically and dynamically determining to display a
specific information on a screen as a sort of automatic
reaction to specific environmental conditions, or at having
two displays spontaneously aggregate and synchronize
with each other in showing specific advertisements.
Although the set of eco-laws is expected to be always
the same for a specific implementation, they will
possibly have different effects on different species.
Accordingly, their enactment may require the presence of some
meaningful description (within the uniform modeling of
individuals) of the information/service/structure/goals of
each species and of their current context and state. These
descriptions, together with proper “matching” criteria,
define how the eco-laws apply to specific species in
specific conditions of the space. We emphasize that, in the
proposed architecture, the concept of “semantic
description” of traditional SOA to facilitate discovery turns into
a concept of “alive semantic description” (dynamically
changing as the context and state of components change),
to properly rule the dynamic enactment of eco-laws.
Practically, to be able to code eco-laws and enact them,
the middleware substrate should proactively mediate
inter-component interactions, and act as an active space
in which to store their continuously updating semantic
descriptions, so as to adaptively support the matching
process triggering eco-laws in dependence of the current
conditions of the overall ecosystem. Technologically,
since most tuple-based middleware systems are currently
enriched with the capability of reacting to events and of
configuring the matching process, they could well act as
the interaction media in which to embed and enact
ecolaws.</p>
      <p>The proposed architecture represents a radically new
perspective on modeling service systems and their infrastructures.
The typically heavyweight and multifaceted layers of SOA
are subsumed by an unlayered universe of components, all of
which underlying the same model, living and interacting in the
same spatial substrate, and obeying the same eco-laws—being
the latter the only concept hardwired into the system.</p>
      <p>This rethinking is very important to ensure adaptivity,
diversity, and long-term evolution: no component, service or
device is there to stay, everything can change and evolve,
self-adapting over space and time, without undermining the
overall structure and assumptions of the ecosystem. That is,
by conceiving the middleware in terms of a simple spatial
substrate in charge of enforcing only basic interaction rules,
we have moved away from the infrastructure itself the need
of adapting, and fully translated this as a property of the
application level and of its dynamics.</p>
      <p>The dynamics of the ecosystem will be determined by
individuals acting based on their own goals/attitudes, yet being
subject to the eco-laws for their interactions with others.
Typical patterns that can be driven by such laws may include
forms of adaptive self-organization (e.g., spontaneous service
aggregation or service orchestration, where the eco-laws plays
an active role in facilitating individuals to spontaneously
interact and orchestrate with each other, also in dependence
of current conditions), adaptive evolution (changing conditions
reflect in changes in the way individuals in a locality are
affected by the eco-laws) and of decentralized control (to affect
the ecosystem behavior by injecting new components in it).</p>
    </sec>
    <sec id="sec-5">
      <title>V. METAPHORS</title>
      <p>
        Beside the above architectural guidelines, what actual shape
can species, space, and eco-laws take in an actual
implementation? Identifying and validating specific solutions in this
direction will be a key challenge of pervasive computing in
the next years. Yet, we argue that whatever solution will most
likely get inspiration from one of the key natural metaphors
already explored in the literature, or possibly extract specific
desirable aspects from many of them towards a new
synthesis. Key metaphors include physical [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], chemical [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]
and biological ones [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], along with metaphors focussing on
higher-level social models (e.g., trophic networks [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ])—the
key difference between them being in the way the species, the
space, and the eco-laws are modeled and implemented (see
Figure 3).
      </p>
      <p>All the metaphors, by adhering to the proposed
architecture, are by construction spatially situated, adaptive by
selforganization, and open to host diverse and evolving species.
However, when it comes to modeling and implementing,
different metaphors may tolerate with variable efficiency and
complexity the enforcement of adaptive self-organization
patterns and the support of diversity and evolution. In addition,
since the service ecosystem is here to ultimately serve us,
it is necessary to analyze how and to which extent the
metaphors facilitate exerting forms of decentralized control
over the ecosystem behavior, in order to direct its
selforganizing activities and behavior and not to lose control
over it. Ideally, a metaphor should be able to support these
features while limiting the number and complexity of
ecolaws, the complexity of individuals and their environment,
while keeping the infrastructure lightweight and the overall
execution efficient.</p>
      <sec id="sec-5-1">
        <title>A. Physical metaphors</title>
        <p>
          These consider species as sort of computational particles,
living in a world of other particles and virtual computational
force fields, the latter acting as the basic interaction means.
Activities of particles (to be practically modeled and
implemented as reactive agents) are driven by laws that determine
how particles spread fields, how fields propagate and reshape
upon changing conditions, and how they influence particles
(those whose semantic description “matches” some criterion).
Particles change their status based on the perceived fields,
and move or exchange data by navigating them (i.e., particles
spread sort of data particles to be routed according to the shape
of fields). The world in which such particles live and fields
spread and diffuse can be either a simple (euclidean) metric
world mapped in the physical space, or a virtual/social space
mapped on the technological network. From the infrastructural
viewpoint, a network of local tuple spaces will have to
proactively support the storing of local field values, the propagation
and continuous update of fields across the network, and the
notifications about these changes to individuals. For instance,
the TOTA middleware [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] can be adopted for the
implementation and management of physically-inspired distributed field
data structures.
        </p>
        <p>In the case study, we can imagine display services as masses
emitting gravitational-like fields (in the form of broadcast
events or spanning trees over the network). Such fields have
different “flavors” (i.e., different semantic descriptions,
reflecting the characteristics of users around and the environment
conditions) and an intensity proportional to either their
dimension or the available display slots. Information and advertiser
agents can behave as masses attracted by fields with specific
flavor, eventually getting in touch with suitable displays for
their information and ads. Upon changing conditions, the
structure and flavors of diffused fields will change, providing
for dynamically re-assigning information and ads to different
displays.</p>
        <p>
          Physical metaphors have been extensively studied for their
spatial self-organization features, and for their effectiveness
in facilitating the achievement of coherent behaviors even
in large scale systems—for load balancing, data distribution,
clustering, aggregation, and differentiation of behaviors. The
conceptual tools available for controlling the spatial behavior
and the dynamics of such systems are well-developed, most
of them related to acting on how fields propagate and
dynamically change—by which it is actually possible to exert
control over the overall system behavior. On the other hand,
such metaphors hardly tolerate high diversity and evolution.
In fact, to support very diverse species and behaviors (at a
time and over time), eco-laws must become complex enough
to tolerate a wide range of different fields and propagation
rules, with an increase in the complexity of the model and
in burden on the infrastructure [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], that has to proactively
support the propagation and continuous update of many field
structures.
        </p>
      </sec>
      <sec id="sec-5-2">
        <title>B. Chemical metaphors</title>
        <p>
          These consider species as sorts of computational
atoms/molecules (again modeled and implemented as
reactive agents), enriched with semantic descriptions acting
as the computational counterpart of the bonding properties
of physical atoms/molecules (yet made dynamic to reflect
the current state and context of individuals). Accordingly,
the laws that drive the overall ecosystem behavior resemble
chemical reactions, that dictate how chemical bonding
between components take place (relying on some forms of
pattern matching between semantic descriptions), and lead
to aggregated, composite, and new components, and also to
growth/decay of species. The world where individuals live
is typically formed by a set of spatially confining localities,
intended as the “solutions” in which chemical interactions
occur and across which chemicals can eventually diffuse.
The declarative tuple space model of TuCSoN coordination
infrastructure can support an effective implementation for
chemically-inspired interactions [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ].
        </p>
        <p>In the case study, we can think of display services, of
information services (concerning ads and news), as well as of
user and environmental data as molecules. Displays represent
different localities (i.e., tuple spaces) in which components
react. Chemical rules dictate that when the preferences of
a user entering the locality of a display match an
information/advertisement service, then a new composite component
is created which is in charge of actually displaying that service
in that display. Concurrently, in each locality, catalytic
components can be in charge of re-enforcing the concentration of
specific information or of specific information/advertisements,
reflecting the current situation of users. Also, localities can be
open to enforce chemical bonds across displays, so that
highactivity of advertisement reactions on a display can eventually
propagate to neighbors.</p>
        <p>
          Chemical metaphors can effectively lead to self-organizing
structures like local composite services and local aggregates.
As in real chemistry, chemical computational metaphors can
accommodate an incredible amount of different components
and composites with a single set of basic laws. In practice,
this means that it can tolerate an increasingly diverse and
evolving set of semantic descriptions for components without
affecting basic eco-laws and without increasing the burden to
the infrastructure. As far as control is concerned, one can think
at using sort of catalyst or reagent components to engineer
and control (in a fully decentralized way) the dynamics and
the behavior of the ecosystem. A limitation of the chemical
approach is that it typically relies on activities taking place
within a locality or at least across neighboring ones via local
diffusion [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ], making it hard to naturally and easily enforce
distributed self-organized behaviors, like creating a complex
and distributed aggregation of components.
        </p>
      </sec>
      <sec id="sec-5-3">
        <title>C. Biological metaphors</title>
        <p>These focus on biological systems at the scale of individual
organisms, or of colonies of organisms like ants. The species
are therefore either simple cells or animals acting on the basis
of simple goals like finding food and reproducing (to be
modeled and implemented in terms of simple goal-oriented agents).
As in physical systems, interactions take place by means of
signals of various flavors (i.e., chemical pheromones) spread
by individuals in the environment, and slowly diffusing and
evaporating. The spatial environment is again a computational
landscape either mapped on the network topology or on the
physical space. Unlike physical systems, individuals here are
not necessarily passively subject to the sensed pheromones, but
they can react to them depending on their current “mood” (e.g.,
their state towards the achievement of a goal). Consequently,
eco-laws are only aimed at determining how such pheromones,
depending on their specific flavors, should propagate and
diffuse in the environment. From the implementation viewpoint,
any infrastructure that can support physical metaphors can also
be adapted to support biological metaphors, by turning fields
into persistent and slowly diffusing/evaporating data structures.</p>
        <p>In the case study, users will be represented by simple
agents roaming around and spreading chemical signals with a
flavor reflecting their personal interests. Displays can locally
perceive such pheromones, and react by emitting some
different pheromones to express the availability of commercials
and information. Advertising and information agents, by their
side, sense the concentration of such pheromones and are
attracted towards the displays where the concentration of users
with specific interests is maximized. Displays, advertising and
information agents by their side, and depending on what they
have displayed so far, can also emit additional flavors of
pheromones, to store memory of past events. The persistence
of pheromones can also be exploited by additional components
that, by moving from display to display, create pheromones
trails as a basis for more global strategies—like identifying
routing paths that advertiser agents use to globally find the
best displays to exploit.</p>
        <p>
          Biological metaphors appear very flexible in efficiently
enabling the spatial formation of both localized and distributed
activity patterns, and have a variety of applications [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. The
problems of accommodating diversity and evolution that affect
physical metaphors are here notably smoothed. In fact, an
increase in the variety of pheromone flavors (to support
diversity and evolution) can be handled with less overhead
by the infrastructure, since pheromones (unlike fields) rely
on local diffusion and slow evaporation dynamics. On the
negative side, since the mechanisms of morphogenesis and
self-organization in actual biological systems are not fully
understood yet, it can be consequently hard to understand how
to enforce control in their computational counterparts too.
        </p>
      </sec>
      <sec id="sec-5-4">
        <title>D. Social metaphors</title>
        <p>
          These focus on biological systems at the level of animal
species and of their interactions [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]. Individuals are sorts
of goal-oriented animals (i.e., agents) belonging to a specific
species, that are in search of “food” resources to survive and
prosper, and that can represent in their turn food to others
(both aspects reflecting in some proper semantic descriptions).
Pure data items and resources can be abstracted as sorts of
passive life-forms (i.e., vegetables). The eco-laws determine
how the resulting “web of food” should be realized, namely,
how animals search food, eat, and possibly produce and
reproduce, thus influencing and ruling the overall dynamics
of the ecosystem and the interaction among individuals of
different species. Similarly to chemical systems, the shape
of the world is typically organized around a set of localities,
i.e., ecological niches, yet enabling interactions and diffusion
of species across niches. From the implementation viewpoint,
reactive tuple space models [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] can be effectively adopted
towards the realization of a supporting infrastructure, where
the possibility for the tuple space to enforce control over all
interactions can be used as a mean to rule the food-web-based
eco-laws.
        </p>
        <p>In the case study, and assuming that each display is
associated to an ecological niche, we can imagine users as species
of herbivor agents roaming from niche to niche, possibly to
eat those vegetable-like individuals representing information.
Advertisers can be sorts of carnivors (i.e., eating other active
life-forms) in need to find proper users to survive (users with
matching interests). For both cases, the primary effect of an
eating action is the feeding of displays with information or
commercials to show. A possible secondary effect of eating
is the reproduction and diffusion in the environment of the
best-fit species, e.g., of most successful commercials. Those
species that do not succeed in eating at a niche can either
die or move to other niches to find food. Concurrently with
the activities of the above species, background agents acting
as sorts of bacteria can digest the activity logs at the various
niches to enforce specific forms of distributed control over
the whole system (e.g., by affecting the way information is
propagated across niches).</p>
        <p>Social metaphors, such as the one here described but without
forgetting the large body of work in the area of social
multi-agent systems, appear suitable for local forms of
selforganization like chemical metaphors—think at self-organized
equilibria of web food patterns in ecological niches. Unlike
chemical metaphors, and more similarly to biological one,
social metaphors can be effectively exploited also to enforce
distributed forms of self-organization, by exploiting the
capability of individuals of moving around (e.g., to find food
and/or reproduce). In addition, social metaphors are suitable
for tolerating diversity and evolution at no additional burden
for the infrastructure—think at how biodiversity has increased
over the course of evolution without requiring any change
to the underlying infrastructure (i.e., the earth). However,
understanding how to control the behavior and dynamics of
social computational ecosystems can be as difficult as it is in
real social systems.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>VI. CONCLUSIONS</title>
      <p>Nature-inspired models and architectures appear very
promising for re-thinking the foundation of modern and
emerging pervasive service systems. Yet, the general lesson
that we can extract from our analysis is that:</p>
      <p>None of the natural metaphors being proposed so far is
suited, as is, to act as a way to fully realize the eternally
adaptive service ecosystem vision.</p>
      <p>Thus, along the lines of the proposed reference
architecture and being guided by it, some new synthesis should be
identified to incorporate the key features of the existing
metaphors into a unifying general-purpose one.</p>
      <p>
        In addition to the key problem of identifying suitable
metaphors, the widespread deployment of nature-inspired
pervasive service ecosystems requires methodologies and tools
for their engineering, proper security mechanisms and policies,
and means to integrate the approach with the legacy of current
SOA systems. Lastly, the road towards pervasive service
ecosystems will have to ground on the emerging science of
service systems [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], and will possibly be able to contribute to
it.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A. T.</given-names>
            <surname>Campbell</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. B.</given-names>
            <surname>Eisenman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. D.</given-names>
            <surname>Lane</surname>
          </string-name>
          , E. Miluzzo,
          <string-name>
            <given-names>R. A.</given-names>
            <surname>Peterson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Lu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Zheng</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Musolesi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Fodor</surname>
          </string-name>
          , and G.-S. Ahn, “
          <article-title>The rise of people-centric sensing</article-title>
          ,
          <source>” IEEE Internet Computing</source>
          , vol.
          <volume>12</volume>
          , no.
          <issue>4</issue>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>B.</given-names>
            <surname>Coleman</surname>
          </string-name>
          , “
          <article-title>Using sensor inputs to affect virtual and real environments,” IEEE Pervasive Computing</article-title>
          , vol.
          <volume>8</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>16</fpage>
          -
          <lpage>23</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J. C.</given-names>
            <surname>Spohrer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. P.</given-names>
            <surname>Maglio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. H.</given-names>
            <surname>Bailey</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Gruhl</surname>
          </string-name>
          , “
          <article-title>Steps toward a science of service systems</article-title>
          ,” IEEE Computer, vol.
          <volume>40</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>71</fpage>
          -
          <lpage>77</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferscha</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Vogl</surname>
          </string-name>
          , “
          <article-title>Wearable displays - for everyone!” IEEE Pervasive Computing</article-title>
          , vol.
          <volume>9</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>7</fpage>
          -
          <lpage>10</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>S. L.</given-names>
            <surname>Vargo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. P.</given-names>
            <surname>Maglio</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Akaka</surname>
          </string-name>
          , “
          <article-title>On value and value cocreation: a service systems and service logic perspective</article-title>
          ,
          <source>” European Management Journal</source>
          , vol.
          <volume>26</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>145</fpage>
          -
          <lpage>152</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M. N.</given-names>
            <surname>Huhns</surname>
          </string-name>
          and
          <string-name>
            <given-names>M. P.</given-names>
            <surname>Singh</surname>
          </string-name>
          , “
          <article-title>Service-oriented computing: Key concepts and principles</article-title>
          ,
          <source>” IEEE Internet Computing</source>
          , vol.
          <volume>9</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>75</fpage>
          -
          <lpage>81</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>J. O.</given-names>
            <surname>Kephart</surname>
          </string-name>
          and
          <string-name>
            <given-names>D. M.</given-names>
            <surname>Chess</surname>
          </string-name>
          , “
          <article-title>The vision of autonomic computing</article-title>
          ,
          <source>” IEEE Computer</source>
          , vol.
          <volume>36</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>41</fpage>
          -
          <lpage>50</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Jazayeri</surname>
          </string-name>
          , “Species evolve, individuals age,
          <source>” in 8th IEEE International Workshop on Principles of Software Evolution</source>
          , Washington, DC,
          <year>2005</year>
          , pp.
          <fpage>3</fpage>
          -
          <lpage>12</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>O.</given-names>
            <surname>Babaoglu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Canright</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Deutsch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. A. D.</given-names>
            <surname>Caro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ducatelle</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. M.</given-names>
            <surname>Gambardella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Ganguly</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Jelasity</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Montemanni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Montresor</surname>
          </string-name>
          , and T. Urnes, “
          <article-title>Design patterns from biology for distributed computing</article-title>
          ,
          <source>” ACM Trans. Auton. Adapt. Syst.</source>
          , vol.
          <volume>1</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>26</fpage>
          -
          <lpage>66</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Ulieru</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Grobbelaar</surname>
          </string-name>
          , “
          <article-title>Engineering industrial ecosystems in a networked world</article-title>
          ,
          <source>” in 5th IEEE International Conference on Industrial Informatics</source>
          . IEEE Press,
          <year>June 2007</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>7</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M.</given-names>
            <surname>Mamei</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Zambonelli</surname>
          </string-name>
          , “
          <article-title>Programming pervasive and mobile computing applications: the tota approach</article-title>
          ,
          <source>” ACM Trans. Software Engineering and Methodology</source>
          , vol.
          <volume>18</volume>
          , no.
          <issue>4</issue>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A. L.</given-names>
            <surname>Murphy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. P.</given-names>
            <surname>Picco</surname>
          </string-name>
          , and G.-C. Roman, “
          <article-title>Lime: A coordination model and middleware supporting mobility of hosts and agents</article-title>
          ,
          <source>” ACM Trans. on Software Engineering and Methodology</source>
          , vol.
          <volume>15</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>279</fpage>
          -
          <lpage>328</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>S.</given-names>
            <surname>Androutsellis-Theotokis</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Spinellis</surname>
          </string-name>
          , “
          <article-title>A survey of peer-to-peer content distribution technologies</article-title>
          .
          <source>” ACM Computing Surveys</source>
          , vol.
          <volume>36</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>335</fpage>
          -
          <lpage>371</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M.</given-names>
            <surname>Viroli</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Casadei</surname>
          </string-name>
          , “
          <article-title>Biochemical tuple spaces for self-organizing coordination,” in Coordination Languages and Models, ser</article-title>
          .
          <source>LNCS</source>
          , vol.
          <volume>5521</volume>
          . Springer-Verlag,
          <year>June 2009</year>
          , pp.
          <fpage>143</fpage>
          -
          <lpage>162</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>G.</given-names>
            <surname>Agha</surname>
          </string-name>
          , “Computing in pervasive cyberspace,
          <source>” Commun. ACM</source>
          , vol.
          <volume>51</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>68</fpage>
          -
          <lpage>70</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>