Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
1
Web Services: Life CycleIntelligence
A/Prof. Boualem Benatallah
School of Computer Science and EngineeringThe University of New South Wales (UNSW)
©Boualem Benatallah, 2006
2
Agenda
• Service Oriented Computing:principles and issues
• ServiceMosaic Project: Service Life-cycle Intelligence
©Boualem Benatallah, 2006
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
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
5
Service Oriented Architectures (SOA)
J2EE™APPLICATION
LEGACYSYSTEMS .NET™
APPLICATION
PARTNERSYSTEM
PARTNERSYSTEM
WEB SERVICES
SOAP
XML• Standard protocols andlanguages
• Agile infrastructures
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
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
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
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
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)
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
12
invoke
receive
receive
receive invoke
invoke?
?
Business Protocol Layer (Cont.)
©Boualem Benatallah, 2006
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
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
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
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
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
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
19
Development support
service skeleton
Protocol specs
protocolcompiler
serviceimplementation
add biz logic
top down
Protocol specs
protocolgenerator
serviceimplementation
bottom up
©Boualem Benatallah, 2006
20
Generating composition skeletons
replyrequestQuote
send confirmOrdersend cancelOrder
receiverequestQuote
supplier
customer
requestQuote
orderGoods
confirmOrder receiveorderGoods
or cancelOrder
©Boualem Benatallah, 2006
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
22
Static and dynamic binding
supplierA
customer broker supplierB
supplierC
©Boualem Benatallah, 2006
23
Versioning, evolution, compliance
version1.0
customer version1.1
XYZstandardspecs
©Boualem Benatallah, 2006
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
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
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
27
Protocol models Management (cont.)
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