Download presentation
Presentation is loading. Please wait.
Published byCorey Black Modified over 9 years ago
1
Governance Current Technology Support Rodrigo Paes
2
© LES/PUC-Rio Agenda Goals Web Services –What is? –Why? WSCI BPEL4WS WS-Coordination What’s next?
3
© LES/PUC-Rio Current Scenario WEB is becoming a WEB of Services –Nasdaq –Google –Amazon –Expedia –Continental Airlines –SolidWorks (CAD) 1 –South West Airlines and Dolar Rent a Car 1 1 Metz, Cade - Testing the Waters, November 2001. http://www.pcmag.com/article2/0,1895,154693,00.asp
4
© LES/PUC-Rio There is a need for Composing them Coordinating them Governing them
5
© LES/PUC-Rio Goal There are already proposed solutions for web services for dealing with such problems We have been working on our in-house solution: XMLaw What are the relationship between them?
6
Web Services Standards and Technology Trends
7
© LES/PUC-Rio Definitions A piece of business logic accessible via the Internet using open standards – Microsoft Encapsulated, loosely coupled, contracted software functions, offered via standard protocols over the Web - DestiCorp Loosely coupled software components that interact with one another dynamically via standard Internet technologies – Gartner A software identified by a URI, whose interfaces and binding are capable of being defined, described, and discovered by XML artifacts and supports direct interactions with other software applications using XML-based messages vi Internet-based protocols – W3C
8
© LES/PUC-Rio Technology Stack W3C. Web Services Overview – Design Issues. http://www.w3.org/DesignIssues/WebServices.html
9
© LES/PUC-Rio Communication Simple Object Access Protocol – SOAP –Defines an envelop for transmitting messages and rules for representing remote procedure calls –Its is character based rather than binary based It is inefficient for many applications In some cases the SOAP header is even bigger than the payload size. –Easier to secure. Ex.: encrypt and decrypt –Its is a stateless protocol Conversational identifiers are left to the application
10
© LES/PUC-Rio Description Web Services Description Language – WSDL –Data types –Input and output –Operations ( calculateMatrix, getQuote …) –Network Address –Protocol bindings
11
© LES/PUC-Rio Discovery Universal Description, Discovery, and Integration – UDDI –Mechanism for registering and locating Web Services –It is a web service itself –Provides White pages –Entries are found by name Yellow pages –Entries are found by services and characteristics Green pages –Information about how other business can conduct electronic business with them –There is no support for semantic search Its is based on keywords
12
© LES/PUC-Rio The general architecture Service Requestor Service Registry Service Provider Publish (WSDL) Find (UDDI) Bind (SOAP/HTTP)
13
Composition and Coordination
14
© LES/PUC-Rio Definitions Composition –Refers to the building, from a set of web services, of something at a higher level, typically itself exposed as a larger web service. Coordination –Coordination is what fills the gap between autonomously acting agents and the problems they are collectively solving 1. –“Individuals efforts toward achieving common and explicitly recognized goals; and the integration or linking together of different parts of an organization to accomplish a collective set of tasks” 2. 1 G. Agha, N. Jamali, and C. Varela. Agent Naming and Coordination: Actor Based Models and Infrastructures. Coordination of Internet Agents, chapter 9, pages 225-248. Springer-Verlag, 2001. 2 Kraut, R. E. and Streeter, L. A. 1995. Coordination in software development. Commun. ACM 38, 3 (Mar. 1995), 69-81.
15
© LES/PUC-Rio Composition Some problems –Security –Transactions –Performance
16
© LES/PUC-Rio Coordination Some approaches –WSCI –BPEL4WS –WS-Coordination –ebXML (not presented in this talking)
17
© LES/PUC-Rio Web Services Choreography Interface - WSCI Describes the flow of messages exchanged by a Web Service that is interacting with other services. The problem: –The current Web Service stack does not define relationships among atomic operations. –WSDL Operations are atomic –Need for addressing questions such as: Can messages be sent and/or received in any order? What rules govern sequencing of messages? Is there any relation among any incoming and/or outgoing messages? Is there a "start" and an "end" of a given sequence? Can a given sequence be partially "undone"? Can a global view of the overall exchange of messages be drawn? W3C. Web Service Choreography Interface 1.0 - http://www.w3.org/TR/wsci/
18
© LES/PUC-Rio WSCI Features –Message choreography Order Rules Start and End –Transactions and compensations Describes which operations are performed in a transactional way –Exception handling –Thread management Describes if and how a Web Service is capable of managing multiple conversations –Properties and Selectors Describes the elements that influence the observable behavior of a Web Service, such as alternatives based on the runtime values of some parts of the messages. –Connectors How the operations performed by different Web Services acting in the same message exchange actually link together. –Operational context how the same Web Service behaves in the context of different message exchanges –Dynamic participation how the identity of the target service is dynamically selected, such as message parts
19
© LES/PUC-Rio WSCI Features –It is not executable. –It describes the observable behavior of a service and the rules for interacting with the service from the outside Architecture
20
© LES/PUC-Rio Simple Example Message order <process name = "PlanAndBookTrip" instantiation = "message"> <action name = "ReceiveTripOrder" role = "tns:TravelAgent" operation = "tns:TAtoTraveler/OrderTrip"> <action name = "ReceiveConfirmation" role = "tns:TravelAgent" operation = "tns:TAtoTraveler/bookTickets"> <action name = "SendStatement" role = "tns:TravelAgent" operation = "tns:TAtoTraveler/SendStatement"/>
21
© LES/PUC-Rio Comments Specification is useful for understanding how to interact to a service. This language may be useful as input for some monitoring architecture It does not represent the neither the idea of commitments, obligations and contracts
22
© LES/PUC-Rio Business Process Execution Language For Web Services - BPEL4WS
23
© LES/PUC-Rio BPEL4WS Example
24
© LES/PUC-Rio BPEL4WS Example <to variable="shippingRequest" part="customerInfo"/> <invoke partnerLink="shipping" portType="lns:shippingPT" operation="requestShipping" inputVariable="shippingRequest" outputVariable="shippingInfo"> …
25
© LES/PUC-Rio BPEL4WS Comments –It works like a programming language for coordinate services –It have to be implemented by some kind of coordinator
26
© LES/PUC-Rio WS-Coordination Defines a framework for coordinating activities using a coordinator and set of coordination protocols. The WS-Coordination interface defines a context within which coordination is to take place and the specific items of data that are to be exchanged in order for transactions to complete successfully as part of an overall business process, such as one defined in a Business Process Execution Language (BPEL) program.
27
© LES/PUC-Rio WS-Coordination It does not define the coordination protocols themselves. Specification for a “Generic Coordinator”
28
© LES/PUC-Rio Summary Web-services - Pros –Seams to be becoming the very next industrial trend –There are already many big players IBM, Sun, Microsoft, BEA … –Many tools are available –The above makes web services a prominent technology to experiment the governance in practical problems
29
© LES/PUC-Rio Summary Web Services - Cons –Agents provide a richer interaction model ACLs – performatives have an associated semantic –Ex1: »(door, close) »Inform (door, close) »Request (door, close) »Propose (door, close) –Ex2: »A “refuse” does not make sense without a previously sent “request”, “propose”,… »An “inform” means the agent is going to review its beliefs.
30
© LES/PUC-Rio Summary Mix web-services and agents interaction models together However, its not clear to me: –Agent-Agent Interaction –Agent-Web Service provider interaction –However, why ACL once web-services do not understand it? From my point of view –It enables agent and web-services integration using a wrapper (bacalhau) –Allowing agents communicate among themselves using ACL Web Service Client Web Service Agent Gateway Agent Singh, Munindar P.; Huhns, Michael N.; Service-Oriented Computing – semantics, process, agents. Ed. John & Wiley Sons, 2005
31
© LES/PUC-Rio Next Steps Deliver a first version of TAC implementation using Web Services –Goal: Get practical feeling on web services Evaluate BPEL, WSCI or WS-Coordinator over the TAC –Goal: Get practical feeling Point out difficulties Decide whether continue with web services Unify the efforts: build a platform for experimenting the ideas discussed in the seminar. –Reputation –Semantic –Monitoring –Fault-Tolerance –Abstract Laws
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.