260 likes | 350 Views
Towards End to End Composition of Web Services. Biplav Srivastava* IBM India Research Lab, New Delhi at TIFR on Jan 21, 2005 *Joint work with Neeran Karnik, Vikas Agarwal, Arun Kumar, Ashish Kundu, Koustuv Dasgupta and Sumit Mittal. Outline. Why do composition Business-inspired case
E N D
Towards End to End Composition of Web Services Biplav Srivastava* IBM India Research Lab, New Delhi at TIFR on Jan 21, 2005*Joint work with Neeran Karnik, Vikas Agarwal, Arun Kumar, Ashish Kundu, Koustuv Dasgupta and Sumit Mittal
Outline • Why do composition • Business-inspired case • Understand potential and scope: end-to-end • Highlight issues and non-issues • A Solution Approach • Decouple into ‘what’ needs to be composed (logical composition) and ‘how’ (physical composition) • A walkthrough of prototype • Practical Challenges • Information Modeling • Measuring impact
Customer Problem (Mobile Telephony Service Providers) • Voice service is commoditized • High volume but low margins • Mobile user services are the differentiator • Data services (e.g. stock quotes, banking) • Gateways to “brick-n-mortar” services (e.g. movie tickets) • Location-aware services • Need rapid service / application development and deployment • e.g., in response to competitor, or customer demand Source: “The Value of the IBM WebSphere Application Server for Telecom”, Scott Broussard (IBM Austin), March 11, 2003 • State of the art: manual programming, integration • too slow, long time-to-market • huge implications on break-even point, revenue
New service capabilities New service providers Network / environment changes Specify end-user service capability Select vendor service providers Design the flow Deploy the service Fig.1: Creating a new end-user service Creating a new service… • Manual business process integration • Use tools like WSAD-IE to create flows and business logic • Deploy using a flow engine (such as MQWF / WAS Flow Orchestrator) • Must take changes into account
User 3rd Party Providers Telco Enterprise User User Customer Problem… • Service/content providers are often 3rd parties • Telco is the intermediary for delivery of services to enterprises/consumers • Must improve ease-of-use of its software infrastructure • Must optimize the utilization of its IT infrastructure • scalabilityunder high-volume usage • Need to adopt standards-based framework • Use Web services to build end-user services • component-based software engineering, software reuse • Use semantic annotations allowing service functionality to be programmatically composed • Use autonomic, decentralized orchestration of services | |
Helpline Automation Scenario Customer Problem • Service Specifications • Input – Customer Problem • Output– Status of Problem Resolution • Steps in the workflow • Reporting of the problem using a Web-based interface • Selection of a helpline agent to resolve the problem • Agent should have desired level of expertise • Agent could be a desk-based expert, or a field-based expert • Notify the appropriate expert with relevant information about the problem • Update registry with resolution status • Goal is to create the service using existing component services, in an automated manner if feasible Problem Reporting Service Problem Ticket ID Agent Assignment Service Problem Ticket ID, Field Agent ID Problem Ticket ID, Desk Agent ID Help Desk Service On Site Service Problem Ticket ID, Resolution Status Problem Ticket ID, Resolution Status Problem Registry Service | |
Component Services • Telco services • Location tracker, SMS, Email, Pager, Instant Messaging, Call Setup, Distance calculator • Domain-specific Services • Problem Reporting Service • Collects relevant information about a problem via customer interaction • Problem Classification Service • Classifies based on level of expertise and the desired location of expert • Optimal Agent Selector Service • Finds an expert on the field closest to a customer site • Database Services • Customer DB, Product DB, Expert DB, Problem Registry DB | |
Composed Service: Location-Based Agent Selection Service Effect: Agent chosen based on proximity to destination Output: Field Agent ID Input: Customer Location, List of Field Agent IDs Location-based Selection Service Customer Location List of Agent Locations Nearest Agent ID Expert DB Location Tracker Distance Calculator Optimal Agent Selector List of Agent IDs List of Agent Distances, List of Agent IDs List of Agent Mobile Nos | |
Understanding the Business Problem • Major impact in application integration/ management of IT assets possible ($$) • Scope is end-to-end composition • Offline service creation, deployment • User in the loop, ratification important • Online monitoring for Quality of Service, automatic re-provisioning • Could drive composite service life cycle • Issue • Scalability of composition solution • Automate service creation – control flow and data flow • Modeling consistent with software engineering principles • Non-issue • Fully automatic service creation because people want to be in the loop when costly and business-critical assets are involved • Usage of any specific ontologies, semantic web, etc. Metadata needs to be represented formally and be consistent with existing modeling methodologies. Functionality (what) Execution (how) | |
Proposed Solution On Demand Business Process Integration for mobile SPs • Automatic Service Composition • Represent business processes as web services • Enhance service descriptions using semantic annotations • Express requirements/goals using semantic representation • Programmatically compose web service functionality to achieve desired goal • Autonomic Service Deployment and Orchestration • Decentralize the composite service based on static program analysis • Deploy on a distributed infrastructure • Monitor its execution at runtime • Optimize the deployment periodically | |
Service Specification Service Creation Environment Domain Ontology Logical Composer Abstract Workflow (Plan) Service Registry Physical Composer Deployable Workflow Execution Environment System Architecture • Key Components • Service Capabilities Database • Information about services available in-house as well as with 3rd party providers • Telecom Ontology • Domain-specific terminology • Logical Composer including Planner • automated aggregation of services via generative planning-based reasoning techniques • Physical composer • Instance selection based on end to end QoS specification • Input • Requirements document for the new service that needs to be composed • Output • Deployable workflow representing a composite service | |
SNOBASE Service Capabilities Registry Domain Information Service Specs Ontology Validator Logical Composer Validated Specs Available Service Types Domain Information Abstract Workflow Planner4J Filter Matchmaker Candidate Component Services Candidate Component Services Logical Composition | |
WSME Abstract Workflow Matching Instances Matchmaking language/rules Instance Selector Matchmaker Physical Composer Available Service Instances Data Dictionary Selected Instances Service Instances Registry Deployable Workflow BPEL Generator WSDLs for the selected Instances Physical Composition | |
Demo Walkthrough | |
Call Setup Message Delivery Help Desk On Site Problem Classification Location-based Agent Selection Expert Lookup Agent Assignment Composed Service: Helpline Automation Customer Interaction Problem Reporting Problem Ticket Problem Ticket, Problem Ticket, Desk-based Expert ID Field Expert ID Problem Ticket, Problem Ticket, Resolution Status Resolution Status Registry Update | |
Practical challenges • End to end information modeling • Planning gives control flow but not data flow readily. Data flow generation needs contextual information about inputs and outputs. • Possible to generate data flow but it will bloat the service specifications • Will cause frequent specification changes to information model • Handling non-functional requirements, QoS constraints • Scalability – OWL-S supports at web service instances level • Measuring impact • How to quantify gain with a composition tool v/s manual methodology • How on-demand can the system be? | |
Concluding comments • Web services composition important to solve real business problems • Presented application integration for a telecom provider • Need end-to-end, continual composition perspective • Existing distributed computing solutions need to leveraged – CIM, Monitoring, Execution Infrastructure, Grid, Autonomic Computing, etc. • Presented an approach and prototype tool • Decouples composition into what and how phases • Uses AI and distributed computing techniques collectively • Presented practical challenges | |