Title: COCOA : ConversationBased Service Composition for Pervasive Computing Environments Sonia Ben Mokhtar
1COCOA Conversation-Based Service Composition
for Pervasive Computing EnvironmentsSonia Ben
Mokhtar, Nikolaos Georgantas and Valérie
IssarnyICPS'06 IEEE International Conference
on Pervasive Services 200626-29 June 2006, Lyon,
France
2Outline
- Background
- COCOA COnversation based service COmposition
for pervAsive computing environments - Prototype Implementation and Evaluation
- Conclusion and Future Work
3Pervasive Computing Environments and SOA
e-learning
Multimedia streaming
Heterogeneity
e-shopping
Travel reservation
4Example Scenario
5Pervasive Computing Environments
- Mobile nodes host services providing various
functionalities - Mobile users need to perform tasks anytime
anywhere, using functionalities of the pervasive
environment - Challenges
- Allow users to perform tasks, by composing on
the fly available networked services - Enable autonomy and adaptation to the
environments changes
6Issues Requirements
- Existing approaches to ad hoc service
composition in pervasive computing environments - Commonly assume that services have been
pre-developed to integrate - Poorly deal with the environments dynamics and
heterogeneity - Requirements
- Deal with the environments heterogeneity
- Semantic Web services
- Deal with the environments dynamics
- Automating service discovery and composition
- User tasks realized through dynamic composition
of networked services
7Semantic Web services
- Web Services
- A software component developed using any
language, deployed on any platform, described
using WSDL, accessible via remote calls using
SOAP on top of internet protocols - Web Services in pervasive computing environments
(e.g. WSAmI ISTS04) - Semantic Web Services
- Semantically annotating Web services descriptions
using Ontologies - Semantic annotation on top of WSDL, e.g., WSDL-S
- Web Service Ontologies, e.g., OWL-S, WSMO,FLOWS,
ROWS
8OWL-S based Model for Services and Tasks
- Service
- Workflow of high level provided capabilities
- A set of non-functional properties
- Task
- Workflow of high level required capabilities
(abstract capabilities) - A set of non-functional requirements
- Matching
- High level capabilities (Service discovery and
selection) - Workflows (Service integration)
Networked Services
User Task
Browse
Browse
Browse
Required Capability
Provided Capabilities
9Service Discovery Composition-COCOA
? Service Discovery
?
?
?
?
?
?
?
?
Service Composition
Abstract user task conversation
10COCOA-SD Semantic Matching of Service
Capabilities
- Service Advertised capability (Adv)
- required inputs (Adv.In)
- provided outputs (Adv.Out)
- provided properties (Adv.P)
- Service Requested capability (Req)
- provided inputs (Req.In),
- required outputs (Req.Out)
- required properties (Req.P)
Client
Service
Ontologies
11COCOA-CI Modelling conversations as finite state
automata
- A model to map OWL-S conversations to finite
state automata - A mapping rule for each OWL-S control construct
(e.g. Choice, Sequence, While, Split) - Translate the problem of dynamic conversation
integration to an automata analysis problem
12COCOA-CI Conversation Integration-Example
3
1
1
2
3
4
5
5
4
2
13COCOA-CI Binding to Concrete Services
- Each composed capability corresponds to either
an atomic or a composite process of a networked
service
14Properties of COCOA-CI
- Workflow integration
- Interleaving
- The number of services to be composed is dynamic
- The degree of involvement of each composed
service is dynamic
COCOA-CI
Networked services
1
2
3
4
Service 2
Service 1
1
3
2
4
1
2
3
4
COCOA-CI
Networked services
Service 1
Service 2
COCOA-CI
COCOA-CI
Networked services-Env 1
Networked services-Env 2
15COCOA in action
COCOA-SD
COCOA-SD
COCOA-CI
16Prototype Implementation and Evaluation
- Implementation of COCOA-CI
- Runtime environment
- Java, Linux platform running on an Intel Pentium
4, 2.80 GHz CPU with 512 MB of memory - Services from 1 to 100 of semantically
equivalent capabilities - Evaluation of the runtime overhead produced by
integrating conversations - Comparison with the XML parsing time of services
and tasks (mandatory)
17Prototype Implementation and Evaluation
- Task composed of a single required capability
- The runtime overhead of COCOA-CI is negligible
compared to the XML parsing time of services and
task descriptions
18Prototype Implementation and Evaluation (2)
- Task from 1 to 20 of semantically equivalent
capabilities in sequence - The runtime overhead of COCOA-CI depends on the
number intermediate paths assessed during the
composition - Here for a task composed of i capabilities
there are 100 i possible composition schemes
19Prototype Implementation and Evaluation (3)
- Realistic scenario
- 20 required capabilities
- 30 available capabilities
- Various control constructs
- 32 ms for finding the 2 possible compositions
among 36 intermediate compositions - 152 ms for XML parsing of service and task
descriptions - In most realistic cases the runtime overhead of
COCOA-CI is negligible compared to XML parsing
time
20Conclusion Future work
- COCOA Conversation-based Service Composition in
Pervasive Computing Environments - A flexible approach for dynamically composing
services to perform a user task - Built upon Web services and Semantic Web
paradigms - Based on conversation integration
- Ongoing work
- Advanced prototype implementation (including QoS-
and Context-awareness) underway as a part of the
European IST AMIGO project - Integration of COCOA into a semi-distributed
discovery protocol adapted for pervasive
computing environments Sailhan,Percom05 - Efficient matching of semantic Web service
capabilities - Reconfiguration of the composed user task at
runtime
21Questions ?
Allez Les Bleus !