Gateway - Overview |
A Gateway is used to control the divergence and convergence of sequence flows in a process. Gateways do not represent any user or machine action. They just represent "gates" that determine flow with respect to data or events. They can define all the types of Business Process Sequence Flow behavior: Decisions/branching (exclusive, inclusive, and complex), merging, forking, and joining. A Gateway cannot be the target or a source for the message flow. Different types of gateways allow you to change the way the process flows. |
Following Gateway types are available in the Process Composer. |
Exclusive OR Split | Inclusive OR Split |
Exclusive OR Join | Inclusive OR Join |
Parallel Split | For Each Loop |
Parallel Join | Next Loop |
Complex Split | While Do Loop |
Complex Join | While Do Loop End |
For a complete list of Process components available in Process Composer, see Process Component Table.
Exclusive OR Split Gateway Activity |
This activity is used in conjunction with an ‘Exclusive OR Join’ to create a gateway. You can have more than one conditional path defined, but only one of the paths will be completed. A default action has to be compulsorily defined for scenarios where none of the conditions are met. |
Previous | Back to Gateway Types | Next |
Exclusive OR Join Gateway Activity |
This activity is used in conjunction with an ‘Exclusive Or Split’ to create a gateway. You can have more than one conditional path defined, but only one of the paths will be completed. |
To illustrate where both 'Exclusive OR Split' & 'Exclusive OR Join' Gateways can be used while designing a process flow, let us take the following example scenario. |
Example Scenario: In this scenario, if the order amount is greater than USD 500, a customer is requested for a deposit. If the order amount is USD 500 or less, goods will be delivered to customer directly. Here, an 'Exclusive OR Split' gateway is used to determine the delivery of goods to the customer based on a condition involving the order amount. An 'Exclusive OR Join' gateway is used to converge the paths without any conditions. |
Process flow diagram:
|
To add properties to the process component activity 'Exclusive OR Split', follow these steps: |
1. Drag the Exclusive OR Split gateway component from the left pane (Gateway drop-down list) & drop it on the Process design area.
2. Double-click the icon. Alternatively, right-click the Exclusive OR Split gateway component activity icon, & then click Properties on the shortcut menu. The Exclusive OR Split1 Properties dialog box appears.
- On the Generic tab, enter an appropriate name for this activity in the Name box.
- Enter an appropriate description in the Description box.
3. Click the Rule On Start tab. Set the Rule to be invoked when the activity starts if you wish to.
- Select the rule name from the Rule Name list. This list displays the rules defined already in the Rule Engine.
- Select the action in case of rule failure from the Rule Failure Action list. The available options are: Stop Process & Continue Process.
- Specify the Global & Local Fields as appropriate. Click Validate.
4. Click the Expression tab. Define the decision expression as shown.
5. Click the Rule On End tab. Set the Rule to be invoked when the activity ends if you wish to.
- Select the rule name from the Rule Name list. This list displays the rules defined already in the Rule Engine.
- Select the action in case of rule failure from the Rule Failure Action list. The available options are: Stop Process & Continue Process.
- Specify the Global & Local Fields as appropriate. Click Validate.
6. Click the Activity Event tab. Set the Events that can be used to trigger a custom action if you wish to.
- Select the type of the event from the Event Type list. The available Event Types are: ActivityPreExecution, ActivityPostExecution, ActivityTimeout, ActivityOnError & ActivityCancelled.
- Select the associated library event from the Event Library list. Note that this list displays the name of event library based on the event type selected. (for e.g: If you select ActivityPreExecution Event Type, then ActivityPreExecutionEvent is displayed for selection in the Event Library list).
- Click the Plus/Add icon to add.
7. Click Save.
|
Previous | Back to Gateway Types | Next |
Parallel Split Gateway Activity |
This activity is used in conjunction with an ‘Parallel Join’ to create a gateway. This split is not based on any decisions, but a simple forking of a flow into multiple paths. You can define a minimum number of conditions that have to be satisfied before the join can occur. |
Previous | Back to Gateway Types | Next |
Parallel Join Gateway Activity |
This activity is used in conjunction with an ‘Parallel Split’ to create a gateway. You can have more than one path defined, and a minimum number of conditions that have to be satisfied before the join can occur. |
To illustrate where both 'Parallel Split' & 'Parallel Join' Gateways can be used while designing a process flow, let us take the following example scenario. |
Example Scenario: In this scenario, the staffing request raised by a designated officer of the department can be approved either by a Department Head or a Manager. Hence, without checking any condition, the staffing work item request is sent to both of them for their respective approvals. However, while using a Parallel Split Gateway, conditions need to be defined in Parallel Join gateway, where you can configure how many inputs are required to continue the process further. For example, there could be a company policy that may have defined that a staffing request needs an approval from both the Department Head as well as the Manager for the process to continue any further Or process can continue even If any one of them approves. Here, the 'Parallel Split' gateway is used to simply fork the staffing request flow into two paths requiring an approval either from the department head or the manager. The split is not based on any decisions. Based on the conditional approval from any one of them, a 'Parallel Join' gateway is used to converge the paths & continue the process further. |
Process flow diagram:
|
To add properties to the process component activity 'Parallel Split', follow these steps: |
1. Drag the Parallel Split gateway component from the left pane (Gateway drop-down list) & drop it on the Process design area.
2. Double-click the icon. Alternatively, right-click the Parallel Split gateway component activity icon, & then click Properties on the shortcut menu. The Parallel Split1 Properties dialog box appears.
- On the Generic tab, enter an appropriate name for this Gateway activity in the Name box.
- Enter an appropriate description in the Description box
To set/define the properties for the remaining three tabs Rule On Start, Rule On End & Activity Event, please refer to the steps described for these tabs in the section 'Exclusive OR Split' above since they are very similar.
To add properties to the process component activity 'Parallel Join', follow these steps: |
1. Drag the Parallel Join gateway component from the left pane (Gateway drop-down list) & drop it on the Process design area.
2. Double-click the icon. Alternatively, right-click the Parallel Join gateway component activity icon, & then click Properties on the shortcut menu. The Parallel Join1 Properties dialog box appears.
- On the Generic tab, enter an appropriate name for this Gateway activity in the Name box.
- Enter an appropriate description in the Description box.
- Enter an appropriate number in the Wait For Count box. This field defines the number of inputs expected by the 'Parallel Join' gateway. It should always be equal to or less than the number of splits in the corresponding Parallel Split gateway. In our example, the wait for count depends on how many approvals are required to go ahead with the staffing request process.
- Select the name of the Parent Split against which the join is to be performed (Conjunctive split/join) from the Parent Split list.
To set/define the properties for the remaining three tabs Rule On Start, Rule On End & Activity Event, please refer to the steps described for these tabs in the section 'Exclusive OR Split' above since they are very similar.
Previous | Back to Gateway Types | Next |
For Each Loop Gateway Activity |
A loop allows a sequence of actions to be repeated. To use this activity you first need to define an Iterator in the Process Properties. After the iterator is defined, use this activity to iterate through the list of items that the iterator points to. |
Previous | Back to Gateway Types | Next |
Next Loop Gateway Activity |
This activity simply marks the next iteration of a For Each Loop. |
To illustrate where both 'For Each Loop' & 'Next Loop' Gateways can be used while designing a process flow, let us take the following example scenario. |
Example Scenario: In this scenario, on receiving the approval for staffing request, the Company HR starts scheduling the interviews of the shortlisted candidates and records the corresponding interview schedule in the system. Once recorded, the system will go through the list of candidates sequentially and sends e-mail notifications to each of them about their interview schedule automatically. Here, 'For Each Loop' activity is used to navigate between/loop through the list of candidates shortlisted for the interview in a sequential manner upon receiving the approval for staffing request. On reaching the end of the candidates list, the control comes out of the 'For Loop' & moves to the next stage of the process. |
Process flow diagram:
|
To add properties to the process component activity 'For Each Loop', follow these steps: |
1. Drag the For Each Loop gateway component from the left pane (Gateway drop-down list) & drop it on the Process design area.
2. Double-click the icon. Alternatively, right-click the For Each Loop gateway component activity icon, & then click Properties on the shortcut menu. The For Each Loop1Properties dialog box appears.
- On the Generic tab, enter an appropriate name for this Gateway activity in the Name box.
- Enter an appropriate description in the Description box.
- Select the name of an Iterator from the Iterator list. This Iterator must have been defined in the Process Properties dialog box already. See the following Process Properties dialog box defining the Iterator named 'Candidates' which we will be using in our example scenario.
- Select the type of loop execution from the Execution Type list. The available options are: Serial & Parallel. In Serial type of loop execution, each of the list item will be chosen for looping one after the other sequentially where as in Parallel type, all the list items are chosen & the process will be initiated together.
To set/define the properties for the remaining three tabs Rule On Start, Rule On End & Activity Event on the For Each Loop1 Properties dialog box, please refer to the steps described for these tabs in the section 'Exclusive OR Split' above since they are very similar.
To add properties to the process component activity 'Next Loop', follow these steps: |
1. Drag the Next Loop gateway component from the left pane (Gateway drop-down list) & drop it on the Process design area.
2. Double-click the icon. Alternatively, right-click the Next Loop gateway component activity icon, & then click Properties on the shortcut menu. The Next Loop1 Properties dialog box appears.
- On the Generic tab, enter an appropriate name for this Gateway activity in the Name box.
- Enter an appropriate description in the Description box.
- Select the conjunctive parent for the loop from the Parent For Loop list. For serial/sequential processing, a Next Loop has to be related to the parent For Loop.
To set/define the properties for the remaining three tabs Rule On Start, Rule On End & Activity Event on the For Each Loop1 Properties dialog box, please refer to the steps described for these tabs in the section 'Exclusive OR Split' above since they are very similar.
|
Previous | Back to Gateway Types | Next |
Inclusive OR Split Gateway Activity |
This activity is used in conjunction with an ‘Inclusive Or Join’ to create a gateway. You can have one or more conditional paths defined, and one or more conditions may be satisfied in the flow. You can also have one or more of these conditions defined as mandatory. A default action has to be compulsorily defined for scenarios where none of the conditions are met. |
Previous | Back to Gateway Types | Next |
Inclusive OR Join Gateway Activity |
This activity is used in conjunction with an ‘Inclusive Or Split’ to create a gateway. You can have more than one conditional path defined, and one or more conditions may be satisfied in the flow. The Join will wait for all active paths to complete. |
An Inclusive Gateway can be seen as a combination of an exclusive and a parallel gateway. Like an exclusive gateway, you can define conditions on outgoing sequence flows and the inclusive gateway will evaluate them. However, the main difference is that the inclusive gateway can receive more than one sequence flow, like a parallel gateway. |
To illustrate where both 'Inclusive OR Split' & 'Inclusive OR Join' Gateways can be used while designing a process flow, let us take the following example scenario. |
Example Scenario: This example depicts a scenario determining the actions taken by the maintenance department of a commercial building after a minor fire incident. After the initial inspection, if the fire caused structural damage to the building, the department must notify/contact the fire department. If the damage cost exceeds 1000, the department must notify the insurance dept. In either case, a report must be submitted to the corresponding building manager. The OR split moves control from 'Initiate Inspection' to 'Notify Fire Dept'. The conditions determining which way to branch are labeled on the line arrows. In this example, the OR condition is inclusive; it is possible for the damage to be both structural and greater than 1000 in value, in which case the respective branches are run in parallel. The OR join is from “Notify Fire Dept.” and “Notify Insurance Dept” to “Submit Report.” Here, the default action is completing the inspection of the building after the fire incident & preparing the Inspection report followed by its subsequent submission to the concerned building manager. This will be the default action if both the conditional sequences are not met. If multiple branches were selected by the OR split, “Submit Report” waits for all paths to complete. |
Process flow diagram:
|
To add properties to the process component activity 'Inclusive OR Split', follow these steps: |
1. Drag the Inclusive OR Split gateway component from the left pane (Gateway drop-down list) & drop it on the Process design area.
2. Double-click the icon. Alternatively, right-click the Inclusive OR Split gateway component activity icon, & then click Properties on the shortcut menu. The Inclusive OR Split1 Properties dialog box appears.
- On the Generic tab, enter an appropriate name for this Gateway activity in the Name box.
- Enter an appropriate description in the Description box.
3. Click the Expression tab. Define the decision expression as shown. Conditions to be built depend on the process & related model attributes. These model attribute values can be used in condition by first creating its Alias from the Process Properties dialog box as shown (2nd screenshot below). Each of the actions defined based on conditions can be assigned appropriately to the various paths the process takes.
Aliases help in designing the process quickly in the Process composer & must be included while triggering a request.
To set/define the properties for the remaining three tabs Rule On Start, Rule On End & Activity Event on the Inclusive OR Split1 Propertiesdialog box, please refer to the steps described for these tabs in the section 'Exclusive OR Split' above since they are very similar.
To add properties to the process component activity 'Inclusive OR Join', follow these steps: |
1. Drag the Inclusive OR Join gateway component from the left pane (Gateway drop-down list) & drop it on the Process design area.
2. Double-click the icon. Alternatively, right-click the Inclusive OR Join gateway component activity icon, & then click Properties on the shortcut menu. The Inclusive OR Join1 Properties dialog box appears.
- On the Generic tab, enter an appropriate name for this Gateway activity in the Name box.
- Enter an appropriate description in the Description box.
- Select the conjunctive parent inclusive split from the Parent Inclusive Split list. An Inclusive OR Join gateway must be conjunctive with the parent Inclusive OR Split.
|
Previous |
Gateway Naming Recommendations: It is advisable to name the gateways with the decision previously evaluated. Only Exclusive & Inclusive gateways are named under normal circumstances. |