• 沒有找到結果。

Chapter 2. Background

2.3 Overview of BPMN

BPMN [12] provides a graphical notation to create a standardized bridge between the design and the implementation of business processes. Modeling business process diagram with the rich notations of BPMN increases the ability of communication between organizations. BPMN is derived from flowcharting techniques and comprises three basic types of sub-models and five basic categories of elements.

2.3.1 BPMN Sub-Models

The BPMN sub-models are classified into three basic types: processes, collaboration and choreographies [12].

1. Processes (orchestration) include private business processes and public business processes. Private business processes are internal processes in a specific organization. If a swimlane notation is used, a private business process is contained within a single pool and a public business processes represents the interactions between a private business process and another process.

2. The collaboration sub-model comprises collaboration diagram and conversation diagram. A collaboration diagram consists of two or more public business processes, representing the participants in the collaboration diagram. The exchanged information in a collaboration diagram is shown by a message flow that connects two processes. A conversation diagram is a special kind of a collaboration diagram and is the logical relation of message exchanges. However, a pool of a conversation diagram usually does not contain a process.

3. Choreography represents the communication behaviors between processes. That is, a normal process exists within a pool, choreography exists between pools.

Choreography consists of a network of flow objects. However, the representation of exchanged messages in choreography is different from a collaboration diagram. The Message notation is used to represent the exchanged information.

7

2.3.2 BPMN Elements

The five basic categories of elements are: flow objects, data, connecting objects, swimlanes, and artifacts [12].

1. Flow Objects are the core objects to define the process behavior. It contains events, activities, and gateways.

(1) Events affect the flow of the process and usually have a cause or an impact.

There are three types of events defined in BPMN: start, intermediate, and end events.

(2) Activities are works being performed. An activity can be atomic or non-atomic (compound), which is represented by task and subprocess accordingly. BPMN further categorizes subprocesses into five main types: embedded subprocess, reusable subprocess, event subprocess, transaction, ad-hoc subprocess; and classifies tasks into seven main types: send, receive, service, user, manual, script, business rule tasks.

(3) Gateways are used to control the behaviors of divergence and convergence of the flows with a process. BPMN predefines four types of gateways: exclusive, inclusive, complex, and parallel gateways.

2. Data is used to represent the data instance manipulated by the process. There are four data: data objects, data inputs, data outputs, and data stores.

(1) A data object represents a collection of information about what activities require to be performed and what they produce.

(2) Data inputs represent the inputs of data object to the process.

(3) Data outputs represent the outputs of data object from the process.

(4) A data stores is a graphical element to retrieve or update information that persists beyond the scope of the process.

3. Connecting objects are the connectors among the flow objects and artifacts. The common attributes “target” and “source” represents downstream and upstream of a

8

connecting object. There are four types of connecting objects defined in BPMN:

sequence flows, message flows, associations, and data associations.

(1) Sequence flows are used to show the executive order of activities in a process.

(2) Message flows are used to show the flow of messages sent and received between two pools.

(3) Associations are used to link artifacts with BPMN graphical elements.

(4) Data associations, which use the same notation as associations, are used to show inputs and outputs.

4. Swimlanes are graphical elements to group the primary modeling elements. It is a pool or a lane.

(1) A pool is the graphical representation of a participant in collaboration. It is also a graphical container for dividing a set of activities from other pools in the context of B2B situation.

(2) A lane is a sub partition of a pool and is used to organize and categorize flow objects with a pool.

5. Artifacts are graphical elements to provide additional information about the business process. All of the artifacts do not have the effectiveness of behaviors in the process.

The current set of artifacts is group and text annotation.

(1) A group is a graphical element to group the elements which are within the same category for documentation or analysis purposes.

(2) A text annotation is visual mechanism to provide textual description or comment for the reader in a BPMN diagram.

9

2.3.3 Execution Semantics of Transaction in BPMN

In BPMN, a transaction is a special kind of subprocess. The execution semantics of the transaction in BPMN follow the concept of the transaction protocol. A transaction in BPMN produces three basic outcomes as Figure 2.1 illustrates [12]:

1. Successful completion: This shows a normal sequence flow leaving the transaction subprocess.

2. Fail completion (cancel): When a transaction is cancelled; the activities inside the transaction will be subjected to the cancellation actions, which including rolling back of the processes and compensation for specific activities. There are two mechanisms signaling the cancellation of a transaction:

(1) A cancel end event reached within the transaction.

(2) A cancel message received via the transaction protocol supporting the execution of the transaction.

3. Hazard: This means that something went terribly wrong and a normal success or cancellation is not possible. When a hazard happens, the activity is interrupted without compensation and the control flow continues from the error intermediate event.

Figure 2.1 The Execution Semantics of Transaction in BPMN [12]

10

相關文件