Upload
juergen-sienel
View
212
Download
0
Embed Size (px)
Citation preview
◆ OPUCE: A Telco-Driven Service Mash-UpApproachJürgen Sienel, Alberto León Martín, Carlos Baladrón Zorita,Laurent-Walter Goix, Álvaro Martínez Reol, and Belén Carro Martínez
Telecom operators are facing major business challenges as Internetplayers are becoming an increasing threat in both new and traditionalcommunications markets. Technologies like Web 2.0, Session InitiationProtocol (SIP), and peer-to-peer (P2P) allow for easy integration ofcommunication features in social networking applications. IP MultimediaSubsystem (IMS) is a proposed solution from the telecommunicationsindustry, but its architecture is complex and costly and still doesn’t offer theInternet world the flexibility that end users expect. The Sixth FrameworkProgramme (FP6) of the Information Society Technologies (IST) IntegratedProject (IP) Open Platform for User-centric service Creation and Execution(OPUCE) addresses these challenges from a technical and business perspective.In this paper, we describe the OPUCE service execution architecture, which isdesigned to allow interoperation of telco and information technology (IT)applications in a seamless event-driven manner, and the service creationworkbench that enables end users to build their own personalized servicemash-ups and share them with the community. © 2009 Alcatel-Lucent.
For instance, Voice over Internet Protocol (VoIP) tech-
nology seems to be a promising and cheap alterna-
tive to traditional voice services.
Hence, operators have been pushed to explore
new opportunities such as content provisioning, to
expand their offers in order to sell value-added ser-
vices that would lead to higher profit margins [8].
However, while telcos have been making huge net-
work investments and migrations for years, new IT
competitors can offer similar services in the near
future, more closely integrated with the plethora of
information services available on the Web.
IntroductionThe current landscape for traditional services in
the telecommunications market is not very pleasant
for operators. The perceived value of pure transport of
voice and data has been decreasing continuously, to
the point where it is now almost considered to be a
commodity. Additionally, a new wave of threatening
competitors are ready to enter the communications
market with breakthrough technologies and services:
information technology (IT) companies have realized
that they can provide similar communication services
at lower costs over the Internet, offering even more
functionalities than their established telco counterparts.
Bell Labs Technical Journal 14(1), 203–218 (2009) © 2009 Alcatel-Lucent. Published by Wiley Periodicals, Inc.Published online in Wiley InterScience (www.interscience.wiley.com). • DOI: 10.1002/bltj.20363
204 Bell Labs Technical Journal DOI: 10.1002/bltj
Telcos have some advantages over their IT coun-
terparts: extensive knowledge of the customer base
and established communication infrastructures that
can easily serve hundreds of million of users. However,
the prospect of identifying one specific service that
converts those advantages into global business suc-
cess is indeed more difficult than expected. Telcos can-
not afford to wait until a “killer application” (a service
that, on its own, generates enough revenue to sus-
tain a market and justify technology investments)
appears. The concept of a killer application attractive
to all has become obsolete, as thousands of new ser-
vice ideas—each with its own niche market—emerges
from the Internet each year.
Telcos are searching for another way to harness
the infrastructures and the information they own, in
order to gain an edge in the market for next-generation
communication services by offering attractive products.
One possible answer is found by addressing the “long
tail” [2]: it is more attractive to offer thousands of ser-
vices where each user finds the precise service he or she
needs than to offer a few services for a huge number of
people. But how will telcos succeed in the great effort
required to analyze customer preferences, and to
design and deploy each specific service?
Paradoxically, an answer can be found by looking
at the model that the Internet has followed during
the last few years in order to be able to offer content
and services for everyone: Web 2.0. In this symmetri-
cal paradigm, the Web is no longer a distributed infor-
mation storage vehicle through which Webmasters
push content towards users, but instead, a dynamic
environment where users are now content creators
and consumers at the same time. Users publish and
share their own content and organize themselves in
communities, thus providing everyone with the exact
information he or she is looking for. It is the key fac-
tor behind the success of sites such as YouTube* or
Wikipedia. Web 2.0 has so deeply impacted society in
general and the IT community in particular that the
“Person of the Year” named by Time magazine for
2006 was actually “You” [11]. The magazine had a
mirrored cover page to underscore the fact that the
user has become the “center” of the Web, providing
and consuming content at the same time, and thus
acting as a “prosumer.”
Panel 1. Abbreviations, Acronyms, and Terms
API—Application programming interfaceBPEL—Business Process Execution LanguageBT—British TelecomConteXtML—Context Markup LanguageEMMUS—European MultiMedia Usability
ServicesFP6—Sixth Framework ProgrammeIM—Instant messageIMS—IP Multimedia SubsystemIP—Internet ProtocolISO—International Organization for
StandardizationIST—Information Society TechnologiesIT—Information technologyJ2EE—Java 2 Enterprise EditionJAIN—Java API for integrated networksOMA—Open Mobile AllianceOPUCE—Open Platform for User-centric service
Creation and ExecutionP2P—Peer-to-peer
PDA—Personal digital assistantREST—REpresentational State TransferRSS—Really Simple SyndicationSCE—Service creation environmentSEE—Service execution environmentSIP—Session Initiation ProtocolSLA—Service level agreementSLEE—Service logic execution environmentSLM—Service lifecycle managerSME—Small and medium-sized enterpriseSMS—Short message serviceSPICE—Service Platform for Innovative
Communication EnvironmentUGC—User generated contentUGS—User generated servicesUIM—User information managerVoIP—Voice over Internet ProtocolWS—Web servicesXDM—XML Document ManagementXML—Extensible Markup Language
DOI: 10.1002/bltj Bell Labs Technical Journal 205
More recently, Web 2.0 has expanded to enable
end users to generate not only content, but also ser-
vices in the form of mash-ups—small applications cre-
ated by interconnecting smaller Web services with
each other. For example, it is possible to link an online
database with the popular Google* Maps service in
order to show the location of the most popular restau-
rants in a geographic area. Some graphical tools, such
as Microsoft Popfly*, have been launched to support
the creation of these mash-ups. Without requiring
programming skills, they let all end users create the
specific Web mash-up they need.
Open Platform for User-centric service Creation
and Execution (OPUCE), a 9 million euro integrated
project co-funded by the European Commission
under the Sixth Framework Programme (FP6), aims
at porting this user-centric philosophy into the telco
world. It provides the tools necessary to allow every-
one to build his or her own communication services
without having a specific background in computing.
In addition, it relieves telcos from the pressure of find-
ing a “killer application” in next-generation services
and simply allows users to build their own, completely
tailored to their needs.
Following this approach, there is no need to
spend resources in polling and studying end users to
discover the applications they demand, nor in build-
ing those applications. On the other hand, it is essen-
tial to rely upon user-friendly service creation tools,
an infrastructure to automate the service manage-
ment processes, and a safe execution environment
which guarantees data privacy as well as the integrity
of the operator’s network and resources [10, 14].
The OPUCE platform integrates all of the ele-
ments shown in Figure 1:
• Service creation environment (SCE), including Web-
based and mobile graphical service editors which
employ drag-and-drop operations and allow ser-
vices to be created as a composition of basic build-
ing blocks known as base services.
• Service lifecycle manager (SLM) to automate the
deployment and management of services and
resources.
• Service execution environment (SEE) designed to
orchestrate base services safely.
In addition, OPUCE is not restricted to the telco
domain. It has been designed as a union point of the
Web and communication services, a step forward in
the convergence of both worlds that is now being pur-
sued. With OPUCE, traditional information services can
be merged with communication capabilities, resulting
in an integrated and enriched experience for the user.
This is achieved using standard Web services middle-
ware, which permits the interaction of heterogeneous
components from both worlds.
Finally, OPUCE is an open platform. A key factor
in the Web’s success is that it is a completely distributed
and open system, composed of an enormous number
of independent nodes that can interact and offer all
types of services. Since no one controls the whole sys-
tem, the Web is incredibly flexible, constantly adapting
itself to fulfill a wide variety of purposes. OPUCE also
aims at porting this open philosophy to the telco world,
where operators have traditionally been reluctant to
forfeit control of their networks. The secured SEE
allows external providers to offer their services through
the operator’s infrastructure, where they can interact
with other OPUCE base services.
This paper is organized as follows. First, a study of
the current business environment of user-generated
services (UGS) is discussed. Then, we present the
SCE—the set of tools offered by OPUCE that allow
end users to build and personalize their services.
Following that, the two modules that allow the man-
agement and execution of services inside the OPUCE
platform are described—the service lifecycle manager
and the service execution environment. Finally, plat-
form validation results and conclusions are presented.
Business Environment: UGS and Potential NewRoles for Operators
Telecommunication networks and the Internet
have, until recently, existed as two completely sepa-
rate worlds, and so have their business models. While
telco services are provided directly by operators in a
closed environment, sometimes called the “walled gar-
den,” Internet services are traditionally offered by ser-
vice providers in a much more open way, sometimes
supplying third parties with open access to their appli-
cation programming interfaces (APIs). In their will to
206 Bell Labs Technical Journal DOI: 10.1002/bltj
adopt the Internet model, many operators are trying to
replicate the Web 2.0 paradigm in telecommunications,
the so-called Telco 2.0 concept. One of the most rele-
vant experiences in this new field is BT’s 21st Century
initiative [6]. BT has released a series of “open” APIs, so
that third parties can have access to operator services
and provide their own communication services. This
type of initiative is being adopted by companies such
as Orange, Telefonica (Open MovilForum [15]),
Telecom Italia, Deutsche Telekom, and Vodafone.
In this context, the appearance of initiatives mix-
ing telco and Web capabilities was quite predictable,
since both worlds are working toward a more open
and “user-centric” environment. Recently, proposals
have been announced such as Broadsoft’s Xtended,
which aims to add voice capabilities to Web mash-ups,
and Apple’s* iPhone* APIs for mixed services creation
(Web � telco). Ongoing innovative projects funded by
the European Commission, such as OPUCE, which
is the focus of this article, and Service Platform for
Innovative Communication Environment (SPICE)
[17], are also targeting these Web � telco mash-ups.
These initiatives are prompting a migration from
the user-generated content (UGC) era to the user-
generated services era, where end users are not only
content creators but also service creators. This evolu-
tion is highly relevant from the business model per-
spective. In contrast to content, which is generally free,
services usually have an associated cost. Thus, there
are some key issues that should be taken into account:
• Business view. The key question is: Could creation
and consumption of highly personalized and
Service executionenvironment (SEE)
Service creationenvironment (SCE)
Web:
AmazonGoogle† MapsYouTube†
Operator’sinfrastructure:
Call controlSMS sendingLocation
Third partyservice provider
Service lifecyclemanager (SLM)
OPUCE
End user
†Trademarks of Google, Inc.
OPUCE—Open Platform for User-centric service Creation and ExecutionSCE—Service creation environmentSEE—Service execution environmentSLM—Service lifecycle managementSMS—Short message service
Figure 1.OPUCE high-level scheme.
DOI: 10.1002/bltj Bell Labs Technical Journal 207
customized services, even when devoted to a spe-
cific and narrow audience, be relevant from a busi-
ness perspective? This question is answered by the
long tail paradigm proposed by Chris Anderson in
2004 [1], which explains how significant revenues
can be when obtained in a large number of small
amounts. In such an approach, it is crucial to keep
the costs of creating/providing those services to a
minimum. This requires the end users to create
services on their own and requires automation of
the deployment and maintenance for these ser-
vices in the platform.
• User demand. It is necessary to include end users in
the creation process (even integrating them in the
value chain as creators and consumers, i.e., pro-
sumers) in order to synchronize an offer with cus-
tomer demands. The goals are to lower the
barriers to participate in the service developer
community, to identify user needs directly, and
to use crowd intelligence to build solutions.
• Telco and Internet convergence. As previously men-
tioned, a remarkable difference between the two
worlds is the underlying business model approach:
telecom operators usually deal with associated
costs, whereas offering capabilities for free is the
common rule on the Internet. How, then, can
both strategies be combined? Noted industry ana-
lysts such as Forrester [18] suggest that the opera-
tors should “change their mindset” and replicate
the usual Internet model by coming up with alter-
natives (advertising, for instance) to obtain reve-
nues. Chris Anderson has proposed a witty model
called “Free!”[3], which emphasizes the impor-
tance of providing services to end users for free.
The model does not suggest that companies
should forget about making a profit, just that
companies have to get it from other indirect
sources.
These experts propose a series of alternatives that
can be grouped into six categories:
1. “Freemium.” The freemium concept reflects the
duality between basic and premium users. The lat-
ter are those who pay for a more exclusive service
including additional facilities. The same model can
be used when operators offer free basic services
in concert with others offering a certain added
value that makes them unique and for which the
user would agree to pay a fee.
2. Advertising. Benefits are obtained from advertis-
ing. The advertiser pays, not the end user.
3. Cross-subsidies. This is the well-known formula of
getting something for free while paying for
another product or service. This model became
very popular with the mobile telephony boom;
e.g., terminals were offered for free when sign-
ing a service contract with a particular mobile
operator.
4. Labor exchange. In this model, services are offered for
free, but in return the provider obtains some infor-
mation regarding user interests (e.g., a profile).
5. Altruism and zero marginal cost. This refers to the
possibility of offering services free of charge as a
result of pure altruism or just because they have
no real cost to the provider.
6. End user satisfaction. Finally, end user motivation
is a key point to be considered. Why do users
find it interesting to create their own services?
Furthermore, what encourages users to publish
those services so that others can consume them?
On one hand, a key social factor is prestige, which
is quite usual within the peer-to-peer (P2P) and
Web 2.0 worlds. On the other hand, profit can also
be considered, where a part of the benefits gener-
ated are shared with the end user, as would be
done with a legacy telco service provider. This
revenue sharing concept is quite an innovative
idea that is just gaining traction at companies like
Virgin, with its Virgin Mobile Studio V initiative.
Another example is the Apple AppStore, where
fees for downloading applications are directly for-
warded to the application creators, with a 30 per-
cent reduction. A percentage is retained by Apple
for hosting and distribution.
The aforementioned “Freemium” strategy and the
advertising model-as-revenue source are seriously
being considered by telco operators to avoid being
relegated to the role of a simple connectivity provider
(known as a “dumb pipe”). Those models, together
with the possibility of obtaining revenue from hosting
and distribution of services, could be the pillars for a
208 Bell Labs Technical Journal DOI: 10.1002/bltj
new role played by operators. Their implementation is
under consideration for a potential market version of
OPUCE.
Finally, the OPUCE platform is structured in sev-
eral modules that can potentially be exploited as a
whole and/or individually. In this sense, an essential
part could be released under some kind of open
source license in order to involve the developer’s com-
munity. For instance, all the modules related to opera-
tor network resources management and protection
would remain private, while some service editors
could be released as open source.
Giving Control to End UsersWithin the concept of user-centric service creation,
a paradigm shift is occurring, since service creators
are not specialists or professionals. Instead these end
users often have little knowledge or background in
computer technologies. This role change imposes
some constraints upon the service creation environ-
ment. As traditional SCE interfaces are difficult to
handle for average users, the entire creation process
needs to be supported via intuitive graphical wizards
or assistants.
The analysis and definition of a user-centric SCE
require a study that goes beyond functional specifica-
tion, such as the editing metaphors necessary to make
end users feel comfortable with the design process,
security, and limitation concerns. In particular, the
following topics need to be addressed:
• Language. In a global context such as the Internet,
users interact independently of geopolitical barri-
ers. Hence, interfaces for creating, sharing, and
editing another user’s service need to be interna-
tionalized and easily understood in the end user’s
own language.
• User sphere. Reference to personal information at
creation time has to be abstracted to reflect a “me-
centric” concept of “my phone number” or “my
wife’s e-mail.” At execution time, this abstract
representation will be translated into the actual
information of the user invoking the service, who
may be different from the original creator.
• Assistance. Apart from online help to assist the user
in the creation process, editing tools must provide
intelligent features that automatically perform
complicated actions.
• Seamless access. Similarly to service execution, ser-
vice creation by end users needs to be ubiquitous
and adapted to the current user conditions.
• Validation. Services created by end users may
potentially harm the platform, so it is necessary to
introduce validation mechanisms to ensure that
services are safe.
• Extensibility. Users are more motivated to create
services if the set of base services they can com-
pose is large and diverse. Hence, the service crea-
tion process must support the provisioning of new
base services for enriching this set, whether cre-
ated by end users themselves, or commercial third
parties.
User Generated Services: New Roles for End UsersOne of the main aspects of Web 2.0 [16] is that
users are able to add value to the services offered.
Rich Web-based interfaces, communities, and social
networks are just a few examples of how users are
continuously stimulated to remain active. Sharing
services, voting, and social reputation can be effec-
tively applied to evaluate services and/or service crea-
tors and to stimulate users’ creativity.
Following the emerging concept of the prosumer,
two roles are identified for end users interacting with
a UGS platform:
• Service subscriber (consumer). After browsing a ser-
vice catalog or being notified when a new service
of interest has been created, this individual can
subscribe, start using the service, and potentially
personalize it as well.
• Service creator (producer). The service creator uses
the platform to create new services by combin-
ing base services (atomic enablers) and sharing
those composed services with the community.
However, enabling end users to create their own
services using attractive tools is not enough to create
a complete marketplace that stimulates them to join
and engage with the community. Incentives have to
be provided, and the progressive increase in the
number of producers can be envisioned as a step-
wise approach:
DOI: 10.1002/bltj Bell Labs Technical Journal 209
• Personalization. Most users begin to act as con-
sumers of available services and are interested in
using a service “as is” or with only minimal per-
sonalization/configuration.
• Create my own service. At this stage, the user starts
creating simple services that exactly fit his/her
needs for personal and private consumption and
are thus extremely personalized, although not
configurable.
• Share my services. The private consumption of self-
created services, if successful, can increase user
confidence with the system and speed its prolif-
eration across the user’s social sphere. Such usage
ultimately causes the user to share the service
with friends and any other user in the community
who may be interested in using (or personaliz-
ing) it. This transition may be based on some
incentives, either to become known, to pioneer,
or to obtain some tangible reward (i.e., money,
based on revenue sharing models).
Service Editing in OPUCEAccording to project goals, the OPUCE service
creation environment is ultimately addressing a wide
population of users who create new services or per-
sonalize existing ones.
The OPUCE SCE includes a mobile editor and a
Web editor. The Web editor is a Web-based interface
embedded in a community portal. The mobile editor is
a local application on the user’s terminal (e.g., per-
sonal digital assistant [PDA]) with simplified features
and user interface. Both editorial interfaces share the
same philosophy for service creation based on a ser-
vice composition paradigm: the end user will be
assembling base services that will be connected and
configured to define the service flow (as Lego* bricks
create a final construct). This approach is similar to
one employed in current mash-up tools like Yahoo!*
Pipes and offer a palette of building blocks that com-
prise base services, which users drag and drop onto
an editing canvas before linking inputs and outputs
to compose a workflow.
One of the challenges in the editing process
for OPUCE is to define telco services whose intrinsic
characteristics require support for event-based flows.
Events received from the network must be managed
with simple graphical representations through han-
dlers that manage events occurring in the network
and actions to take upon them.
Each base service exposes a set of properties and
actions and fires a set of events, while service com-
position occurs by linking events with actions. For
example, by linking a base service that fires the event
“when-SMS-is-received” to the action “make-video-
call,” one produces a service that automatically initi-
ates a video call whenever an SMS is received.
Properties are used to configure base services and
share information between them.
The output of the Web or mobile editor is a ser-
vice description [5]—an XML document that stores
all of the information required by the platform about
the new service: the graphical layout in the SCE,
semantics, and the service logic. As both editors share
this service description, it is possible to modify a ser-
vice created with one editor by using the other.
Web editor. Figure 2 provides a snapshot of the
OPUCE Web editor highlighting its main sections.
The figure shows a very simple example flow
that helps a user retrieve an important e-mail when
he/she is not at the desk, either by getting notified
via short message service (SMS) or through a voice
call depending on his/her current context. The
semantics of the service are not relevant; however,
the graphical representation of the base services and
their connections inside the composition are
essential for usability purposes. As previously men-
tioned, a proper choice allows the service composi-
tions created to be read with a sentence. Referring to
the earlier example, “When e-mail is received then
get context; when context is found and X then start
call; otherwise send SMS to user,” it is quite evident
how multi-language support greatly improves the
overall solution.
Another point revealed by the example is that
using the proposed notation, the designer does not
need to worry about synchronous or asynchronous
(event-based) interactions: each block can manage
events (internal or external) through specific handlers
that allow the drawing of outgoing arcs.
210 Bell Labs Technical Journal DOI: 10.1002/bltj
Mobile editor. Coupled to the Web editor described,
the mobile editor shown in Figure 3 targets simple
terminals and provides most of the capabilities of the
Web editor. The mobile editor’s main attribute is
“minimal user interface” based on “automation by
default,” which means that by default the user deals
only with higher level aspects of composition, and
editor automation tries to provide the lower-level
aspects without user interaction.
At a high level, the mobile editor manages a list of
base services that the user wants to combine. Depending
on the device capabilities, this list may be a chain of
boxes or a simple text list. In both cases, the list is
navigable to access details of each base service, such as
inputs, outputs, and configuration.
Editor automation tries to fulfill all detailed
aspects of each base service in real time, mainly using
type matching of inputs and outputs, or adding adap-
tation base services when no direct connection is
available. Further configuration and inputs may auto-
matically refer to the user information.
The status of an element connection is graphically
highlighted, so that the user editing the service is aware
of the status of the composition process and has the
potential to control some detailed aspects manually.
The mobile editor has some limitations with
respect to the Web editor, namely, that it does not
allow conditional flows. Hence, a service created in
the Web editor may not always be editable in the
mobile editor.
Enabling Personalized ServicesTelco knowledge of their user base—namely, pro-
file, preferences, or context data such as location or
presence—is a key driver toward the personalization of
services in a highly automated manner, which can
already be supported at the service creation level,
besides its operation at execution time. OPUCE sup-
plies this information through the user information
manager (UIM), a distributed infrastructure that stores
and manages user identity, profile, and context, relying
upon standards such as Open Mobile Alliance* (OMA)
XML Document Management (XDM), Diameter, and
Context Markup Language (ConteXtML) [13]. The
OPUCE portal and client applications allow the editing
and publication of this information to the UIM.
RSS—Really Simple SyndicationSMS—Short message service
Figure 2.A snapshot of the Web editor.
DOI: 10.1002/bltj Bell Labs Technical Journal 211
Leveraging this feature, OPUCE embraces three differ-
ent ways to achieve this personalization:
• Workflow adaptation. The “context” base service
retrieves context information from the UIM [13].
Based on this information, the service creator can
use “if…then” blocks to define separate branches
of the workflow depending on the context of the
end user.
• Context-aware base services. Some base services are
intrinsically designed to retrieve context infor-
mation and react accordingly. For example, a
message sender base service internally retrieves
presence information and could send an instant
message (IM) if the user’s presence status is online
or send an email if it is not.
• $me. The $me construct virtually represents the
user’s personal information to be resolved at exe-
cution time—namely, the identity, profile, and
context variables stored in the UIM, such as
$me.location or $me.my_wife_phone_number. The
use of $me properties as values of base service
properties in the SCE allows the personalization
of service behavior to whoever uses it, while
providing a me-centric view of the service for the
creator. For example, the “Send to:” property of a
“Send SMS” base service set to $me.phone_number
will at execution time be resolved into the phone
number of the end user invoking the service
pulled from his/her profile in the UIM.
Dynamic Execution Models for User-GeneratedServices
Along with the difficulties that may encompass
the exposure of the service creation process to end
users, another important challenge is the provisioning
of a scalable and secure service delivery platform and
execution environment for user-generated services.
In traditional telecommunication systems, the
platform resource requirements are calculated based
on the number of users, the number of provided
resources, and the network traffic generated, e.g.,
defined by the number of requests to a service or
resource. Typically, this is differentiated to identify the
floor traffic and peak traffic (e.g., during business
hours). The Erlang formula [4] is used to dimension
telecommunication systems, and it works well for pro-
visioning services such as call control, presence, Web
servers, or call center applications.
When applying this model to user-generated ser-
vices, a new dimension has to be taken into account—
the number of services, which may become infinite in
order to tackle the long tail of all possible applications.
OPUCE—Open Platform for User-centric service Creation and ExecutionSMS—Short message service
Figure 3.A snapshot of the OPUCE mobile editor.
212 Bell Labs Technical Journal DOI: 10.1002/bltj
The relevance of providing a huge number of ser-
vices when the number of users remains stable may
be something to be considered, but at least the distri-
bution of resources among the services will play an
important role, as the requirements for each single
service may not be as predictable as those for a fixed
amount of services.
When looking at user-generated content, peer-
to-peer systems play a more important role than
client/server based architectures, because of better
scalability and reliability. Within OPUCE, we have
been investigating the application of a dynamic and
distributed approach to service infrastructure. The
openness of the service environment requires man-
agement features that monitor the use of services and
resources in the execution environment. For each
base service, and subsequently each service composi-
tion, service level agreements can be defined. Those
can be either set explicitly from the creator in the por-
tal or derived, e.g., from the chosen business model.
The service level agreements (SLAs) will be used at
deployment and at execution time.
The OPUCE Service Execution ModelWhen defining the service composition and exe-
cution model in OPUCE, two important requirements
had to be considered. First of all, the composition
model needs to be easily understandable by end users
who have no or limited programming skills, and, sec-
ond, it must allow the seamless cooperation of telco
and IT resources.
As a result of the first requirement, the project team
decided to implement an event-driven, workflow-
oriented composition model. This model describes all
available base services by action/event patterns. Each
base service covers a single functionality by defining at
least one single but normally a set of correlated
actions that implement that function. Whenever such
an action is invoked, it will execute the function and
provide notification of changes with respect to the
execution state through the triggering of events. These
events are used in our model to invoke actions in
other base services or to terminate an ongoing service
composition session. We have chosen this model not
only because it is more intuitive to the end user for
service composition purposes, but also because it
coherently conveys concepts that are widespread in
the telecommunications world.
The second requirement is addressed by providing
an open service execution environment; it does not
stick to a single application server technology, but
seamlessly integrates the orchestration of services run-
ning on top of several technologies like Java* 2
Enterprise Edition (J2EE*), Java API for integrated
networks service logic execution environment (JAIN*
SLEE), Session Initiation Protocol (SIP) servlets, .NET
or client-side widgets. This gives base service develop-
ers the freedom to choose their preferred environment
to develop and deploy the base services. Base service
exposure follows the service-oriented architecture para-
digm, using the Web service protocol stack as the
interface between base services and the Business
Process Execution Language (BPEL) as the orchestra-
tion layer. While such a model is suitable for server-
based interaction, the inclusion of clients such as
mobile terminals, personal digital assistants, or laptop
computers is more difficult, due to the heavy protocol
stack. For this, we decouple the server side execution
via a proxy that plugs the client side components into
the Web services (WS) stack, while using more light-
weight communication models like REpresentational
State Transfer (REST) or Session Initiation Protocol for
communication with the client. This allows us to exe-
cute specific base services on the client terminals as
part of the execution platform, to reduce the load on
networks and network-centric resources, and to inter-
act with the end users via dedicated well-adapted
interfaces. We adopted state-of-the-art widget tech-
nology into the OPUCE service execution orchestrated
by SIP as a communication protocol.
Each base service is identified by a unique name
inside the platform and is specified by three sets of
elements:
1. Properties. Each property consists of a name (unique
within the base service) and a value; each base
service instance will manage its own properties,
keeping track of their values and updating them.
2. Actions. The actions describe the operations that a
base service can perform. The triggering of an
action might modify the state of the base service
DOI: 10.1002/bltj Bell Labs Technical Journal 213
instance. It is not mandatory that the actions are
independent. Constraints can be applied that
determine the sequence of the different actions.
After the invocation of an action, the base service
will fire one or more events.
3. Events. Events are the notifications sent to exter-
nal entities informing them of any change of state
or of the arrival of a message during the execution
of a base service. Each event is characterized by
an event name, which is unique inside the base
service. Events can be fired by a base service after
one of its actions has been invoked. The events
fired by a base service can trigger the invocation
of an action by another base service.
Since base services have, per se, no knowledge
about the service context (i.e., the composition in
which the reside), a higher layer orchestration is nec-
essary to maintain the overall service logic. This ser-
vice logic layer invokes the actions of the different base
service instances passing the correct parameters in the
given context and handles the events that are fed back
by the base services. Since the event-action pattern
is an asynchronous model, we need a mechanism to
dispatch the events to the correct service session. In
our demonstration system, we have implemented this
function in an event-gateway or session manager as a
front-end of a BPEL engine that maintains session
variables and service logic flow.
Figure 4 represents the service execution archi-
tecture and the deployment function that is described
in the next paragraph. More details about the execu-
tion model can be found in [7].
Deploying a Service CompositionSince the creation of a new service in the service
editor involves working with abstract representations,
we need a mechanism to translate and instantiate this
abstract service representation into the execution
environment. This task is performed by the deploy-
ment manager.
Given the graphical representation of the service
as defined in the service creation environment, it will
execute the following steps:
• Extract the base services to be used through the
service composition process.
• Identify dependencies between the base services
and their interconnection requirements.
• Find, for each base service, an active deployment
instance that has enough resources to fulfill the
SLA requirements for the service.
• If no such instance exists, instantiate the base
service in another suitable execution container.
• Reserve the resource according to SLA require-
ments.
• Provision the base service, adding service-dependent
instantiation information.
• Deploy the BPEL script into the service logic exe-
cution engine.
• Activate the service composition by attaching the
initial event in the event gateway.
After the deployment, each service composition
can act as an independent instance in the service plat-
form and a session can be established. A session will
be created as soon as an initial event is triggered in the
event gateway. Upon the initial event, a new session
object is generated and maintained in the service
orchestration engine. Base services may be shared
between compositions so it is necessary to monitor
the individual usage of resources for single base ser-
vices and the overall load on the compositions.
Nevertheless, the sharing of base services must not
lead to interference between the services; therefore,
service and service state are strictly separated.
This is achieved via a monitoring system that con-
trols resource usage and detects potential overload
situations in advance. In the case of overload on a
base service or an execution container, the deploy-
ment manager will be informed and create a new
instance of a base service with the heaviest load in a
different container. This re-deployment capability pro-
vides a self-optimization of the service execution envi-
ronment.
OPUCE Platform Validation ResultsThe first version of the OPUCE platform prototype
was successfully integrated in October 2007, namely,
version 1 (v1). This alpha prototype, which aims to
validate the OPUCE proof of concept, was periodically
updated through February 2009 (v3), which marked
the end of the funded stage of the project.
214 Bell Labs Technical Journal DOI: 10.1002/bltj
The validation results reported in this paper are
those of prototype v1.5, which has been used suc-
cessfully since June 2008 for public and internal
demonstrations, as well as testing purposes. It is capa-
ble of the complete lifecycle of a service inside the
platform: creation, deployment, sharing and adver-
tising, personalization and adaptation, and finally,
execution. The SCE, SLM, and SEE—the three core
modules driving the service chain—have been imple-
mented and properly integrated along with three
other side components: the service advertiser, which
facilitates intelligent matching and notification/shar-
ing of services; the user information manager, which
stores user profiles in a secure manner to allow a
personalized OPUCE experience; and the Web portal
for accessing the platform.
While not an integral part of the OPUCE platform,
a set of base services has also been developed for test-
ing purposes, offering IT features (Really Simple
Syndication [RSS] feed reading, Gmail* monitoring)
as well as telco capabilities (SMS, call control, and
text-to-speech). With this set of base services, com-
positions such as the one shown in Figure 2 have
been successfully built, deployed, and executed.
In order to validate OPUCE project results from a
user’s perspective, human factors experts have been
involved from the outset. Use case scenarios and veri-
fication processes have been carried out by experts
Figure 4.Service execution architecture.
BSwidget
Protocoladaptor
Protocoladaptor
WS RA
Lifecyclemanager
Deployment
Provisioning
Event gateway Service logic engine (BPEL)
Base service
Base service
JSLEE AS J2EE† AS
Base service
Base service
Service logicscripts
notifyEvent()
invokeAction()
DeployServiceLogic()
Deploy baseservice
Deploywidget
Provisionbaseservice
Deploy baseservice
Provisionbaseservice
Service mapper
CreateSession()
AS—Application serverBPEL—Business Process Execution LanguageBS—Base serviceJ2EE—Java† Platform, Enterprise Edition
†Trademarks of Sun Microsystems, Inc.
JSLEE—Java Service Logic Execution EnvironmentRA—Resource AdaptorWS—Web service
DOI: 10.1002/bltj Bell Labs Technical Journal 215
including psychologists, who also introduced some
perceived value analysis questions. Several standards
and evaluation techniques then identified user inter-
action problems and strengths in order to produce
recommendations.
The goal has been to obtain user feedback under
real OPUCE scenarios, gathering as much user inter-
action data as possible. In the user-centric design phi-
losophy applied in OPUCE, it is crucial to place user
requirements at the forefront. European MultiMedia
Usability Services (EMMUS) specifications [9] and the
International Organization for Standardization (ISO)
9241-11 model [12] have been used to establish a
proper framework.
The results of these quality of experience and
value tests have been both encouraging and enlight-
ening. Encouraging, because the results prove that
the creation paradigm employed in OPUCE is user-
friendly enough to allow non-experts to perform con-
ceptually complicated tasks, and enlightening because
the feedback from quality of experience experts has
revealed the areas in which the user interfaces are
most valuable or should be improved.
Of the test subjects 100 percent without a back-
ground in computer science were able to login to the
platform and start the creation environment, and as
many as 89 percent were able to drag and drop new
base services and configure them without any exter-
nal help. The average perceived ease of use score was
4.78 out of 7 points for the most difficult task: create
and deploy a complete service. Figure 5 shows the
ease of use perceived for several tasks, and demon-
strates that while there is a little frustration in the first
steps, ease of use increases as the user becomes famil-
iarized with the platform.
Suggestions for improvements were mostly related
to user-friendliness and include adding an “undo” but-
ton and help windows in the editors. Both will be
included in future versions of the platform.
Additionally, stress tests have been performed
over the SEE in order to determine how far the
OPUCE platform is from a prototype system that could
be deployed to the general public and handle huge
numbers of users and services. The results have
shown that while the deployment system and Web
service framework are quite robust and work properly
(even if the additional middleware introduces some
latency), the BPEL orchestrator could become a
bottleneck, and become overloaded if the number of
services increases too rapidly.
Different options are currently being explored as
solutions to this problem and will be analyzed for
4.33
3.11
4.11
4.78
1,00
2,00
3,00
4,00
5,00
6,00
7,00
Scenario 1:start to usethe system
Scenario 2:show/hide
actions/events andconnect base services
Scenario 3:configure abase service
Scenario 4:create
a service
Easy
Difficult
Figure 5.Average ease of use perceived for several tasks on a 7-point scale.
216 Bell Labs Technical Journal DOI: 10.1002/bltj
possible implementation in OPUCE v3, after consid-
ering the project work plan and resources. The most
basic solutions are based on the substitution of the
current BPEL engine for one that is more robust and
the implementation of a parallelized orchestrator that
can handle multiple BPEL engines at a time. More
complex alternatives aim at a completely distributed
orchestration approach, in which each base service
would be able to determine on its own the next step
in the service composition. Preliminary results show
that this distributed orchestration can function up to
ten times faster.
ConclusionsAs discussed in this paper, the OPUCE platform
integrates all of the required elements to allow user-
driven creation and management of integrated ser-
vices, including Web and communication capabilities. It
includes an intuitive user-friendly graphical interface
that can be used by non-experts to build services, a
lifecycle manager to automate difficult deployment
and maintenance processes, an interface that allows
external providers to introduce their services through
the platform, and a secured execution environment in
which all components are able to interact without
harming the operator’s infrastructure. It is therefore a
solution which is potentially prepared to become
a marketable product in the near future.
OPUCE offers significant advantages to all three
actors in the service delivery chain. First, end users
can use it to build the specific communications appli-
cation they need. Second, it is a means for external
service providers, i.e., small and medium-sized enter-
prises (SMEs), to enter the communications market
without requiring big investments for the deployment
of new infrastructure. And finally, the platform
owner/operator enriches its service portfolio and out-
sources the demanding task of service creation, while
increasing customer satisfaction.
Web mash-up editors such as Yahoo! Pipes or
Microsoft Popfly could be considered competitors for
OPUCE, although it offers several competitive advan-
tages. Most notably, OPUCE is specifically designed to
include communications capabilities, while mash-up
editors are bound to the Web domain and IT services.
Although it seems feasible to integrate mash-up editors
with telco APIs, OPUCE is unique in the sense that it
opens the platform to third parties, while the plat-
form operator maintains control of the sensitive envi-
ronment directly related to network resources and
security. Its event-based execution model specifically
fits the typical asynchronous telco approach, allowing
seamless convergence of both the IT and telco worlds.
OPUCE is designed to support an open service
marketplace that is able to generate revenues for the
platform operator, third parties, and even end users. It
is designed to become a viable market solution, evolv-
ing from the user-generated content era to a user-
generated services one. As a result, the operator will
retain full parity as a key player in the value chain
and cash flows.
In summary, OPUCE is a big step forward toward
the integration of telecommunications and the Web
and provides a powerful tool for telco operators to
compete effectively in the evolving Internet services
market.
AcknowledgementsThe work presented in this paper is executed as
part of the OPUCE project and is partly funded by the
European Union under contract IST-034101. OPUCE
is an Integrated Project of the Sixth Framework
Programme, Priority IST.
*TrademarksApple and iPhone are trademarks of Apple, Inc.Gmail and Google are trademarks of Google Inc.J2EE, JAIN, and Java are trademarks of Sun Microsystems,
Inc.Lego is a trademark of Lego Juris A/S Corporation.Open Mobile Alliance is a trademark of Open Mobile
Alliance Ltd.Popfly is a trademark of Microsoft Corporation.Yahoo! is a registered trademark of Yahoo! Inc.YouTube is a trademark of Google, Inc.
References[1] C. Anderson, “The Long-Tail,” Wired Mag., 12:10,
Oct. 2004, �http:www.wired.com/wired/archive/12.10/tail.html�.
[2] C. Anderson, The Long Tail: Why the Future ofBusiness Is Selling Less of More, Hyperion, NewYork, 2006.
[3] C. Anderson, “Free! Why $0.00 Is the Future ofBusiness,” Wired Mag., 16:03, Feb. 25, 2008,
DOI: 10.1002/bltj Bell Labs Technical Journal 217
�http://www.wired.com/techbiz/it/magazine/16-03/ff_free�.
[4] G. R. Ash, Dynamic Routing in Telecommuni-cations Networks, McGraw-Hill, New York,1998, pp. 119�.
[5] C. Baladrón, J. Aguiar, B. Carro, J. Sienel,R. Trapero, J. C. Yelmo, J. M. del Álamo, J. Yu,and P. Falcarin, “Service Discovery Suite forUser-Centric Service Creation,” Proc. ServiceOriented Computing: A Look at the Inside(SOC@Inside ‘07) (Vienna, Aus., 2007).
[6] BT, “BT’s 21st Century Network,” �http://www.btplc.com/21cn/�.
[7] D. Cipolla, F. Cosso, M. Demartini, M. Drewniok,F. Moggia, P. Renditore, and J. Sienel, “WebService Based Asynchronous Service ExecutionEnvironment,” Proc. 1st Internat. Workshop onTelecom Service Oriented Architectures (TSOA‘07) (Vienna, Aus., 2007).
[8] Y. De Serres and L. Hegarty, “Value-AddedServices in the Converged Network,” IEEECommun. Mag., 39:9 (2001), 146–154.
[9] EMMUS, “European MultiMedia UsabilityServices,” �http://www.ucc.ie/hfrg/emmus/�.
[10] R. H. Glitho, F. Khendek, and A. De Marco,“Creating Value Added Services in InternetTelephony: An Overview and a Case Study ona High-Level Service Creation Environment,”IEEE Trans. Syst., Man, and Cybernetics, Part C: Applications and Rev., 6:4 (2003),446–457.
[11] L. Grossman, “Person of the Year: You,” TimeMag., 168:27/28 (Europe) (2006), 38.
[12] International Organization for Standardization,“Ergonomic Requirements for Office Work withVisual Display Terminals (VDTs)—Guidance onUsability,” ISO 9241-11, 1998.
[13] L. Lamorte, C. A. Licciardi, M. Marengo,A. Salmeri, P. Mohr, G. Raffa, L. Roffia,M. Pettinari, and T. S. Cinotti, “A Platform forEnabling Context Aware TelecommunicationServices,” Proc. 3rd Workshop on ContextAwareness for Proactive Syst. (CAPS ‘07)(Guildford, UK, 2007).
[14] C. A. Licciardi and P. Falcarin, “Technologiesand Guidelines for Service Creation in NGN,”Proc. 8th Internat. Conf. on Intelligence in NextGeneration Networks (ICIN ‘03) (Bordeaux, Fr.,2003).
[15] Open Movilforum, �http://open.movilforum.com/�.
[16] T. O’Reilly, “What Is Web 2.0: Design Patternsand Business Models for the Next Generation ofSoftware,” Sept. 30, 2005, �http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-Web-20.html�.
[17] SPICE, “IST-FP6 Project SPICE,” �http://www.ist-spice.org�.
[18] N. van Veen and P. Jackson, Social Computing:The Role of Telcos in User-Generated Content,Forrester Research, Aug. 21, 2007.
(Manuscript approved December 2008)
JÜRGEN SIENEL is a research project leader in theservice infrastructure domain at Bell Labsin Stuttgart, Germany. He holds a Diplom-Informatiker degree in computer sciencefrom the University of Stuttgart. Hiscurrent work is focused on service-
oriented computing in telecommunication environmentsincluding IMS enhancements and peer-to-peer systems.Past work also covers different areas in man-machineinterface technologies and multimodal interactionwhere he has contributed to W3C standardization. He iswork-package manager for service lifecycle managementin OPUCE and has been appointed a distinguishedmember of the Alcatel-Lucent Technical Academy.
ALBERTO LEÓN MARTÍN is innovation projects managerof the New Services over Next-GenerationNetworks Division at Telefónica I�D,functioning as a key internationalinnovation expert and businessdevelopment contributor. Previously, he
worked in Latin America and Europe within TelefónicaGroup business units as a technical leader of TelefónicaIP network deployments.
CARLOS BALADRÓN ZORITA serves as the technicalmanager of IST OPUCE. He holds a M. Eng.degree in telecommunications engineeringfrom the University of Valladolid, Spain,where he is also a Ph.D. candidate andworks as a researcher. He has been involved
in several Spanish national and European projects,including IST FP6 satellite-based communicationssystems within IPv6 (SATSIX), covering topics such assatellite communications, voice encoding, next-generation networks (NGNs), VoIP, quality of service(QoS) over NGN, service engineering, and service-oriented architecture (SOA) systems.
218 Bell Labs Technical Journal DOI: 10.1002/bltj
LAURENT-WALTER GOIX is a senior research engineerat Telecom Italia Labs, Torino, Italy. Hegraduated in telecommunicationengineering at the National Institute ofApplied Sciences (INSA) Lyon, France andreceived a master’s in telecommunications
from TILS, Italy. His research experience centers on VoIPand next-generation network (NGN) service platforms,focusing on service creation, management, anddelivery. He currently leads a team on context-awareness, Social Web 2.0, and converging NGN/ITmobile services. He is scientific manager of IST OPUCE.
ÁLVARO MARTÍNEZ REOL is an R&D engineer atTelefónica I�D. His research has spannedthe areas of services, software engineering,IP and next-generation networks (NGN),Web and Voice over IP pre-commercialservices, applications, platforms and
terminals, and applied research and development forthe Telefonica Group. Currently, he works in openresearch and collaborative European innovationprojects, targeting residential, SMEs, and communitycustomers.
BELÉN CARRO MARTÍNEZ is a telecommunicationsengineer and a professor within theTelecommunications School in theUniversity of Valladolid, Spain. She holdsa Ph.D. in telecommunications. She alsocollaborates with Cedetel, a non-profit
technological center in management and innovativeR&D projects dealing with systems, networks, andservices for the information society. Her research isfocused on broadband access networks and advancedQoS topics. Dr. Carro Martínez has led projectsincluding IST FP5 Conferencing with BroadbandMultimedia over Geostationary Satellites (ICEBERGS),IST FP6 Media Networking (MEDIANET), and severalCooperation for European sustained Leadership inTelecommunications (CELTIC) initiative projects—Multimedia Communication Service (MaCS), Quality ofReal Time Applications End-to-End over HeterogeneousDomains (QUAR2), and Integrated MultiserviceArchitectures for next Generation Services (IMAGES).She has also managed other R&D projects related tobroadband access network performance and services,including Spanish national research projects incollaboration with major telecommunicationscompanies. ◆