210 likes | 377 Views
Peer-to-Peer Business Communities: Mapping Public Choreography Protocols to Individual Implementation Mechanisms. Adomas Svirskas with Bob Roberts & Michael Wilson 28 February 2006, San Sebastian, Spain. Agenda. Target Web Based Communities Service Oriented Architecture
E N D
Peer-to-Peer Business Communities:Mapping Public Choreography Protocols to Individual Implementation Mechanisms Adomas Svirskas with Bob Roberts & Michael Wilson 28 February 2006, San Sebastian, Spain
Agenda • Target Web Based Communities • Service Oriented Architecture • Business Protocols and Service Choreography • Mapping to the Implementation Mechanisms
Target Web Based Communities • Communities of peers, as opposed to the master-slave model • Communities requiring rather formal rules for their interaction • Business • Government • Public sector • Mix of the above • Communities of changing rules
The Enabler - SOA • Service Oriented Architecture: • Services represent what businesses do • Services share only common message format, which allows them to be independent (loosely coupled) and reusable • These services communicate according to the standards – Web Services, WS-*, WS-I, etc. • Service Oriented Architecture (SOA) is maturing: • Business take-up is increasing • Technical basis is strengthening
SOA/WS standards (just a few) BPEL4WS, WS-CDL Service Composition Security Reliable Messaging Transactions Composable Service Assurances XSD, WSDL, UDDI, Policy, Metadata Description XML, SOAP, Addressing Messaging HTTP, HTTPS, SMTP Transports Company Agreements, W3C OASIS W3C/OASIS W3C IETF
The need for business protocols • Disparate services alone do not solve the problem – they can cause chaos if used without an order • In order to accomplish a common meaningful goal, the services should be used according to the business protocols • The protocols represent the practical side of the business models • They specify business message exchanges between the peers – business partners
Service Choreography [5] • Describes business protocols from the “global” point of view, i.e. commonly agreed rules come first • It is a behavioral contract language for distributed systems of independent peers • Is enacted individually by the peers, without any intermediary • Is a declarative, non-procedural business collaboration backbone
Svc. Choreography Initiatives • Common protocol (agree on the protocol in advance then follow it) based • ebXML Business Process Specification Schema (ebXML BPSS or ebBP) • OASIS ebXML Business Process Technical Committee • Web Services Choreography Description Language (WS-CDL) • W3C Web Services Choreography Working Group • Mediation (grow independently, resolve the protocol inconsistencies later) based • WSMO choreography and orchestration model • WS Modeling Ontology Working Group
ebBP and WS-CDL • Although WS-CDL and ebBP address similar problem domains, the divergent foci of the two enables them to be layerable • The WS-CDL focuses primarily (not only) on the Web Service perspective, while the ebBP describes the pure business message flow and state alignment. As such they are not mutually exclusive • The ebBP v2.0 (which is nearing a vote for OASIS Committee Draft) supports mapping of Business Transaction patterns to abstract operations through the OperationMapping constructs, definition of business QoS guidelines, and it can be supported by CPPA, which maps to concrete WSDL • These mechanisms provide the avenue for WS-CDL and ebBP compatibility.
Svc. Choreography - WS-CDL [2,5] • WS-CDL is an XML-based language that can be used to describe the common and collaborative observable behavior of multiple services that need to interact in order to achieve some goal • Common collaborative observable behavior is the phrase used to indicate describe the behavior of a system of services, for example buyer and seller services, from a global perspective • Such observable behavior is described as a set of functions, possibly with parameters, that a service offers coupled with error messages or codes that indicate failure along with the return types for the functions offered.
Service Orchestration in SOA/WS • Orchestration specifies the behaviour of a participant in a choreography by defining a set of "active" rules that are executed to infer what to do next • Once the rule is computed, the orchestration runtime executes the corresponding activity(ies). • Orchestration assumes existence of an entity, which is the central point of control (i.e. the conductor in an orchestra) and governs overall workflow of activities, effectively composing a new service from existing services
Choreography vs Orchestration Orchestration From [1] Orchestration is akin to traffic lights where events are controlled centrally, whereas Choreography is more like a roundabout, where each participant is following a prearranged set of rules. Paul Downey, http://blog.whatfettle.com/archives/000250.html
Choreography along with Orchestration Orchestration Orchestration From WS-CDL Specification [2]
Collaborative Business Processes Collaboration Definition Orchestration engine Distribution choreography Deployment CBP Choreography The “business protocol” defining high-level interactions across administrative domains Generation/Adaptation of actual executable processes and their views From [4], (c) TrustCoM project
Flexible Choreography support "While business protocols are application specific, much of the software required to support such protocols can be implemented as generic infrastructure components. For example, the infrastructure can (1) maintain the state of the conversation between a client and a service, (2) associate messages to the appropriate conversation, or (3) verify that a message exchange occurs in accordance to the rules defined by the protocols (for example WS-CDL) [3]
Virtualised Services RBVO
Gateway anatomy • Patterns: • Acceptor-Connector • Chain of Responsibility • Handlers: • Application specific • Application independent • Rule-based mapping
Related Work • Pi4Tech (www.pi4tech.com) has launched an open source initiative Pi4SOA.org: • An interactive graphical WS-CDL editor (Eclipse plug-in) • Validation of choreography descriptions • Scenario testing • Run-time monitoring • End-point skeleton (Java, WSDL) generation and deployment (Axis)
Conclusions • Good business models come first • Service Oriented approach allows flexible integration and single-platform approach • Service choreography describes and helps to enforces the business protocols • Intelligent support of choreography scripts by the peers is the key for adaptivity
Thank you! Adomas Svirskas adomas@svirskas.com Researcher Vilnius University, Lithuania Kingston University London, UK
References • [2] Booth, D 2005, From Web Services to the Semantic Web: Global Data Reuse. 2005. http://www.w3.org/2005/Talks/0110-dbooth-semweb • [3] WS-CDL 2005, Web Services Choreography Description Language Version 1.0. W3C Candidate Recommendation, http://www.w3.org/TR/2005/CR-ws-cdl-10-20051109/ • [7] G. Alonso et al. Web Services Concepts, Architectures and Applications Springer Verlag 2004 ISBN 3-540-44008-9 • [11] M.D. Wilson, The TrustCoM Framework. A TrustCoM (www.eu-trustcom.com) workshop at PRO-VE’05, Valencia, Spain, 2005 • [12] S. Ross-Talbot, "Orchestration and Choreography: Standards, Tools and Technologies for Distributed Workflows", NETTAB Workshop - Workflows management: new abilities for the biological information overflow, Naples, Italy, 2005