Activities
BPMN definition
An activity is the work actually performed within a process.
Activity types are:
- Task
-
A task is a unit of work, which cannot be broken down to a finer level of detail. Different types of tasks are identified within BPMN in order to specify their behavior. For details refer to table below.
- Sub-Process
-
A Sub-Process consists of activities. It can be broken into a finer level of detail.
- Call activity
-
A Call activity is a reusable Task
An Activity is a generic term for work that company performs in a Process. An Activity can be atomic or non-atomic (compound). The types of Activities that are a part of a Process Model are: Sub-Process and Task, which are rounded rectangles. Activities are used in both standard Processes and in Choreographies.
Symbol | Element type | Description |
---|---|---|
User task |
This task requires interactive user interaction |
|
Manual Task |
A Manual Task is a Task that is expected to be performed without the aid of any business process execution engine or any application. An example of this could be a telephone technician installing a telephone at a customer location |
|
Service Task |
A Service Task will call a function (i.e. a web service) |
|
Receive Task |
A Receive Task is a simple Task that is designed to wait for a Message to arrive from an external Participant (relative to the Process). Once the Message has been received, the Task is completed. |
|
Send Task |
A Send Task is a simple Task that is designed to send a Message to an external Participant (relative to the Process). Once the Message has been sent, the Task is completed |
|
Business Rule Task |
A Business Rule Task provides a mechanism for the Process to provide input to a Business Rules Engine and to get the output of calculations that the Business Rules Engine might provide. |
|
Script Task |
A Script Task is executed by a business process engine. The modeler or implementer defines a script in a language that the engine can interpret. When the Task is ready to start, the engine will execute the script. When the script is completed, the Task will also be completed |
|
Undefined Task |
A Task which is not further specified is called Abstract Task |
Activity markers available for all task types:
Symbol | Marker | Description | Property |
---|---|---|---|
Compensation |
Compensation is concerned with undoing steps that were already successfully completed, because their results and possibly side effects are no longer desired and need to be reversed. If an Activity is still active, it cannot be compensated, but rather needs to be canceled. Cancellation in turn can result in compensation of already successfully completed portions of an active Activity, in case of a Sub-Process. |
||
Looping |
The attributes of tasks will determine if they are repeated or performed once. There are two types of loops:
|
||
Sub-Process (collapsed view) |
A Sub-Process consists of activities. It can be broken into a finer level of detail. The Sub-Process can be in a collapsed view that hides its details or it can be in an expanded view that shows its details within the view of the Process in which it is contained. In the collapsed form, the Sub-Process object uses a marker to distinguish it as a Sub-Process, rather than a Task. |
||
Sub-Process (expanded view) |
|||
Transaction |
A transaction is a Sub-Process that is supported by a special protocol that insures that all parties involved have complete agreement that the activity should be completed or cancelled. The attributes of the activity will determine if the activity is a transaction. A double-lined boundary indicates that the Sub-Process is a Transaction. |
||
Event Sub-Process |
An Event Sub-Process is a specialized Sub-Process that is used within a Process (or Sub-Process). A Sub- Process is defined as an Event Sub-Process when its triggeredByEvent attribute is set to true. |
||
Ad Hoc Sub-Process |
The Activities of an Ad Hoc Sub-Process are controlled by the process performers, not by sequence flows. |
||
Call Activity |
A Call Activity is a wrapper for a globally defined Task or Process reused in the current Process. A call to a Process is marked with a symbol |
||
Call to a process |
Activities available in the choreography toolbox (refer to: Choreography diagram):
Symbol | Element type | Description | IYOPRO |
---|---|---|---|
Choreography task |
A Choreography Task is an atomic Activity in a Choreography. It represents a set of one or more Message exchanges. Each Choreography Task involves two Participants. The name of the Choreography Task and each of the Participants are all displayed in the different bands that make up the shape’s graphical notation. There are two or more Participant Bands and one Task Name Band. |
Drag from toolbox |
|
Choreography Sub-process |
A Sub-Process is a compound Activity that is included within a Process or Choreography. It is compound in that it can be broken down into a finer level of detail (a Process or Choreography) through a set of sub-Activities. |
Drag from toolbox |