28
1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales (UNSW) ©Boualem Benatallah, 2006

Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

1

Web Services: Life CycleIntelligence

A/Prof. Boualem Benatallah

School of Computer Science and EngineeringThe University of New South Wales (UNSW)

©Boualem Benatallah, 2006

Page 2: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

2

Agenda

• Service Oriented Computing:principles and issues

• ServiceMosaic Project: Service Life-cycle Intelligence

©Boualem Benatallah, 2006

Page 3: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

3

Material based on work in ServiceMosaicproject, collaboration with:

• Dr. Fabio Casati (HP Labs, USA)

• Dr. Regis Saint-Paul (UNSW, Australia)

• Mr. Hamid Motahari (UNSW, Australia)

• Ms. Woralak Kongdenfha (UNSW, Australia)

• Mr. Julien Ponge (LIMOS, France)

• Dr. Farouk Toumani (LIMOS, France)

• Prof. Mohand-said Hacid (LIRIS, France)

Web sites

www.cse.unsw.edu.au/~soc

servicemosaic.isima.fr

©Boualem Benatallah, 2006

Page 4: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

4

Development of Integrated Applications

•Applications and datasources are autonomouslydeveloped and deployed

• Proprietary technologies(communication protocols,data formats)

•Rigid infrastructures,costly development andmaintenance of integratedsystems

Page 5: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

5

Service Oriented Architectures (SOA)

J2EE™APPLICATION

LEGACYSYSTEMS .NET™

APPLICATION

PARTNERSYSTEM

PARTNERSYSTEM

WEB SERVICES

SOAP

XML• Standard protocols andlanguages

• Agile infrastructures

Page 6: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

6

Principles

• Facilitate programmatic interactions of autonomoussystems (e.g., data-intensive, computationalresources) via resource virtualization, infrastructuresimplification and consolidation

• Web services: self-described software entities (atleast best possible description), that can bepublished, discovered, and invoked over thenetwork (using XML-based standard languages andprotocols)

• On demand computing through composition• Services are poised to be as ubiquitous as the

Internet (e.g., payroll, on-board systems, e-government, services at your computer)

©Boualem Benatallah, 2006

Page 7: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

7

Issues Relevant to Various Service LifeCycle Activities

Semantic InteroperabilitySOA solved low level interoperability but for programming by

composition to scale, services should be used with assistance fromproviders

Richer component model (possible interactions, OoS, data types)Various integration layers (e.g., data, process)

Aligning IT services with business services Correlation of higher level abstractions to lower-level system

observable events Continuous monitoring of resources and processes

Evolution and change managementContract violation, impact analysis and process migration

Page 8: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

8

Current Standards Maze

WS-Coordination

WS-Addressing

WS-Attachments

WS-Enumeration

WS-NotificationWS-Eventing

WS-Topics

WS-Transfer

WS-ReliableMessaging

WS-Reliability

WS-Acknowledegment

ebXML

WSCI

WSCDLBPEL4WS

BPML

WS-MetadataExchange

WS-PolicyFramework

WS-PolicyAssertionsWS-PolicyAttachment

XACMLWS-SecurityPolicy

OWL-S

SPML

WS-Provisioning

WSCL

WSDL

WS-Manageability

WS-ResourceWSDM

WS-BusinessActivityWS-Transaction

WS-AtomicTransactions

BTP

Cool! But,What

Standards Iuse?

We should integrate our systems using Web Service Technologies …

Manager

UDDI

WSRP

WS-InspectionWS-DiscoveryASAP

SOAP

SOAP MTOM

WS-Routing

WS-Referral

XrML

WS-Federation

WS-Security

WS-Trust

WS-SecureConversation

SAML

XKMSWS-NonRepudiation

WS-MessageData

WSXL

WS-CallBack

Too many, Overlap, Conflicts, Only few standards are used(WSDL, SOAP)

(See ``Interoperability Specifications’’, May 06, IEEE Computer, by. Motahari,Benatallah, Casati and Toumani) ©Boualem Benatallah, 2005

Page 9: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

9

Discovery

Contracts

Business process

Transactions

Choreography

Conversations

Nonfunctionaldescription

ServicedescriptionXML-basedmessaging

Network

UDDI

ebXMLCPA

BPEL4WS

WS-Transaction

WS-Coordination

CS-WS

WSEL

WSEL

SOAP

HTTP, FTP, SMTP, and others

ebXMLregistry

BPMLOWL-S service

modelBPML

BTP BTP

OWL-S servicemodel

OWL-S serviceprofile

OWL-S servicegrounding

WSCLWSCI

RDF

ebXMLBPSS

ebXMLCPP

ebXMLmessaging

WSDL-based Semantic-based ebXML-based

Source (Turning Software to a Service, M. Turner et al., IEEE Computer, Vol 36(10), 03)

Service Oriented Technologies - Layers

©Boualem Benatallah, 2006

Page 10: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

10

Systems Integration: B2B Integration Example

Receive PORequest

SelectSupplier

GenerateRFQ

SendRFQ

Select RFQResponse

SendPO

Close

Process

Send PO

Receive POAcknowledge

Receive POResponse

Send PO ResponseAcknowledge

Send POCustomer

Receive PO

Send POAcknowledge

Send POResponse

Receive PO ResponseAcknowledge

Send POSupplier

Public process(Standard)

Public process(Standard)

Receive PO

CheckCustomer

CheckCredit

CheckAvailability

Create SalesOrder

Send POResponse

Close

ProcessSales Order

Private process(Company-specific)

Private process(Company-specific)

PO

CRM

SCM

ERP

(Source: e-business Architectures and Standards, Anil L. Nori, Tutorial, VLDB’2002, HongKong, China)

Page 11: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

11

Workflow

Businessrules

Programs

Workflow

Businessrules

Programs

Content ofdocument

Policy

Messagedefinition

Business Protocol

Content ofdocument

Policy

Messagedefinition

Business Protocol

messages

Integration Layers

External interactions External interactionsInternal system Internal system

PeopleSoft

Legacyapplications

Ada

pter

Ada

pter

Database

SAP/R3

Business Partner 1 Business Partner 2

©Boualem Benatallah, 2006

Page 12: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

12

invoke

receive

receive

receive invoke

invoke?

?

Business Protocol Layer (Cont.)

©Boualem Benatallah, 2006

Page 13: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

13

Some Observations on IntegrationTechnologies

• Great deal at transport protocol level, process-basedorchesteraction, programing support for dynamic portbinding

• While standardisation makes interoperability easier, it doesnot remove the need for data transformation, protocoladaptation

• Services are designed to be open (possibly no preciseknowledge of the various data models and protocols ofclients)

• Data is organized by application, not by following agreedupon conceptual models

• Standardization of protocols at lower level and languagesfor higher level abstractions

©Boualem Benatallah, 2006

Page 14: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

14

ServiceMosaic Project: ServicesLifeCycle Intelligence

Modeling of business protocolsAlgebra for protocol models managementModel-driven and aspect-oriented approach to

support service adaptationModel-driven change impacts analysisProtocol discoveryQuery and visualization support for service

monitoring, property discovery andverification

Page 15: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

15

Conversations and businessprotocols

• protocols describe valid ordering of messages– stateful interaction– this must be done somehow, formally (best) or informally– coarse-grained

• complements interface definition and other specs(semantics)

suppliercustomer

1:requestQuote

2:orderGoods

4:makePayment

3:confirmOrder

copyright Springer-Verlag, 2004

Page 16: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

16

Protocol languages

invoke checkShipAvailable

invoke confirmOrderinvoke cancelOrder

receive requestQuote

reply requestQuote

receive orderGoods

receive makePayment

invoke orderShipment

receive confirmShipment

invoke checkShipAvailable

invoke confirmOrderinvoke cancelOrder

receive requestQuote

reply requestQuote

receive orderGoods

receive makePayment

invoke orderShipment

receive confirmShipment

Page 17: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

17

Protocols and choreographies

A: Protocol that a service obeys towhen interacting with a client

B: Protocol that a service obeys towhen interacting with its clients

C: a choreographyD: The protocol that a Business service obeysto when interacting with one or more clients

“Business”service

Page 18: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

18

Business Protocols : benefits ofexplicit representation

• And they are quite a lot!

- service development, management,evolution, binding

- Protocol-aware tools can make life easierfor developers

©Boualem Benatallah, 2006

Page 19: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

19

Development support

service skeleton

Protocol specs

protocolcompiler

serviceimplementation

add biz logic

top down

Protocol specs

protocolgenerator

serviceimplementation

bottom up

©Boualem Benatallah, 2006

Page 20: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

20

Generating composition skeletons

replyrequestQuote

send confirmOrdersend cancelOrder

receiverequestQuote

supplier

customer

requestQuote

orderGoods

confirmOrder receiveorderGoods

or cancelOrder

©Boualem Benatallah, 2006

Page 21: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

21

Middleware: routing, validation, logging

P1

P2, P3

P4, P5

conversationcontroller

object for P1

object for P2

object for P3

object for P4

object for P5

P1

P2

P3

P4

P5

servicerequestor

servicerequestor

servicerequestor

service provider

protocol defs

logs

Web service concepts, Architectures and Applications. Copyright Springer-Verlag, 2004

Avoid implementing exception handling logic

Page 22: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

22

Static and dynamic binding

supplierA

customer broker supplierB

supplierC

©Boualem Benatallah, 2006

Page 23: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

23

Versioning, evolution, compliance

version1.0

customer version1.1

XYZstandardspecs

©Boualem Benatallah, 2006

Page 24: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

24

Expressive power

• Services are designed independently of clients• Need to be (fairly) fully specified• Ordering is not enough.• Implicit (timed) activations, timeouts• Message content-based conditions, state

management– hiding details (multiple views)

• Transactional implications• Rightsizing is the key

Page 25: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

25

Business Protocols Modeling: EmbryonicModel

Amazon.comas a Web service

Start Search book

Book selection

Ordered Cancelled

ReturnedShipped

Completed

T1:Login

T2:SearchBook()

T4:SearchBook()

T3:AddToCart()

T11T5:RemovefromCart()

T6:OrderBook()

T8:CancelBookPurchase()

T9:ReturnBook()

T10

T7

©Boualem Benatallah, 2006

Page 26: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

26

Protocol models management

• Bring the benefits of abstractions to service-orientedsystems developers

• Analogy with data management: simple model (relational),declarative language (SQL) and algebra

• Operators to manipulate protocol models (e.g., identifyingsimilarities and differences, identify patterns, identifyrelationships)

• Semantics and operators defined based on labeledtransition systems

Page 27: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

27

Protocol models Management (cont.)

Page 28: Web Services: Life Cycle Intelligence1 Web Services: Life Cycle Intelligence A/Prof. Boualem Benatallah School of Computer Science and Engineering The University of New South Wales

28

Summary• Service oriented computing offers tremendous

opportunities for agile and Internet scale integration• Business process modeling, web services offer key

solutions to virtualization and high level orchestrationof business processes

• Business activity management techniques offer keysolutions to business process monitoring andmanagement

• Effective automation requires an integratedframework that offers lifecycle intelligence ! :conceptual modeling, algebra for analysis andmanipulation of process views, discovery anddebugging, model-driven development ofadaptors, simulation, service level-operationallevel mappings, UI models management andcontext support for services, …

©Boualem Benatallah, 2006