Survey of dynamic web service composition techniques
Download
1 / 24

Dynamicwebservice.. - PowerPoint PPT Presentation


  • 191 Views
  • Updated On :

Survey of Dynamic Web Service Composition Techniques. Presented By Atif Alamri ( atif@mcrlab.uottawa.ca ) Mohamad Eid ( eid@mcrlab.uottawa.ca ). ELG 5121 Multimedia Communications Prof. Abdulmotaleb El Saddik Nov. 1, 2005. Outline. Introduction Web services architecture

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Dynamicwebservice..' - ivanbritt


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Survey of dynamic web service composition techniques l.jpg

Survey of Dynamic Web Service Composition Techniques

Presented By

Atif Alamri (atif@mcrlab.uottawa.ca )

Mohamad Eid (eid@mcrlab.uottawa.ca )

ELG 5121

Multimedia Communications

Prof. Abdulmotaleb El Saddik

Nov. 1, 2005


Outline l.jpg
Outline

  • Introduction

    • Web services architecture

    • Advantages of web services

  • Service composition

    • Elementary vs. composite services

    • Drivers for composition

  • Dynamic service composition

    • Static vs. dynamic and Manual vs. automatic

    • Beneficial aspects of dynamic web service composition

    • Challenges in dynamic web service composition

  • Classification of Composition techniques

    • Runtime reconfiguration using wrappers

    • Runtime component adaptation

    • Composition language

    • Workflow driven composition techniques

    • Ontology driven web service composition techniques

    • Declarative composition technique

  • Proposed Research Questions


Web services architecture l.jpg

UDDI Repository

(1) Register & publish web service using its WSDL file

(2) Search for web service and retrieve the URL for its WSDL file

Service Requestor

Service Provider

(3) Interact with the web service

XML formatted messages

Application

Web services architecture

  • A web service is a self-contained, language neutral, platform independent, and loosely coupled application

  • It can be described, published, located, and invoked over the Internet

SOAP Interpreter

SOAP Interpreter


Advantages of web services l.jpg
Advantages of web services

  • Loose Coupling

  • Standard-Based (interoperability)

  • Flexibility

  • Reusability

  • Scalability

  • Reduced Complexity

  • Programmatically Accessible

  • Application-to-Application Communication


The need for web service composition l.jpg
The need for web service composition

  • Composition is the ability to provide value-added services through integration of other web service components

  • Services are classified as elementary and composite

  • Drivers for Composition

    • Managing Increased Complexity

    • Engine-Oriented Software Applications

    • Cross-Domain Services

    • Bridging Network Protocols


Dynamic service composition l.jpg
Dynamic service composition

  • Manual vs. automatic

    • Manual composition is performed by means of employees who have access to the elementary services

    • Automatic implies that a software agent performs composition based on some predefined algorithm

  • Static vs. Dynamic

    • Static composition is performed at design or compile time

    • Dynamic composition is performed at execution time

  • We will focus on Dynamic web service Composition


Why dynamic web service composition l.jpg
Why dynamic web service composition

  • Greater Flexibility

    The customization of software based on individual needs of a user can be made dynamic

  • New Services can be created at runtime

    The capabilities of the application can be extended at runtime

  • Users are not interrupted during upgrades of applications

    Users can continue to interact with the old services while composition of new services is taking place

  • Unlimited Set of Services

    unlimited number of new services can be created from limited set of service components


Challenges in dynamic composition l.jpg
Challenges in dynamic composition

  • The dynamic procedures are very complicated

    Composition is useful to provide runtime specified services

  • Dynamic Composition has limited applicability to everyday software systems

    Dynamic composition is the only means to change the behavior of running applications

  • Upgrading Software may be more difficult

    New versions of components can be introduced, thus making upgrading possible

  • It is much slower than static composition

    Not necessarily true

  • Significant Infrastructure is required to support dynamic composition

    The extra requirement is a component model that supports dynamic binding and runtime extensibility of components


Composition techniques 1 6 runtime reconfiguration using wrappers l.jpg

Running framework

Task Scheduler

Message Acceptor

Message Acceptor

Wrapper

onOutgoingMessage()

InvocationProtocol

onOutgoingMessage(…)

onOutgoingMessage(…)

Message Acceptor

Encrypt()

Sending

Encrypted

Sending

Message Acceptor

New Component

Public Encrypt(…)

Transport

Connector

Service

Context dependency

Composition techniques 1/6 Runtime reconfiguration using wrappers

  • A wrapper is used to provide the additional context dependency interfaces to the component so that it can interact with a new component


Composition techniques 1 6 runtime reconfiguration using wrappers10 l.jpg
Composition techniques 1/6 Runtime reconfiguration using wrappers

  • Pros

    • Extending the implementation of components without changing the code

    • Provide additional context interfaces to interact with new components

    • Adapting running components to new behaviors (facilitates unanticipated, dynamic component adaptation)

    • Doesn’t need knowledge of internals of services (only interfaces)

  • Cons

    • Recursive composition is complicated

    • Unnecessary methods or interfaces may exist

    • Doesn’t support unanticipated runtime reconfiguration

    • Type conflict may occur between existing component and newly introduced component


Composition techniques 2 6 runtime component adaptation l.jpg

Adaptation Type

Adaptation Type

Adapted Component

Adapted Component

Component

Public Encrypt(…)

Encrypt()

Encrypted()

Composition techniques 2/6 Runtime component adaptation

  • Adapting components into new components or services by changing the interfaces and/or behavior of the component at runtime

Component

onOutgoingMessage(…)

Layer message handler

onOutgoingMessage(…)

Adapter


Composition techniques 2 6 runtime component adaptation12 l.jpg
Composition techniques 2/6 Runtime component adaptation

  • Pros

    • Make potentially incompatible components into composable components

    • New atomic service is produced that can be advertised

    • Impose predefined but configurable types of functionalities

    • New atomic service is produced that can be advertised.

    • Type safe and dynamic delegation is possible

  • Cons

    • Require tempering of the service code.

    • Doesn’t support distributed execution.

    • Complex monitoring and recovery mechanisms.

    • Names of some interfaces don’t match expected names of methods

    • Don’t define restricted client access to specific interfaces.

    • Class replacement is very difficult in a running system


Composition techniques 3 6 composition language l.jpg
Composition techniques 3/6 Composition Language

  • A combination of architectural description language (ADL), a scripting language, a glue language, and a coordination language

  • Pros

    • Specifically designed to assemble components

    • Uses components that have standardized interfaces

    • Define higher level abstraction to better describe composition

  • Cons

    • More complex in comparing with other techniques

    • Recursive composition is not possible

    • Components must be designed to be composed or they will not be composable interfaces


Composition techniques 4 6 workflow driven composition l.jpg

Service Provider A

Service Provider B

Service Provider C

Composition techniques 4/6 Workflow Driven Composition

  • Builds web services to an abstract process based on business and process constraints and generate an executable process

Check Passed?

?

Check credit

Abort

Start

Wheel Delivery

Credit Card

Yes

Join

End

Restaurant Selection

Routing planning

Check credit

Restaurant Selection

Credit card payment


Composition techniques 4 6 workflow driven composition15 l.jpg
Composition techniques 4/6 Workflow Driven Composition

  • Pros

    • Users can participate in composition

    • Simple monitoring and recovery procedures

    • Recovery plans can be included in the workflow

    • Easier to impose distributed execution of composite services

  • Cons

    • Composed service can’t be advertised

    • Recursive composition becomes more difficult

    • Unavailability of any service causes failure of execution of the composite service


Composition techniques 5 6 ontology driven composition l.jpg

THING

Place

Object

Person

PartOf

Park

Prof

Building

Mobile

Stationary

PartOf

LocatedIn

Room

phone

OwnedBY

Composition techniques 5/6 Ontology Driven Composition

  • The ontological descriptions and relationships of web services with other services are used to automatically and semi-automatically composing web services


Composition techniques 5 6 ontology driven composition17 l.jpg
Composition techniques 5/6 Ontology Driven Composition

  • Pros

    • Consider semantics

    • Supports easier forms of requesting composition (English-like queries)

    • Can be integrated with any other technique

    • Enables distributed composition and execution

  • Cons

    • Too hard to verify the effectiveness of the ontology

    • Domain specific

    • No agreed-upon taxonomy as the foundation of the ontology

    • Assumes that elementary services are semantically represented

    • Complex monitoring and recovery mechanisms

    • Failure prone


Composition techniques 6 6 declarative composition l.jpg
Composition techniques 6/6 Declarative Composition

  • Using composability rules to determine whether two services are composable

  • Pros

    • Mathematically approved

    • Can reach optimality

    • Doesn’t need knowledge of the internal implementation of services

    • Allow distributed composition and execution

  • Cons

    • Uses direct matching

    • Constraints based

    • Uses rules which increase its complexity

    • Class replacement is impossible in a running system


Dynamic composition techniques summary l.jpg

Classification

Pros

Cons

Summary

Runtime Reconfiguration Using Wrappers

  • Don’t change the code.

  • Supports distributed execution

  • Provide additional context interfaces

  • Doesn’t need knowledge of service implementation

  • Adapting behavior at runtime

  • Complicated recursive composition.

  • Non optimal code.

  • Unanticipated runtime reconfiguration not supported

  • Type conflict may occur

A wrapper is used to make the component capable to interact with a new component.

Runtime Component Adaptation

  • Make incompatible components composable

  • New service is produced

  • Necessary functionalities are only included.

  • Impose predefined but configurable types of functionalities.

  • Type safe and dynamic delegation is possible.

  • Service code is tempered

  • Requires knowledge of the internal No distributed execution.

  • Complex monitoring and recovery.

  • Naming mismatch

  • No restricted client access mechanisms.

  • No class replacement

Adapting components into new services by changing the interfaces and/or behavior of the component at runtime.

Language Driven Composition

  • Specifically designed to assemble components.

  • Uses standardized interfaces.

  • Define higher level abstraction to better describe composition

  • More complicated

  • No Recursive composition

  • Components must be designed to be composed.

Language specifies the component adaptation and configure coordination and policies.

Workflow Driven Composition

  • Users controllable.

  • Simple monitoring and recovery.

  • Recovery plans can be in the workflow.

  • Easier to impose distributed execution

  • Composed service can’t be advertised.

  • Recursive composition more difficult.

  • Unavailability of service causes failure of execution of the composite service.

Build services to an abstract process and constraints and generate an executable process.

Ontology Driven Composition

  • Consider semantics.

  • Supports English-like queries

  • Integrated with other technique

  • Distributed composition and execution.

  • Performance.

  • Domain specific

  • No agreed-upon taxonomy.

  • Assume semantic service

  • Failure prone.

Ontological descriptions and relationships of web services are used to compose web services.

Declarative Composition

  • Mathematically approved.

  • Can reach optimality.

  • Doesn’t need knowledge of the implementation.

  • Allow distributed composition and execution

  • Uses direct matching.

  • Constraints based.

  • Uses complex rules

  • Class replacement is impossible in a running system

Using composability rules to check if two services are composable.

Dynamic Composition Techniques: Summary


General requirements for dynamic composition l.jpg
General Requirements for Dynamic Composition

  • Query Parser

    Decomposes user query into a set of requirements

  • Service Selection Module

    Decomposes user requirements into an abstract service and specify the proper services.

  • Composition Engine

    Uses one of dynamic composition techniques to answer the ‘how’ question of composition

  • Verification Module

    To verify that the composite service satisfy the user’s query

  • QoS Certifier

    Checks for functional and/or nonfunctional QoS parameters


General requirements for dynamic composition21 l.jpg
General Requirements for Dynamic Composition

  • Execution Engine

    Executes the composite service by invoking individual components and matching interfaces

  • Monitoring and Recovery Module

    Showing the status of the component services and handling exceptional states

  • Controllability Agent

    Provides controllability on composition, execution, and recovery processes

  • Composite Service Description and Advertisement

    To describe and advertise the composite service to support recursive composition


Trends in dynamic composition techniques l.jpg
Trends in Dynamic Composition Techniques

  • Distributed execution of composite services

  • Ontology development to facilitate semantic composition

  • Integration of different techniques to improve overall performance


Selected references l.jpg
Selected References

  • Dustdar, S. and Schreiner, W. (2005) ”A survey on web services composition”, Int. J. Web and Grid Services, Vol. 1, No. 1, pp.1–30.

  • Jinghai Rao and Xiaomeng Su, “A Survey of Automated Web Service Composition Methods”, In Proceedings of the First International Workshop on Semantic Web Services and Web Process Composition, SWSWPC 2004, San Diego, California, USA, July 6th, 2004, Springer-Verlag.

  • K. Fujii and T. Suda, “Dynamic Service Composition Using Semantic Information”, ICSOC’04, November 15--19, 2004, New York, USA.

  • José Luis Ambite, Genevieve Giuliano, Peter Gordon, Qisheng Pan, Naqeeb Abbasi, LanLan Wang, Matthew Weathers, “Argos: dynamic composition of web services for goods movement analysis and planning“, Proceedings of the 2005 national conference on Digital government research dg.o2005, May 2005.

  • José Luis Ambite, Matthew Weathers, “Automatic composition of aggregation workflows for transportation modeling“, Proceedings of the 2005 national conference on Digital government research dg.o2005, May 2005.

  • B. Benatallah, M. Dumas, Q. Sheng, and A. Ngu. “Declarative composition and peer-to-peer provisioning of dynamic web services”, In Proceedings of the International Conference on Data Engineering (ICDE), 2002.


Slide24 l.jpg

THANK YOU

Questions ?

We are willing to answer Off-line questions on atif@mcrlab.uottawa.ca and eid@mcrlab.uottawa.ca


ad