Chapter 5

413 views

Published on

Process Choreography

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
413
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
64
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Chapter 5

  1. 1. 4/9/2013 PROCESS CHOREOGRAPHIES Business Process Methodology • business-to-business collaboration Chapter 5- Process Choreographies • To realize these collaborations, process orchestrations interact with each other, typically by sending and receiving messages. Prepared by: • ensuring interoperability between process Rao Majid Shamshad University of Education, Lahore orchestrations, each of which is performed by email: majidrao111@yahoo.com a participant in a business-to-business http://bpm-ue.blogspot.com/ collaboration. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 2STANDARDIZED CHOREOGRAPHIES NEED & ADVANTAGES• RosettaNet for the supply chain domain, • companies increasingly join forces to combine• SWIFTNet for financial services, their services and products to provide added-• Health Level Seven (HL7) for health care value products to the market. services. • costs for the individual companies are reducedThey all define rules for the collaboration that • New companies can join the market more companies need to comply with in order to easily, collaborate with each other. • depend on the number of interacting partners and the desired level of automation. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 3 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 4 1
  2. 2. 4/9/2013 • The first activity to be performed by Company 1 is receive activity A1. This activity waits to receive a message sent by activity B2. Assuming that communication is synchronous, i.e., the receive activity A1 is blocking, the process orchestration run by Company 1 cannot proceed. Analogously, Company 2 waits in activity A2 to receive a message from activity C1 to be sent by Company 1. As a result, both process orchestrations cannot proceed: they are stuck in a permanent deadlock situation. To avoid these kinds of problems, the partners involved in a process choreography need to agree on the process choreography. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 5 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 6 5.2 DEVELOPMENT PHASES• Business engineers are mainly involved in the choreography design phases, including scenario modelling, domain scoping, milestone definition, and participant identification. Business engineers are responsible for business-related aspects of the process choreography; they need to make sure that the collaboration contributes to the goals of the enterprise, similarly to organizational business processes. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 7 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 8 2
  3. 3. 4/9/2013 • Once the process choreography design is• System architects are responsible for the completed, developers are responsible for architectural aspects of the implemented process realizing the process orchestrations in a way choreography. System architects are at the border that the overall business-to-business collaboration as specified in the process of design and implementation, as sketched in choreography is realized. Behavioral interfaces Figure 5.4. This means that they are involved in are important artifacts for designing the the design of process choreographies as well as in individual process orchestrations. their implementation. In particular, they are involved in the specification of the behavioral interfaces, discussed later in this chapter. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 9 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 10 SCENARIO MODELLING • Formal notations are not required in scenario• Scenario modelling is at the heart of modelling and domain scoping, so that the choreography design: scenarios describe the scenario and the domain can be described in a overall setting and goals of the process language that allows expressing the relevant choreography. They are also useful for concepts. Depending on the specific setting of integrating the results of the other design the project, plain English text enriched with phases. To model a particular scenario, a informally specified graphical diagrams can be domain in which the cooperation will take used. place needs to be specified. This is performed during the domain scoping phase by business engineers. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 11 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 12 3
  4. 4. 4/9/2013 PARTICIPANT IDENTIFICATION MILESTONE DEFINITION • In the milestone definition phase, the• The participant identification phase is devoted participants define certain states of the to defining different roles of choreography choreography in which the cooperation has participants. There are two options for doing achieved certain results, typically this. These roles are specified in a way that characterized by intermediate products. These allows for the selecting of concrete process states are called milestones. participants on the basis of their properties as laid out in the participant roles. In the context • Milestones and their ordering describe of process choreographies, the term process behavioral aspects of the choreography from a participant refers to an organization, rather high level of abstraction. than to an individual. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 13 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 14 MESSAGE IDENTIFICATION CHOREOGRAPHY DEFINITION PHASE• In the message identification phase, the • Finally, the choreography definition phase interactions in the scenario are used to combines the message identification and the identify and design messages that realize the milestone definition phases of the modelled various interactions. This phase has business scenario. aspects as well as technical aspects; it is therefore located on the border of the design • The result of this phase is a detailed and implementation of process specification of the interactions between the choreographies. The design aspects include participants, the messages to realize the the business content of the messages, while interactions, and the milestones that are the implementation aspects include the reached during the resulting conversation in technical realization of these messages and the instance layer. concrete message formats. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 15 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 16 4
  5. 5. 4/9/2013• The choreography definition phase, just like • Domain standards, like the ones mentioned the message identification phase, includes above, are in place to provide a common business aspects as well as technical aspects. terminology, and, thereby, an understanding Unsuccessful interaction behavior would arise of the concepts used. These standards are if, for instance, message formats were used enhanced with technical information, so that that one or more participants would not data structures and message formats are understand. To avoid this problem, it is available. Business engineers, system assumed that message formats as well as the architects, and developers participate in semantics of the messages are agreed upon choreography definition and message by the participants. identification. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 17 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 18 BEHAVIORAL INTERFACES 5.3 PROCESS CHOREOGRAPHY DESIGN• In the lower part of Figure 5.4, the phases • The design of process choreographies involves during implementation of process a series of activities. In each of these choreographies are shown. Based on the activities, artefacts are developed. These choreography definition, behavioral interfaces activities are described as follows: of all roles in the process choreography are 1. High-level Structure Design: In high-level defined. Behavioral interfaces serve as choreography design, the participant roles as blueprints for the design of the individual well as their communication structures are process orchestrations realized by the identified. High level structure design is participants of the process choreography. conducted during the Participant identification phase. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 19 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 20 5
  6. 6. 4/9/20132. High-level Behavioural Design: High-level behavioural models specify the milestones of the collaboration and the order in which the milestones are reached. High-level behavioural design is done during the milestone definition phase. Milestones have dependencies with respect to other milestones. For instance, the auction has to be set up before the bidding process can be finished. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 21 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 22 3. Collaboration Scenarios: High-level choreographies are refined by introducing dedicated collaboration scenarios that relate the reaching of milestones to the communication between process participants. Collaboration scenarios are developed during the choreography definition phase, based on the scenarios informally specified during scenario modelling. In this phase, the interactions needed to proceed from one milestone to another are specified One or several collaboration scenarios show the interactions and their dependencies that need to occur between two milestones Prepared by Rao Majid Shamshad, UE Township campus, Lahore 23 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 24 6
  7. 7. 4/9/2013 • Scenarios should be kept small, as it is easier to reach agreement on less complex interaction behaviour. • Additional scenario models might be introduced to deal with special cases and exceptions. • Behavioural Interfaces: From these collaboration scenarios, for each participant role, a behavioral interface is derived. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 25 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 26 Compatibility • Compatibility is the ability of a set of participants to interact successfully according• . to a given process choreography. • Unsuccessful interaction behaviour could arise, if, for instance, different message formats were used in a collaboration and one participant does not understand the content of a message sent by another participant. • Another source of incompatibility—which this section will focus on—is due to wrong and misaligned interactions. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 27 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 28 7
  8. 8. 4/9/2013 Structural Compatibility• If, for instance, a participant expects a notification at some point in its process before • A process choreography is structurally compatible it can proceed, and none of the other if messages that can be sent by a participant participants sends such a notification correspond to messages that other participants message, then the process cannot continue, can receive. This property makes sure that all so a deadlock situation emerges. Compatibility messages that are sent can actually be received by participants. However, it does not rule out that of interacting processes aims at avoiding this participants can receive additional messages that type of undesired behavior due to erroneous none of the partners can send. interactions between process orchestrations. • Different types of structural compatibility are introduced to describe structural properties of process choreographies. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 29 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 30 5.4 PROCESS CHOREOGRAPHY IMPLEMENTATION1. Strong structural compatibility of a process choreography is given if, for every message • After discussing the design of process that can be sent there is a participant who choreographies, this section looks at the can receive it, and if for every message that can be received, there is a participant who implementation of choreographies. can send it. Behavioural interfaces serve as blueprints for2. Weak structural compatibility is given if all the internal realization of process messages sent by participants can be orchestrations, because each process received by other participants. However, it is orchestration needs to expose an externally not required that all messages that visible behaviour that was specified as the participants can ever receive will actually be behavioural interface of the respective sent by other participants. participant. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 31 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 32 8
  9. 9. 4/9/2013 5.5 SERVICE INTERACTION PATTERNSService interaction patterns can be classified according to the following schemes.• Number of participants involved: Bilateral interactions involve two participants, whereas multilateral interactions involve more than two participants.• Number of messages exchanged: Single transmission versus multi-transmission interactions.• Variations in message receiver : In case of two-way interactions, round-trip interaction means that the receiver of the message is necessarily the same as the sender, whereas routed interaction means that the receiver of the message in general differs from the sender. Prepared by Rao Majid Shamshad, UE Township campus, Lahore 33 Prepared by Rao Majid Shamshad, UE Township campus, Lahore 34• One-To-Many Send• One-From-Many Receive• One-To-Many Send/Receive• Multi-Responses• Contingent Requests• Atomic Multicast Notification• Request With Referral• Relayed Request Prepared by Rao Majid Shamshad, UE Township campus, Lahore 35 9

×