Presentation is loading. Please wait.

Presentation is loading. Please wait.

Π 4 Technologies Building distributed systems using WS-CDL 10th June 2007 Steve Ross-Talbot Chair Pi4 Technologies Foundation CTO Hattrick Software Ltd.

Similar presentations


Presentation on theme: "Π 4 Technologies Building distributed systems using WS-CDL 10th June 2007 Steve Ross-Talbot Chair Pi4 Technologies Foundation CTO Hattrick Software Ltd."— Presentation transcript:

1 π 4 Technologies Building distributed systems using WS-CDL 10th June 2007 Steve Ross-Talbot Chair Pi4 Technologies Foundation CTO Hattrick Software Ltd Chair W3C Web Services Choreography WG Thanks to Pi4 Technologies Foundation Ltd (www.pi4tech.com)www.pi4tech.com Hattrick Software Ltd (www.hattricksoftware.com)www.hattricksoftware.com World Wide Web Consortium (Choreography Working Group)Choreography Working Group

2 π 4 Technologies Agenda Background – π 4 Technologies Foundation – Hattrick Software Ltd WS-CDL – Simple example – Case study Research

3 π 4 Technologies Background

4 π 4 Technologies π 4 Technologies Foundation Founded in November 2005 Kohei Honda, Nobuko Yoshida, Marco Carbone, Robin Milner, Steve Ross-Talbot, Gary Brown Enable collaborative research between industry and academia in applying formalisms to distributed systems development

5 π 4 Technologies π 4 Technologies Foundation Bi-directional (open format for collaboration) –Real world examples -> academia –Academia research -> industry Forums for discussion –www.pi4tech.orgwww.pi4tech.org Open source environment for research and development. (Apache 2.0) –CDL toolsuite –Advanced type system

6 π 4 Technologies π 4 Technologies Foundation Results so far: –CDL tool suite - eclipse-based community edition Modeling editor –Generation to wsdl, java, ws-bpel –Export to html, bpmn, ws-cdl, uml Scenarios –Editor –Validation –Vertical standards use (FpML, TWIST, ISO WG4) Modeling editor with wsdl, html, bpmn, ws-cdl and uml Scenrios editor and validation Complements existing vertical standards packs –Static »Document, Validated example message, XMLSchema, Example scenarios –Dynamic »Document, Validated example scenarios, WS-CDL description

7 π 4 Technologies π 4 Technologies Foundation An example in CDM

8 π 4 Technologies π 4 Technologies Foundation Exported to BPMN

9 π 4 Technologies π 4 Technologies Foundation Exported to HTML

10 π 4 Technologies π 4 Technologies Foundation Exported to HTML

11 π 4 Technologies π 4 Technologies Foundation Exported to CDL

12 π 4 Technologies π 4 Technologies Foundation Exported to CDL

13 π 4 Technologies π 4 Technologies Foundation Support for scenarios validated against the choreography

14 π 4 Technologies Hattrick Software Ltd Commercial entity charged with solving the problems of automation of OTC Derivatives Trading. –Long lived, complex peered processes in which parties may change roles –ClearGate generic WS-CDL-based protocol enforcer/monitor

15 π 4 Technologies WS-CDL

16 π 4 Technologies WS-CDL A language to describe the collaborative external observable behavior of a set of peered systems/services/applications as an ordered set of interactions over one or more logical channels that connect them.

17 π 4 Technologies Simple example BuyerSeller getQuote quoteResponse < 1000 units BuyerSeller getQuote quoteRejected >= 1000 units x

18 π 4 Technologies Simple example

19 π 4 Technologies Roles

20 π 4 Technologies Relationships and Participants

21 π 4 Technologies Channels and Info types

22 π 4 Technologies Bindings

23 π 4 Technologies Variables

24 π 4 Technologies Interactions

25 π 4 Technologies Choice

26 π 4 Technologies Workunits

27 π 4 Technologies Workunits

28 π 4 Technologies Workunits This is what we used

29 π 4 Technologies Workunits This is what we provide in the Pi4Tech tools for workunits

30 π 4 Technologies Theory Global Calculus –Distillation of WS-CDL –Reduction rules, etc End point Calculus –Correspondance to Global Calculus –Reduction riles, etc GC EP r1 EP r2 EP rn End Point Projection

31 π 4 Technologies Theory

32 π 4 Technologies Theory

33 π 4 Technologies WS-CDL Benefits A complete and unambiguous description [of a distributed system] of how peered roles or participants should interact and the order in which these interactions should take place. Enables code generation for a distrbuted system (end point projections) and guarantees interoperability of that system by design. Enables us to ask questions of a system so described: –Is it free from deadlocks, livelocks and races?

34 π 4 Technologies Case Study FpML –Financial Products Markup Language –Policed by ISDA FpML today is –A set of documents that describe the structure of how to encode financial products in XML –XMLSchema to enable validation of correct message formats and a set of example messages –There are a set of sequence diagrams to govern when to send what to whom

35 π 4 Technologies Why WS-CDL? Consider the following: –Three companies wish to embark on a common business process. They are PartyA, PartyB and Confirmer. –PartyA: Is a seller selling some commodity –PartyB: Is a buyer buying some commodity –Confirmer: Acts as a central/brokered matching service that both PartyA and PartyB use to ensure that the contract between them matches (is valid). Confirming is legally binding.

36 π 4 Technologies Why WS-CDL? This is a distributed system in which no one company has dominion over any other. PartyA, PartyB and Confirmer are all peers. PartyA, PartyB and Confirmer could be different parts of the same company or different companies. PartyA, PartyB and Confirmer need to interact to progress some common goal such as buying and selling some goods.

37 π 4 Technologies Why WS-CDL? PartyAPartyB Confirmer 1 Confirm Confirmed

38 π 4 Technologies Why WS-CDL? How we do this today using older technology: –XMLSchema, UML Activity Models, Sequence Diagrams, etc … How we do this with WS-CDL: –XML Schema, WS-CDL description, Scenarios/Sequence Diagrams, multiple formats for review

39 π 4 Technologies Today XMLSchema for data formats

40 π 4 Technologies Today

41 π 4 Technologies Today

42 π 4 Technologies Today

43 π 4 Technologies Today

44 π 4 Technologies Using WS-CDL Choreography description: Parallel { { // PartyA thread RequestTradeConfirmation [PartyA2Confirmer] RequestTradeMatch [Confirmer2Matcher] } // PartyA thread { // PartyB thread RequestTradeConfirmation [PartyB2Confirmer] RequestTradeMatch [Confirmer2Matcher] } ……. }

45 π 4 Technologies Using WS-CDL While (not inConfirm) { Choice { { // ---- Modification by PartyA ModifyTradeConfirmation [PartyA2Confirmer] ModifyTradeMatch [Confirmer2Matcher] } { // ---- Modification by PartyB ModifyTradeConfirmation [PartyB2Confirmer] ModifyTradeMatch [Confirmer2Matcher] } ……… }

46 π 4 Technologies Using WS-CDL Choice { …… Sequence { // ---- Confirmation process Choice { Sequence { // ---- TradeMatched ---- TradeMatched [Matcher2Confirmer] Parallel { { TradeMatched [Confirmer2PartyA] } { TradeMatched [Confirmer2PartyB] } } ConfirmTrade [PartyA2Confirmer] Parallel { { TradeConfirmed [Confirmer2PartyA] } } ….. } // End Choice } // End Sequence }

47 π 4 Technologies Using WS-CDL Choice { …… { // ---- TradeMismatched ---- TradeMismatched [Matcher2Confirmer] Parallel { { TradeMismatched [Confirmer2Alleger] } { TradeMismatched [Confirmer2Acceptor] } } { // Alleger cancels CancelTradeConfirmation [Alleger2Confirmer] CancelTradeMatch [Confirmer2Matcher] Parallel { { ConfirmationCancelled [Confirmer2Alleger]} { ConfirmationCancelled [Confirmer2Acceptor]} } ….. // same but other way around } // End Choice

48 π 4 Technologies Using WS-CDL

49 π 4 Technologies Question Trading System Trading System Confirmation System Matching System RequestTradeConfirmation RequestTradeMatch RequestTradeConfirmation ModifyradeConfirmation ModifyTradeMatch

50 π 4 Technologies Question Trading System Trading System Confirmation System Matching System RequestTradeConfirmation RequestTradeMatch RequestTradeConfirmation ModifyradeConfirmation ModifyTradeMatch Is this valid against our model?

51 π 4 Technologies Question Trading System Trading System Confirmation System Matching System RequestTradeConfirmation RequestTradeMatch RequestTradeConfirmation ModifyradeConfirmation ModifyTradeMatch Trade 99 Trade ABC Session Joining?

52 π 4 Technologies Completeness Sequence diagrams do not capture everything. WS-CDL does. It is unambiguous and precise.

53 π 4 Technologies Research

54 π 4 Technologies Future Directions WS-CDL 2 –Added participant instances, notifications, semantic annotations –Type system implementation Carbone et al Scribble - language for multicore, multi-process communication-based programming –Honda et al Two research project proposals –COWS: Contract Oriented Web Services –ModelWeb: Model-Driven Engineering of Policy- and Choreography- Based Web Services

55 π 4 Technologies Questions


Download ppt "Π 4 Technologies Building distributed systems using WS-CDL 10th June 2007 Steve Ross-Talbot Chair Pi4 Technologies Foundation CTO Hattrick Software Ltd."

Similar presentations


Ads by Google