survey of dynamic web service composition techniques
Download
Skip this Video
Download Presentation
Survey of Dynamic Web Service Composition Techniques

Loading in 2 Seconds...

play fullscreen
1 / 24

Dynamicwebservice.. - PowerPoint PPT Presentation


  • 197 Views
  • Uploaded on

Survey of Dynamic Web Service Composition Techniques. Presented By Atif Alamri ( [email protected] ) Mohamad Eid ( [email protected] ). 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

Survey of Dynamic Web Service Composition Techniques

Presented By

Atif Alamri ([email protected] )

Mohamad Eid ([email protected] )

ELG 5121

Multimedia Communications

Prof. Abdulmotaleb El Saddik

Nov. 1, 2005

outline
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

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
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
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
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
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
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

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
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

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
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
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

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
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

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
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
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

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
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
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
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
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
THANK YOU

Questions ?

We are willing to answer Off-line questions on [email protected] and [email protected]

ad