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

NewItem382

User task

This task requires interactive user interaction

NewItem383

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

NewItem384

Service Task

A Service Task will call a function (i.e. a web service)

NewItem399

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.

NewItem400

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

NewItem401

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.

NewItem402

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

NewItem403

Undefined Task

A Task which is not further specified is called Abstract Task

Activity markers available for all task types:

Symbol Marker Description Property

NewItem406

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.

NewItem429

NewItem387

NewItem407

Looping

The attributes of tasks will determine if they are repeated or performed once. There are two types of loops:

Standard

A small looping indicator will be displayed at the bottom-center of the activity.
After each run, it will be checked, if the loop (termination) conditions are reached. The number of runs is not determined.

Multi-Instance
Parallel

Three vertical lines shown at the bottom-center of the pool indicate a parallel multiple instance.
Activities in the pool can follow a any order (can be parallel).

Sequential

Three horizontal lines shown at the bottom-center of the pool indicate a sequential multiple instance.
Activities in the pool need to follow a certain order (sequence).

NewItem389

NewItem408

NewItem392

NewItem409

NewItem394

NewItem410

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.

NewItem431

Sub-Process (expanded view)

NewItem411

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.

NewItem412

NewItem405

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.

NewItem413

NewItem418

Ad Hoc Sub-Process

The Activities of an Ad Hoc Sub-Process are controlled by the process performers, not by sequence flows.

NewItem426

NewItem404

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

NewItem390

NewItem419

Call to a process

NewItem425

Activities available in the choreography toolbox (refer to: Choreography diagram):

Symbol Element type Description IYOPRO

NewItem427

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

NewItem428

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