logging in or signing up WS CDL Junyo Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINTLite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 472 Category: Entertainment License: All Rights Reserved Like it (1) Dislike it (0) Added: November 22, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Web Services ChoreographyandProcess Algebra: Web Services Choreography and Process Algebra 29th April 2004 Steve Ross-Talbot Chief Scientist, Enigmatec Corporation Ltd Chair W3C Web Services Activity Co-chair W3C Web Services Choreography Agenda: Agenda Orchestration vs Choreography WS-BPEL WS-CDL Underpinnings Status Q&AOrchestration vs Choreography: Orchestration vs Choreography Consider a dance with more than one dancer. Each dancer has a set of steps that they will perform. They orchestrate their own steps because they are in complete control of their domain (their body). A choreographer ensures that the steps all of the dancers make is according to some overall scheme. We call this a choreography The dancers have a single view point of the dance. The choreography has a multi-party or global view point of the dance.Orchestration vs Choreography: Orchestration vs Choreography Orchestration is about describing and executing a single view point model. Choreography is about describing and guiding a global model. You can derive the single view point model from the global model by projecting based on participant.WS-BPEL and WS-CDL: WS-BPEL and WS-CDL WS-BPEL Orchestration implies a centralized control mechanism. WS-CDL Choreography has no centralized control. Instead control is shared between domains. Orchestration of Web Services: Orchestration of Web Services The Oasis WS-BPEL TC Summary: Orchestration of web services and recursive composition thereof. Style: Scoped programming language (BPEL) with behavioural interfaces (Abstract BPEL). Uses: Orchestration of Web Services in a single domain of control (i.e. order flow within institution). Status: Currently X issues to resolve and based on WSDL1.1 and some proprietary specs. Due to deliver Q4. Issues: Licensing. Based on some proprietary specificationsWS-BPEL: WS-BPEL Is a Web Service Runtime semantics Centralised orchestration Abstract Defines end-point protocols Executable Executes the necessary WSDL calls effecting message exchange between services Benefits Higher reuse of WSDL collateralWS-BPEL: WS-BPEL Sequence, Fork, Join, Parallel threads, Computation (Turing Complete)WS-BPEL - Problems: WS-BPEL - Problems Centralised execution Lack of formal semantics Non-scalable (requires the concept of dual connectivity) Non-collaborativeChoreographing Web Services: Choreographing Web Services W3C Web Services Choreography Working Group Summary: Describing peer to peer interaction in a global model by means of a CDL Style: Formalized description of external observable behavior across domains Use for: Modeling cross domain protocols, protocol enforcement, skeletal code generation (i.e. for FIX) Status: Requirements document formally published, Model Overview document published to mailing list. Due to deliver end 2004. What is a Choreography: What is a Choreography WS-Choreography concerns the collaboration protocols of cooperating Web Service participants WS act as peers WS interact in long-lived, stateful & coordinated fashion A WS-Choreography description is a multi-participant contract that describes, from a Global Viewpoint, the common observable behavior of the collaborating WS participants WS-CDL is a language in which such a contract is specified Standardization underway in the W3C Choreography WG Using a WS-CDL: Using a WS-CDL promote a common understanding between WS participants; automatically guarantee conformance; ensure interoperability; increase robustness; generate code skeletons.Benefits of a WS-CDL: Benefits of a WS-CDL more robust Web Services to be constructed; enable more effective interoperability of Web Services through behavioral multi-party contracts, which are choreography descriptions; reduce the cost of implementing Web Services by ensuring conformance to expected behaviour; increase the utility of Web Services as they will be able to be shown to meet contractual behavior.Overview of WS-CDL: Overview of WS-CDL Interactions Channels Participants Roles State WS-CDL Approach: WS-CDL Approach Simple contract-like mechanisms are exhibited in the literature for capturing Deadlock-freedom (Kobayashi, 99, 00) Liveness (Kobayashi, 01; Yoshida, et al, 02) Security (Abadi et al; Cardelli and Gordon; Berger, Honda, Yoshida) Resource management (Tofte; Kobayashi; Gordon and Dal Zillio; Yoshida, et al) A contract language that guaranteed even basic versions of these properties (at the compatibility level) then that would be a significant advance over the state of the art.WS-CDL Approach: WS-CDL Approach This work needs to be carried out using formal basis. To the extent possible, technical design deliberations can and should be a matter of calculation. Mobile process calculi provide a natural candidate.Why process calculi?: Why process calculi?Global Models: Global ModelsGlobal Models: Global ModelsGlobal Models: Global ModelsWS-CDL Global Models: WS-CDL Global Models A sequential process Client(open,close,request,reply) = open.request1.reply1.request2.reply2.close.0 WS-CDL Global Models: WS-CDL Global Models A repetitive process Client(open,close,request,reply) = open.request1.reply1.request2.reply2.close.Client(open,close,request,reply) WS-CDL Global Models: WS-CDL Global Models A process with choices to make IdleServer(o,req,rep,c) = o.BusyServer(o,req,rep,close) BusyServer(o,req,rep,c) = req.rep.BusyServer(o,req,rep,c) + c.IdleServer(o,req,rep,c)WS-CDL Global Model: WS-CDL Global Model Communication, Concurrency and Replication SYSTEM = (!Client | IdleServer) Clienti | IdleServer Clienti | BusyServer Clientj | IdleServer Clientj | BusyServer ….. When Clienti has started an exchange with IdleServer No other Client can then communicate with the server Until Clienti has finished and the server is once again IdleWS-CDL and the pi-calculus: WS-CDL and the pi-calculus Collapse send and receive into an interact on channelsWS-CDL and the pi-calculus: WS-CDL and the pi-calculus Static checking for livelock, deadlock and leaks Session types and causality Robust behavioral type system Session typesWS-CDL - Status: WS-CDL - Status Where are we today? Working Draft V2 Looking for comments Lots of work with vertical standards Looking to last call end Q404 WS-CDL Summary: WS-CDL Summary Global model Ensured conformance Description language Not executable Tools Generators for end points Advanced typing Status Moving for last call end of Q404 References: References WS-CDL Working Draft WS-CDL Overview BPEL4WS 1.1 Enigmatec You do not have the permission to view this presentation. In order to view it, please contact the author of the presentation.
WS CDL Junyo Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINTLite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 472 Category: Entertainment License: All Rights Reserved Like it (1) Dislike it (0) Added: November 22, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Web Services ChoreographyandProcess Algebra: Web Services Choreography and Process Algebra 29th April 2004 Steve Ross-Talbot Chief Scientist, Enigmatec Corporation Ltd Chair W3C Web Services Activity Co-chair W3C Web Services Choreography Agenda: Agenda Orchestration vs Choreography WS-BPEL WS-CDL Underpinnings Status Q&AOrchestration vs Choreography: Orchestration vs Choreography Consider a dance with more than one dancer. Each dancer has a set of steps that they will perform. They orchestrate their own steps because they are in complete control of their domain (their body). A choreographer ensures that the steps all of the dancers make is according to some overall scheme. We call this a choreography The dancers have a single view point of the dance. The choreography has a multi-party or global view point of the dance.Orchestration vs Choreography: Orchestration vs Choreography Orchestration is about describing and executing a single view point model. Choreography is about describing and guiding a global model. You can derive the single view point model from the global model by projecting based on participant.WS-BPEL and WS-CDL: WS-BPEL and WS-CDL WS-BPEL Orchestration implies a centralized control mechanism. WS-CDL Choreography has no centralized control. Instead control is shared between domains. Orchestration of Web Services: Orchestration of Web Services The Oasis WS-BPEL TC Summary: Orchestration of web services and recursive composition thereof. Style: Scoped programming language (BPEL) with behavioural interfaces (Abstract BPEL). Uses: Orchestration of Web Services in a single domain of control (i.e. order flow within institution). Status: Currently X issues to resolve and based on WSDL1.1 and some proprietary specs. Due to deliver Q4. Issues: Licensing. Based on some proprietary specificationsWS-BPEL: WS-BPEL Is a Web Service Runtime semantics Centralised orchestration Abstract Defines end-point protocols Executable Executes the necessary WSDL calls effecting message exchange between services Benefits Higher reuse of WSDL collateralWS-BPEL: WS-BPEL Sequence, Fork, Join, Parallel threads, Computation (Turing Complete)WS-BPEL - Problems: WS-BPEL - Problems Centralised execution Lack of formal semantics Non-scalable (requires the concept of dual connectivity) Non-collaborativeChoreographing Web Services: Choreographing Web Services W3C Web Services Choreography Working Group Summary: Describing peer to peer interaction in a global model by means of a CDL Style: Formalized description of external observable behavior across domains Use for: Modeling cross domain protocols, protocol enforcement, skeletal code generation (i.e. for FIX) Status: Requirements document formally published, Model Overview document published to mailing list. Due to deliver end 2004. What is a Choreography: What is a Choreography WS-Choreography concerns the collaboration protocols of cooperating Web Service participants WS act as peers WS interact in long-lived, stateful & coordinated fashion A WS-Choreography description is a multi-participant contract that describes, from a Global Viewpoint, the common observable behavior of the collaborating WS participants WS-CDL is a language in which such a contract is specified Standardization underway in the W3C Choreography WG Using a WS-CDL: Using a WS-CDL promote a common understanding between WS participants; automatically guarantee conformance; ensure interoperability; increase robustness; generate code skeletons.Benefits of a WS-CDL: Benefits of a WS-CDL more robust Web Services to be constructed; enable more effective interoperability of Web Services through behavioral multi-party contracts, which are choreography descriptions; reduce the cost of implementing Web Services by ensuring conformance to expected behaviour; increase the utility of Web Services as they will be able to be shown to meet contractual behavior.Overview of WS-CDL: Overview of WS-CDL Interactions Channels Participants Roles State WS-CDL Approach: WS-CDL Approach Simple contract-like mechanisms are exhibited in the literature for capturing Deadlock-freedom (Kobayashi, 99, 00) Liveness (Kobayashi, 01; Yoshida, et al, 02) Security (Abadi et al; Cardelli and Gordon; Berger, Honda, Yoshida) Resource management (Tofte; Kobayashi; Gordon and Dal Zillio; Yoshida, et al) A contract language that guaranteed even basic versions of these properties (at the compatibility level) then that would be a significant advance over the state of the art.WS-CDL Approach: WS-CDL Approach This work needs to be carried out using formal basis. To the extent possible, technical design deliberations can and should be a matter of calculation. Mobile process calculi provide a natural candidate.Why process calculi?: Why process calculi?Global Models: Global ModelsGlobal Models: Global ModelsGlobal Models: Global ModelsWS-CDL Global Models: WS-CDL Global Models A sequential process Client(open,close,request,reply) = open.request1.reply1.request2.reply2.close.0 WS-CDL Global Models: WS-CDL Global Models A repetitive process Client(open,close,request,reply) = open.request1.reply1.request2.reply2.close.Client(open,close,request,reply) WS-CDL Global Models: WS-CDL Global Models A process with choices to make IdleServer(o,req,rep,c) = o.BusyServer(o,req,rep,close) BusyServer(o,req,rep,c) = req.rep.BusyServer(o,req,rep,c) + c.IdleServer(o,req,rep,c)WS-CDL Global Model: WS-CDL Global Model Communication, Concurrency and Replication SYSTEM = (!Client | IdleServer) Clienti | IdleServer Clienti | BusyServer Clientj | IdleServer Clientj | BusyServer ….. When Clienti has started an exchange with IdleServer No other Client can then communicate with the server Until Clienti has finished and the server is once again IdleWS-CDL and the pi-calculus: WS-CDL and the pi-calculus Collapse send and receive into an interact on channelsWS-CDL and the pi-calculus: WS-CDL and the pi-calculus Static checking for livelock, deadlock and leaks Session types and causality Robust behavioral type system Session typesWS-CDL - Status: WS-CDL - Status Where are we today? Working Draft V2 Looking for comments Lots of work with vertical standards Looking to last call end Q404 WS-CDL Summary: WS-CDL Summary Global model Ensured conformance Description language Not executable Tools Generators for end points Advanced typing Status Moving for last call end of Q404 References: References WS-CDL Working Draft WS-CDL Overview BPEL4WS 1.1 Enigmatec