Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ●...

32
Service Coordination Protocols Noodzaak (Eddy) Coordination protocols (Eddy) Infra-structuur (Eddy) WS-Coordination (Eddy) WS-Transaction (Pepijn) Rosetta-Net (Pepijn) overige standaarden (Pepijn)

Transcript of Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ●...

Page 1: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Service Coordination Protocols

● Noodzaak (Eddy)● Coordination protocols (Eddy)● Infra-structuur (Eddy)● WS-Coordination (Eddy)● WS-Transaction (Pepijn)● Rosetta-Net (Pepijn)● overige standaarden (Pepijn)

Page 2: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Service Coordination Protocols

● Remote Procedure Calls: simpele, 'one-call-at-a-time' interactie tussen client en server

● Maar:– additionele protocollen (two-phase

commit)– interactie garantie– infra-structuur met nieuwe abstracties

● Concept

Page 3: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Coordination protocols

●Identificatie●Verzoek●Bestelling●Betalen

Page 4: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Coordination protocols

● Implicaties intern perspectief– afhandelen juiste volgorde– client moet context informatie opslaan (het

ordernummer)● Implicaties extern perspectief

– afhandelen juiste volgorde– doorvoeren van de betaling

Page 5: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Coordination protocols

STATE DIAGRAMS

Page 6: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Coordination protocols

● Multi party conversation

● Roldefinitie● Chaos● Activity diagrams

Page 7: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Coordination protocols

● Design time discovery● Dynamic binding● Informatie verbergen● Role specific views

Doel

Page 8: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Coordinatie protocols

Verticale- & horizontale protocollen

Page 9: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Coordinatie protocollen

● Verticaal– De manier waarop de

conversatie wordt gevoerd.

– Documenten– Formaat documenten– Semantiek

● Horizontaal– Onafhankelijk van

applicatie– manier van

communiceren op hoog abstractieniveau

– non functionals– garanderen executie

van protocols

Page 10: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Infrastructuur

● Conversation controllers: – Conversation routing: toekennen van berichten aan

objecten.– protocol compliance verification: controleert of alles

volgens protocol verloopt.

Page 11: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Infrastructuur

Page 12: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Infrastructuur

Page 13: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

WS-coordination

● Infrastructuur voor coordinatie protocollen● Meta-specificatie, mbv standaarden

– unieke identificatie– informeren protocol handler

Page 14: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

WS-coordination

Page 15: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

WS-coordination

● Drie abstracties:– coordination protocol– coordination type– coordination context

● Drie vormen van interactie:– activeren– registreren– protocol specific interactions

Page 16: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

WS-coordination

Page 17: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

WS-coordination

Page 18: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

WS-coordination

Page 19: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

WS Transactions

● Transactions● Transactions in Web Services

– Database transactions– Compensation mechanisms

● Relatie met WS-Coordination

Page 20: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

WS Transactions (2)

● Twee soorten Transactions– Atomic Transactions– Business Activities

● Korte termijn (atomair)● Lange termijn (long-running)

Page 21: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Atomic Transactions

● Vijf protocollen– Completion– 2PC– PhaseZero– OutcomeNotification– CompleteWithAck

● Poort Specificaties:– CompletionParticipantPortType & CompletionCoordinatorPortType– CompletionWithAckParticipantPortType & CompletionWithAckCoordinatorPortType– PhaseZeroParticipantPortType & PhaseZeroCoordinatorPortType– 2PCParticipantPortType & 2PCCoordinatorPortType– OutcomeNotificationParticipantPortType &

OutcomeNotificationCoordinatorPortType

Page 22: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Voorbeeld

Page 23: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Business Activities● BusinessAgreement protocol

– Exited, Completed, Faulted– Close, Complete, Compensate, Forget

● BusinessAgreementWithComplete protocol– Vergelijkbaar– Verschil

● Poort Specificaties– BusinessAgreementParticipantPortType &

BusinessAgreementCoordinatorPortType– BusinessAgreementWithCompleteParticipantPortType &

BusinessAgreementWithCompleteCoordinatorPortType

Page 24: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Voorbeeld

Page 25: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

RosettaNet

● Standaardisatie– Business processes– Data format

● RosettaNet Business Dictionary● RosettaNet Technical Dictionary

– Messaging services

Page 26: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Partner Interface Process (PIP) Specifications

● Technical Dictionary● Message Guideline● Business Data, twee typen

– Business Action– Business Signal

Page 27: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Het ontwikkelen van een PIP

● RosettaNet maakt gebruik van vier stappen– Develop Business Model– Re-engineer– Create PIP Blueprint– Create PIP Protocol

Page 28: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

PIP Views

● Business Operational view– Action layer

● Functional Service view– Transactions layer

● Implementation Framework view– Service layer

Page 29: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Clusters

● Cluster 0: Product Information● Cluster 1: Partner Product and Service Review● Cluster 2: Product Information● Cluster 3: Order Management● Cluster 4: Inventory Management● Cluster 5: Marketing Information Management● Cluster 6: Service and Support● Cluster 7: Manufacturing

Page 30: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

RosettaNet Implementation Framework

● Messaging● Transport

– Protocol onafhankelijk– HTTP, SMTP

● Security

Page 31: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Overige Standaarden voor Coordination Protocols

● XML Common Business Libary (xCBL)– XML, EDI– Semantiek (rollen, constraints)

● Electronic Business Using eXtensible Markup Language– Framework voor xCBL

● Web Service Choreography Interface (WSCI)

Page 32: Service Coordination Protocols ● Noodzaak (Eddy) ● Coordination protocols (Eddy) ● Infra-structuur (Eddy) ● WS-Coordination (Eddy) ● WS-Transaction (Pepijn)

Web Service Choreography Interface (WSCI)

● Exception Handling● Transactions● Correlators● Time Constraints