Chapter 4 Building Business Process Diagrams
The Implementation tab lets you define how the process (activity) is implemented. Depending on the implementation type you specify, the properties available on this tab will change. The following properties are always available. Note that only decomposed processes can be implemented for the ebXML and BPEL languages:
Property | Description |
---|---|
Type | Specifies the type of process implementation. You can choose between:
See Specifying implementation types. |
[implementation object] | Depending on the implementation type you choose, an additional field or tab may be displayed, allowing you to specify a process, event, expression, operation, or data transformation upon which the implementation acts. You can use the tools to the right of the list to create an object, browse the available objects, or view the properties of the currently selected object. |
Action type | [None and Reuse process implementations only] Specifies the way the process should be executed. You can choose between:
[Execute operation implementation only] Specifies the type of message exchange the activity performs. You can choose between:
|
Implementation (text box) | Specifies additional information about the process execution. You can enter any appropriate information in this box, as well as open, insert and save text files. You can open the Implementation tab by right-clicking the process symbol in the diagram, and selecting Implementation in the contextual menu. |
Depending on the implementation type you specify, the graphical symbol in within the process symbol will change:
Implemented by | Graphical symbol |
---|---|
Loop | |
Reuse | |
Generate event |
|
|
|
|
|
Assign | |
Execute operation |
|
|
See the following tables for lists of properties depending on a particular implementation type.
This implementation type is available for all target languages, and lets you specify a type of composite activity, which iterates over the set of activities inside of it. You detail in the sub-diagram the actions to perform inside the loop.
The following Loop specific properties are available:
Properties | Description |
---|---|
Loop expression | Specifies the loop condition. |
Loop type | Specifies the loop type. You can select from the list a predefined type, when available in the target language. |
This implementation type is available for analysis languages (except DFD) and for collaborative languages, and lets you use another existing process to specify your process implementation.
The following Reuse process specific property is available:
Properties | Description |
---|---|
Implemented by | Specifies the implementation process (see Processes (BPM)). |
This implementation type is only available for the BPMN and orchestration languages, and lets you specify the generation of events (timer, fault, and compensation).
The following Generate event specific properties are available:
Properties | Description |
---|---|
Event | Specifies the implementation event (see Events (BPM)). |
Event mapping | [Only available for fault events] Lets you associate a data with the fault by selecting a local variable from the list. This variable stores the fault data. |
The Generate event implementation lets you specify events that allow you to model the following specific activities:
Event type | Activity... |
---|---|
Timer | Wait activity – pauses the process for a specified duration, or until a specified time. |
Fault | Throw activity – causes a specific fault to occur to abort a transaction, activity or process and triggers the fault handler (see Event handlers) for the given process. |
Compensation | Compensate activity – triggers the cancellation of actions performed by an already terminated process using a compensation handler (see Event handlers). |
This implementation type is only available for orchestration languages, and lets you specify a sequence of atomic assign tasks using data transformations (see Data Transformations).
When you select Assign in the Type list, you trigger the display of the Assignments tab (see Process property sheet Assignments tab).
This implementation type is only available for orchestration languages, and lets you model the reception and emission of messages using operations (see Operations (BPM)).
The following Execute operation specific properties are available:
Properties | Description |
---|---|
Implemented by | Specifies the implementation operation (see Operations (BPM)). When working with orchestration languages, you can drag and drop an operation from the Browser to the diagram to automatically create an activity (that sends/receives messages) implemented by this operation. |
Action description | Specifies the way the action is executed. Click the Action Description button to open a text editor, in which you can enter any appropriate information, as well as open, insert and save text files. |
Received message | Specifies the received message format associated with the selected operation. Click the Properties tool to display the message format properties. The Received message groupbox is unavailable and empty when the activity sends an operation message that does not require any response message. |
Received message Correlation key | Specifies a received correlation key (see Correlation Keys (BPM)) that allows the process engine to direct a received message to the correct activity instance. You can use the tools to the right of the list to create an object, or view the properties of the currently selected object. Received correlation key are mostly used for receive request activities. |
Received message Message mapping | Specifies a variable that retrieves the content of the received message. You can use the tools to the right of the list to create an object, or view the properties of the currently selected object. The variable corresponds to the first message of the operation for receive activities, and to the second message of the operation for activities that send messages. |
Sent message | Specifies the sent message format associated with the selected operation. Click the Properties tool to display the message format properties. The Sent message groupbox is unavailable and empty when the activity receives an operation message that does not expect a response message. |
Sent message Correlation key | Specifies a sent correlation key (see Correlation Keys (BPM)), which contains the information that is useful to the partner in a next exchange with the activity. You can use the tools to the right of the list to create an object, or view the properties of the currently selected object. |
Sent message Message mapping | Specifies a variable to use in order to send information to a partner. You can use the tools to the right of the list to create an object, or view the properties of the currently selected object. The variable corresponds to the second message of the operation for receive activities, and to the first message of the operation for activities that send messages. |
The following table summarizes the relationships between the input/output messages of the operation (see Operation property sheet Input/Output tab) and the received messages of the activity:
Operation\Activity |
Receive request |
Receive request and reply |
---|---|---|
Undefined | — | — |
One-Way | Input is received | — |
Request-Response | Input is received Output is ignored |
Input is received Output is sent |
Notification | Output is received | — |
Solicit-Response | Input is ignored Output is received |
Input is sent Output is received |
The following table summarizes the relationships between the input/output messages of the operation (see Operation property sheet Input/Output tab) and the sent messages of the activity:
Operation\Activity | Reply | Reply fault | Invoke operation |
---|---|---|---|
Undefined | — | — | — |
One-Way | — | — | Input is sent |
Request-Response | Input is ignored Output is sent |
Input is ignored Output is ignored Fault is sent |
Input is sent Output is received |
Notification | — | — | Output is sent |
Solicit-Response | Input is sent Output is ignored |
Input is ignored Output is ignored Fault is sent |
Input is received Output is sent |
Copyright (C) 2008. Sybase Inc. All rights reserved. |