![]() ![]() ![]() ![]() ![]() ![]() ![]() |
A Parallel node represents a point in a business process at which a number of activities are executed in parallel.
By default, parallel nodes contain an AND join condition. In this case, the activities on all branches must complete before the flow of execution proceeds to the node following the parallel node. You can change the join condition to OR. In this case, when the activities on one branch complete, the execution of activities on all other branches terminates, and the flow of execution proceeds to the node following the parallel node.
This section describes how to create and define Parallel nodes. It includes the following topics:
Parallel branches of execution in a business process are logically parallel; physically the branches are executed serially by the business process engine. Business Processes benefit from this logical parallelism when communication with external systems can involve waiting for responses from those external systems. While one branch of execution is waiting for a response, another branch of execution in the parallel flow can progress.
Parallel branches are synchronized only at their termination points. A join condition is defined at the termination of multiple branches. It specifies how the termination of branches terminates the overall parallel activity.
Valid join conditions are AND and OR:
How does a Parallel node, which specifies an OR join condition, differ from an Event Choice node?
For a scenario in which an OR join condition is specified for a Parallel node, the business process executes activities on all branches in parallel. When the activities on one branch complete, the execution of activities on all other branches terminates, and the flow of execution proceeds to the node following the Parallel node. In other words, the activities on all parallel branches are initiated and proceed until the first one finishes, at which point the activities on all other branches are terminated.
In the case of an Event Choice node, the business process waits to receive multiple events. The first node on each branch within an Event Choice node handles the receipt of one event. The flow of execution proceeds along the branch containing the event that happens first. In other words, the activities on one, and only one branch in an Event Choice node are executed.
The Design view is updated to contain a Parallel node, as shown in Figure 7-1.
Note the following characteristics of the Parallel node:
Designing a Parallel node includes the following tasks:
A Parallel node is, in effect, a group of nodes. You can set the properties and annotations for a group of nodes using the JPD Configuration pane and Properties pane.
Note: | If the JPD Configuration pane is not visible in the Design view, choose Window > Show View > JPD Configuration from the BEA WorkSpace Studio menu. |
To learn how the Join Condition affects the flow of execution in a Parallel node, see Understanding Parallel Execution in Your Business Process.
For each branch in your Parallel node:
Note: | You can create nested Parallel nodes in your business process by dragging a ![]() |
Grouping Nodes in Your Business Process
![]() ![]() ![]() |