© Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the...

15
© Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Planning for Services on Demand& Demand& & & the service request language the service request language XSRL XSRL Mike P. Papazoglou INFOLAB, Tilburg University, & DIT, Trento Univ., The Netherlands/Italy email: [email protected] http://infolab.kub.nl/people/mikep

Transcript of © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the...

Page 1: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

Planning for Services on Planning for Services on Demand&Demand&

&&the service request language the service request language

XSRLXSRL

Mike P. Papazoglou

INFOLAB, Tilburg University, &DIT, Trento Univ.,

The Netherlands/Italyemail: [email protected]

http://infolab.kub.nl/people/mikep

Page 2: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

Service-oriented Architecture

Find(WSDL, UDDI)

Bind

SOAP

ServiceRequester

(client)

ServiceProvider

ServiceRegistry

Publish(WSDL, UDDI)

ServiceDescription

ServiceDescription

Page 3: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

Composition

Description & Basic Operations

Mana-gement

•Capability•Interface•Behavior•QoS

•Coordination•Conformance•Monitoring, Verification•QoS

•Publication•Discovery•Selection•Binding

Service provider

Service client

Service aggregator

performs

publishes

uses

Role actions

becomes

Operations•Assurance•Support

Market•Certification•Rating•SLAs

Service operator

Market maker

Managed services

Composite services

Basic services

Extended Service-oriented Architecture

Page 4: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

e-Marketplace:Vertical Web-services

CustomerKnowledgeCustomer

KnowledgeProduct

KnowledgeProduct

Knowledge

Business Models & ProcessesBusiness Models & Processes

e-Marketplacee-Marketplace

CustomerCustomerInformationInformation

ServiceService

Airline bookingAirline booking ServiceService

TravelTravelServiceService

Hotel bookingHotel bookingServiceService

RestaurantRestaurantreservationreservation

ServiceService

ReservationReservationServiceService

WeatherWeatherServiceService Standard Business TerminologyStandard Business Terminology

Page 5: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

Collaborative Business SemanticsCollaborative Business Semantics

• Agreements required on the following:– Meaning of terms– Process definitions– Syntax (common) – Communication Layer (SOAP)

• Define vocabulary and processes• Define contracts (SLAs) and standard interaction between

collaborators within a community• Requires ownership and support

– Map to the technology of the day (e.g., WSDL/BPEL)

Page 6: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

e-Marketplaces & Planning 4WS

• A serious challenge is to design a service request language for e-marketplaces that results in the generation of executable plans describing the sequence of actions to satisfy a user request.

• Plans should deal with non-deterministic effects of the business domain and the set of potentially executable actions may change during the course of planning (reactive plans) to deal with exogenous events, e.g., information supplied by the UDDI, and contingency plans that deal with uncertain outcomes of non-deterministic actions.

• Plans should be amenable to refinement and revision as new information is accumulated (via interaction with the user or UDDI) and as execution circumstances necessitate change.

Page 7: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

XSRL & WS standards

SOAPSOAP

UDDIUDDI

WSDLWSDL

XSRLXSRL

BPEL4WSBPEL4WS WS-WS-

TransaTransactionction

Page 8: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

<XSRL> FOR $a in document(PkgTravelSegment.xml)//AirSegment [CarrierName = "Alitlaia"| "United Airlines" AND DepartureAirport = "NewYork" AND ArrivalAirport = "Rome" | "Venice" AND (Price <= 800 AND Price >=500) AND SeatQty = 3 AND ArrivalDate = "1 June, 2002" AND DepartureDate = "10 June, 2002"] RETURN <ArrivalAirport>{ $a/ArrivalAirport}</ArrivalAirport> <price>{ $a/price}</price> <ArrivalDate>{ $a/ArrivalDate}</ArrivalDate> <DepartureDate>{ $a/DepartureDate}</DepartureDate> <HotelList> { FOR $h in document (hotelReference.xml)//HotelReference [ChainHotel = "Hilton"] WHERE ($h/Area =$a/ArrivalAirport AND $h/HotelArrivalDate = $a/ArrivalDate + 1 AND $h/HotelDepartureDate = $a/DepartureDate -1) RETURN <HotelName>{ $h/HotelName }</HotelName> <HotelAddress>{ $h/HotelAddress }</HotelAddress> }</HotelList> <GOAL> <Then><Vital>receive_confirmation($a)</Vital> <Optional> receive_confirmation ($h)</Optional></Then> </GOAL></XSRL>

XSRL definitionXSRL definition

Page 9: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

UDDIPlanner

XSRL parser

BPELsub-schema

(created incrementally)

BPEL Standard Process definitions

XSRL-goal

Services on-demand requireinterleaving of planning &execution

High-level view of the XSRL High-level view of the XSRL frameworkframework

Page 10: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

Web-service definitions-interface

Web-service providers

Web-service access UDDIPlanner

XML

input

Schemas

XML return

Schemas

Business Process

Specifica-tion

Domain Model in BPEL

e-Marketplace

return XML-schemacompliant plan instances

XSRL-goal

plans

Page 11: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

User User ApplicationApplication

TravelTravel AgentAgent

TourTourOperatorOperator

PlanPlanPackagePackage

CreateCreate

PackagePackage

ReviseRevise

PackagePackage

RejectReject

PackagePackage

RequestRequest

Package Package

sendsend

PackagePackage

RequestRequest

BookingBooking

ReceiveReceive

InvoiceInvoice

ReceiveReceive

BookingBooking

ReferenceReference

CreateCreate

BookingBooking

EntityEntity

ReceiveReceive

PaymentPayment

SendSend

InvoiceInvoice

SendSend

PaymentPayment

Package Package

AvailabilityAvailability

ReserveReserve

CapacityCapacity

PaymentPayment

RefusedRefused

AcceptAcceptPackagePackage

SendSend

ConfirmationConfirmation

DetailsDetails

ReceiveReceive

ConfirmationConfirmation

DetailsDetails

EvaluateEvaluate

PackagePackage

Create Create

AlternativeAlternative

PackagesPackagesDept. airport, a

rriv.

airport, arriv. &

dept. dates,

nr. of seats

air-segment

details

air-segment d

etails

cred

it ca

rd

detai

ls

credit card details

invoice

payment authorisation

booking reference

voucher

air-segment details

Dept. airport, arriv. airport, arriv. & dept. dates,nr. of seats

RequestRequestdocumentdocument

ResponceResponcedocumentdocument

Page 12: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

UDDI

Domain Model (BPEL)

Planacceptance

Planrejection

Planrevision

Plan action sequence

PLANNER

invokeUDDI-API

result serialization

XML domain

schemas

Business Process

Specification

XML return

schemas

fail

XSRL request

Executed plan in BPEL

Page 13: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

XSRL

Planexecutor

UDDI

Enquiry API

Business Business ProcessProcess

specificationspecification

Business Business ProcessProcess

specificationspecification

Service BrokerService Broker requestsrepository

service fingerprint& binding info.

service requestreturn values

port type operations

find_tModel( )get_tModel( )

service return detailsModel

BasedPlanner

Page 14: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

Wrapping it up: XSRL extensionsWrapping it up: XSRL extensions

• There are a number of additional features to further enhance the usability and expressive power of XSRL:

1. Distinguish between different types of goals and sequencing preferences, e.g., it should be possible not only to state that a goal is vital or that it is optional but also to express an explicit ordering of goals based on personal preferences

2. The language could be enriched with similarity operators. There are three levels at which such semantic operators can work:

(a) at the constraint objects level: a user could specify that they want something similar to a compact car (topology), or some location close to a given city (proximity), and so on;

(b) at the service level: a user could specify that they wants something functionally similar to a specific service, e.g., we may choose to replace a train service by a plane service;

(c) at the plan level: a user could specify a goal similar to an already successfully executed plan, e.g., make a trip similar to the one the user has previously done.

Page 15: © Prof. dr. ir. Michael Papazoglou. University of Tilburg Planning for Services on Demand& & the service request language XSRL Mike P. Papazoglou INFOLAB,

© Prof. dr. ir. Michael Papazoglou. University of Tilburg

A Final RemarkA Final Remark

• More info. on XSRL & other SOC publications, e.g., service compositions, transactions, P2P services can be found in:– http://www.uvt.nl/infolab/pub/db/