1 / 21

an Extension to the WS-BusinessActivity Specification

Hannes Erven, Georg Hicker, Christian Huemer and Marco Zapletal. The WS-BusinessActivity–Initiator Protocol:. an Extension to the WS-BusinessActivity Specification. ICWS 2007, 11.07.2007. Outline. Setting A close look at WS-BusinessActivity General overview Shortcomings

marie
Download Presentation

an Extension to the WS-BusinessActivity Specification

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Hannes Erven, Georg Hicker, Christian Huemer and Marco Zapletal The WS-BusinessActivity–Initiator Protocol: an Extension to the WS-BusinessActivity Specification ICWS 2007, 11.07.2007

  2. Outline • Setting • A close look at WS-BusinessActivity • General overview • Shortcomings • Developing WS-BusinessActivity-Initiator • Problems • Solutions • Operations • Example • Summary

  3. Components Composite Choreography Protocols Atomic Quality of Service Reliable Messaging Security Discovery, Negotiation Description Interface + Bindings Policy Messaging XML non-XML Transport Transports [cf. Weerawarana et al 2005: „Web Services Platform Architecture“] Web Service Stack Transactions

  4. WS-AtomicTransaction 2-Phase-Commit Protocol Completion Protocol Web Services Transactions WS-Coordination Activation Registration WS-BusinessActivity BA w/ Coordinator Completion BA w/ Participant Completion

  5. WS-BusinessActivity • Suitable for long-running business activities • Relaxed ACID-properties • Locking of resources is NOT required • Two different protocols • BA with Coordinator Completion • Coordinator manages participants and tells them to start working • BA with Participant Completion • Participant decides on its own when to start work • Different outcome types

  6. Apache Kandula • Kandula is an Open Source project of theApache Software Foundation • Hosted by the Apache Web Services Project • Run by an established community • First publicly available implementation of • WS-Coordination • WS-AtomicTransaction • Original Task: a WS-BusinessActivity implementation

  7. Business Logic defined by WS-BA Participant 1 Business Logic Coordinator Participant 2 Participant n Business Logic WS-BusinessActivity • Plain WS-BA Workflow engine Business Logic • Criticism on WS-BA • Integration only with complex workflow engines • Protocol’s design violates major software development principles • All roles must expose Web Services to the public

  8. Business Logic defined by WS-BA Participant 1 Business Logic Coordinator Participant 2 Participant n Business Logic defined by WS-BA-I Initiator WS-BusinessActivity-Initiator • Extended WS-BA • Plain WS-BA Business Logic • Contribution • Separation of Concerns • Security • Trusted Third Parties Concept • Application Range extended to “end-user software” (desktop, mobile)

  9. defined by WS-BA-I Coordinator Initiator Identified problems • Participant identification • Mapping business partners to participants • Extending application range • No need for WS on Initiator • Simple pull-based protocol • Support for • atomic and mixed outcome type • participant and coordinator completion protocols • nested transactions

  10. defined by WS-BA-I Coordinator Initiator WS-BusinessActivity-Initiator • The protocol‘s operations for both outcome types • getCoordinationContextWithMatchcode • listParticipants • completeParticipants (CoordinatorCompletion only) • … for atomic outcome type • cancelOrCompensateAllParticipants • closeAllParticipants • … for mixed outcome type • cancelParticipants • closeParticipants • compensateParticipants

  11. defined by WS-BA Participant 1 Coordinator Participant 2 Participant n WS-BA State Machine • WS-BA with Participant Completion • WS-BA with Coordinator Completion

  12. Example • Participant 1: WS-BA with Participant Completion Active • Participant 2: WS-BA with Coordinator Completion Active

  13. Completed Example • Participant 1: WS-BA with Participant Completion Active Completed • Participant 2: WS-BA with Coordinator Completion Active

  14. Active Completed tellComplete Example • Participant 1: WS-BA with Participant Completion Completed • Participant 2: WS-BA with Coordinator Completion Active Completing Complete

  15. Active Active Completed Completed tellComplete Completed Example • Participant 1: WS-BA with Participant Completion • Participant 2: WS-BA with Coordinator Completion Completing Completed Complete

  16. Active Active Completing Completed Completed tellComplete tellCompensate tellClose Completed Close Example • Participant 1: WS-BA with Participant Completion • Participant 2: WS-BA with Coordinator Completion Closing Completed Complete

  17. Active Active Completing Completed Completed Completed tellComplete tellCompensate tellClose Closed Completed Close Example • Participant 1: WS-BA with Participant Completion • Participant 2: WS-BA with Coordinator Completion Closing Ended Complete

  18. Active Active Completing Completed Closing Completed Compensate tellComplete tellCompensate tellClose Closed Completed Close Example • Participant 1: WS-BA with Participant Completion Completed Compensating • Participant 2: WS-BA with Coordinator Completion Ended Complete

  19. Active Active Completing Completed Completed Closing Completed Compensated Compensate tellComplete tellCompensate tellClose Closed Completed Close Example • Participant 1: WS-BA with Participant Completion Ended Compensating • Participant 2: WS-BA with Coordinator Completion Ended Complete

  20. Summary • Original Task • WS-BA Implementation for Apache Kandula • Encountered Problem • No clear separation between business logic & coordinator in WS-BA • Proposed Solution • Separation of Initiator & Coordinator • Standardized Interface between Initiator & Coordinator • Delivered Result • Specification of the WS-BA-I protocol in WSDL • Implementation of WS-BA & WS-BA-I for Apache Kandula

  21. Hannes Erven, Georg Hicker, Christian Huemer and Marco Zapletal The WS-BusinessActivity–Initiator Protocol: Questions to an Extension to the WS-BusinessActivity Specification ICWS 2007, 11.07.2007

More Related