Constraint Driven Web Service Composition in METEOR-S Rohit Aggarwal, Kunal Verma, John Miller, Willie Milnor Large Scale Distributed Information Systems (LSDIS) Lab University of.

Download Report

Transcript Constraint Driven Web Service Composition in METEOR-S Rohit Aggarwal, Kunal Verma, John Miller, Willie Milnor Large Scale Distributed Information Systems (LSDIS) Lab University of.

Constraint Driven Web Service
Composition in METEOR-S
Rohit Aggarwal, Kunal Verma, John Miller, Willie Milnor
Large Scale Distributed Information Systems (LSDIS) Lab
University of Georgia, Athens
Presented By: Dr. Amit P. Sheth
Outline
• Introduction
• METEOR-S @LSDIS
• Constraint Driven Composition
• Conclusions
Introduction
• Currently businesses are statically bound to
partners
– Static business models
– Technological constraints
• Emerging business models require more
dynamism
– Web services allow inter platform application integration
• New challenges
– Create a more dynamic business process creation environment
– Allow automatic integration of partners in business processes
– Create tools for optimizing such dynamic processes
Characterizing the challenges
• How to automatically integrate services ?
– Semantic Web Services
• The plug-and-play feature wherein services can be
selected and replaced automatically requires Web
service Semantics
• How to optimize processes?
– Constraint Analysis
• To be able to select Web services that are optimal
and satisfy client’s constraints requires the use of a
Constraint Analyzer/Optimizer
This work …
• Presents constraint based Web service
composition in METEOR-S
• Presents an approach to integrate
dynamic binding and optimization with
BPEL4WS
• Presents an approach that combines
constraint analysis using description logics
with integer linear programming
http://www.daml.org/services/use-cases/architecture/QosUseCase/DynamicQoSWebProc-SWSA-UseCase-v1.htm
Outline
• Introduction
• METEOR-S @LSDIS
• Constraint Driven Composition
• Conclusions
METEOR-S
• Uses semantics in the entire life cycle of
Semantic Web Services and Processes
– Semantics in Annotation, Publication, Discovery and
Composition of Web Services
• Comprehensive use of semantics (Data,
Functional/Operational, QoS and
Execution/Runtime)
• Integrates and co-exists with current industry
technologies E.g. Eclipse BPWS4J Editor,
BPEL4WS Execution Engine
• Consistent with and builds upon current industry
standards and recommendations
METEOR-S Back-End
DesignTime
Process Instance
Initiation Time
uses
Service
Template(s)
(PUBLISH)
Abstract Process
Designer
Process
Annotation Tool
Abstract
Process
Binder
BPWS4J
Execution
Engine
Process
Repository
Optimized
Service Set
query
Discovery Engine
Ranked Response
Enhanced
UDDI
Executable
Process
Constraint
Analyzer
Outline
• Introduction
• METEOR-S @LSDIS
• Constraint Driven Composition
• Conclusions
Constraint Based Process Composition
• User defines High level goals
– Abstract BPEL process (control flow without
actual service bindings )
– Process constraints on QoS parameters
• Generic parameters like time, cost, reliability
• Domain specific parameters like supplyTime
• Domain constraints captured in ontologies
– E.g preferred suppliers, technology constraints
Sample Abstract BPEL Process
<process name="orderProcess"
DEFINITIONS
targetNamespace="http://tempuri.org/"
xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
xmlns:tns="http://tempuri.org/">
<partnerLinks>
<partnerLink name="User" xmlns:ns1="tns" partnerLinkType="ns1:UserSLT"/>
<partnerLink name="orderPartner" xmlns:ns2="?" partnerLinkType="ns2:?"/>
<partnerLink name="orderPartner2" xmlns:ns8="?" partnerLinkType="ns8:?"/>
</partnerLinks>
<flow name="start">
Unknown
partners
FLOW
<invoke name="orderPArt" partnerLink="orderPartner" xmlns:ns7="?" portType="ns7:?"
operation="?" inputVariable="orderInput" outputVariable="orderOutput">
</invoke>
<invoke name="orderPArt2" partnerLink="orderPartner2" xmlns:ns9="?" portType="ns9:?"
operation="?" inputVariable="orderInput" outputVariable="orderOutput">
</invoke>
</flow>
</process>
Constraint Analyzer/Optimizer
• Constraints can be specified on each activity or
on the process as a whole.
• An objective function can also be specified e.g.
minimize cost and supply-time etc
• The Web service publishers provide constraints
on the web services.
• The constraint optimizer makes sure that the
discovered services satisfy the client constraints
and then optimizes the service sets according to
the objective function.
Constraint Representation – Domain
Constraints
Fact
OWL expression
Supplier1 is an instance of network
adaptor supplier
Supplier1 supplies #Type1
Supplier1 is a preferred supplier.
<NetworkAdaptorSupplier
rdf:ID="Supplier1">
<supplies rdf:resource="#Type1"/>
<supplierStatus>preferred
</supplierStatus>
</NetworkAdaptorSupplier>
Type1 is an instance of
NetworkAdaptor
Type1 works with Type1Battery
<NetworkAdaptor rdf:ID="Type1">
<worksWith>
<Battery rdf:ID="Type1Battery">
</worksWith></ NetworkAdaptor >
Constraint Representation – Process
Constraints
Feature
Goal
Cost
Optimize
supplytime
Satisfy
partnerStatus
Optimize
Value
<7
Unit
Aggregation
Dollars
Σ (minimize
total process
cost)
Days
MAX (Max.
supply time
below Value)
MIN (Select best
partner
level; lower
value for
preferred
partner)
Integer Linear Programming
• Constraints are converted into linear
equalities/linear inequalities over a set of
discovered services.
• We have used LINDO API which helps in solving
ILP problems.
e.g. if three services match the service template
with a constraint that cost<=500 and minimum
A + B + C = 2 (choose 2 services)
CA*A + CB*B + CC*C <= 500 (total cost constraint)
And minimize (CA*A + CB*B + CC*C) as objective
function
(where A, B and C are binary)
Working of Constraint Analyzer
Service
Template 1
Service
Template 2
Supply-time <= 4
Supply-time <= 3
Cost <=200
Cost <=300
Abstract Process
Specifications
Process constraints
Supply-time<=7
Cost<=400
Min (Cost, Supply-time)
Discovery
Engine
ST=2
C=100
ST=4
C=200
Ranked Set
ST=3
C=250
Constraint
Analyzer
ST=3
C=180
Objective Function
Min (supply-time + cost)
ST=4
C=200
ST=3
C=180
ST=3
C=200
ST=1
C=300
ST=2
ST=3
C=250
C=100
Outline
• Introduction
• METEOR-S @LSDIS
• Constraint Driven Composition
• Conclusions
Conclusion
• METEOR-S adds the advantage of taking an abstract
process as a starting point and automatically binding
services to it
• To have dynamism in process composition
– METEOR-S helps to provide the plug-and-play support for
dynamically selecting Web services by enhancing discovery
of relevant Web services using Semantics.
– METEOR-S reduces manual intervention during Web process
composition. It has the facility of choosing the optimal set
automatically or having the user choose the best set from a
list
– Constraint analysis gives a better service and choice to the
clients by making sure that the services satisfy the
constraints and also by choosing the optimal set of services
automatically.
References
• [Rajasekaran et al., 2004] P. Rajasekaran, J. Miller, K. Verma, A.
Sheth, Enhancing Web Services Description and Discovery to
Facilitate Composition, Proceedings of SWSWPC, 2004
• [METEOR-S, 2002] METEOR-S: Semantic Web Services and
Processes, http://swp.semanticweb.org , 2002.
• [Ankolenkar et al., 2003] The DAML Services Coalition, DAML-S:
Web Service Description for the Semantic Web, The First
International Semantic Web Conference -ISWC, Italy
• [Roman et al., 2004] D.Roman, U. Keller, H. Lausen, WSMO – Web
Service Modeling Ontology (WSMO), DERI Working Draft 14
February 2004, http://www.wsmo.org/2004/d2/v0.1/20040214/
Thank You
http://lsdis.cs.uga.edu/Projects/METEOR-S/