Table 10.9 – Send Task model associations

Attribute Name

Description/Usage

 

 

messageRef: Message [0..1]

A Message for the messageRef attribute MAY be entered. This indicates that

 

the Message will be sent by the Task. The Message in this context is

 

equivalent to an out-only message pattern (Web service). One or more

 

corresponding outgoing Message Flows MAY be shown on the diagram.

 

However, the display of the Message Flows is NOT REQUIRED. The Message

 

is applied to all outgoing Message Flows and the Message will be sent down

 

all outgoing Message Flows at the completion of a single instance of the Task.

 

 

operationRef: Operation

This attribute specifies the operation that is invoked by the Send Task.

 

 

implementation: string =

This attribute specifies the technology that will be used to send and receive the

##webService

Messages. Valid values are "##unspecified" for leaving the implementation

 

 

technology open, "##WebService" for the Web service technology or a URI

 

identifying any other technology or coordination protocol A Web service is the

 

default technology.

 

 

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.

The actual Participant from which the Message is received can be identified by connecting the Receive Task to a Participant using a Message Flows within the definitional Collaboration of the Process – see Table 10.1.

A Receive Task is often used to start a Process. In a sense, the Process is bootstrapped by the receipt of the Message. In order for the Receive Task to instantiate the Process its instantiate attribute MUST be set to true and it MUST NOT have any incoming Sequence Flow.

A Receive Task object shares the same shape as the Task, which is a rectangle that has rounded corners. However, there is an unfilled envelope marker (the same marker as a catch Message Event) in the upper left corner of the shape that indicates that the Task is a Receive Task.

A Receive Task is a rounded corner rectangle that MUST be drawn with a single thin line and includes an unfilled envelope marker that distinguishes the shape from other Task types (as shown in Figure 10.15). If the instantiate attribute is set to true, the envelope marker looks like a Message Start Event (as shown in Figure 10.16).

Figure 10.15 – A Receive Task Object

Business Process Model and Notation (BPMN), v2.0.2

159

Figure 10.16 – A Receive Task Object that instantiates a Process

The Receive Task inherits the attributes and model associations of Activity (see Table 10.3). In addition the following constraints apply when the Receive Task references a Message: The Receive Task has at most one outputSet and at most one Data output. If the Data output is present, it MUST have an ItemDefinition equivalent to the one defined by the associated Message. At execution time, when the Receive Task is executed, the data automatically moves from the Message to the Data Output on the Receive Task. If the Data Output is not present, the payload within the Message will not flow out of the Receive Task and into the Process.

Table 10.10 presents the additional attributes and model associations of the Receive Task.

Table 10.10 – Receive Task attributes and model associations

Attribute Name

Description/Usage

 

 

messageRef: Message [0..1]

A Message for the messageRef attribute MAY be entered. This indicates

 

that the Message will be received by the Task. The Message in this context

 

is equivalent to an in-only message pattern (Web service). One (1) or more

 

corresponding incoming Message Flows MAY be shown on the diagram.

 

However, the display of the Message Flows is NOT REQUIRED. The

 

Message is applied to all incoming Message Flows, but can arrive for only

 

one (1) of the incoming Message Flows for a single instance of the Task.

 

 

instantiate: boolean = false

Receive Tasks can be defined as the instantiation mechanism for the

 

Process with the instantiate attribute. This attribute MAY be set to true if

 

the Task is the first Activity (i.e., there are no incoming Sequence Flows).

 

Multiple Tasks MAY have this attribute set to true.

 

 

operationRef: Operation

This attribute specifies the operation through which the Receive Task

 

receives the Message.

 

 

implementation: string =

This attribute specifies the technology that will be used to send and receive

##webService

the Messages. Valid values are "##unspecified" for leaving the implementa-

 

 

tion technology open, "##WebService" for the Web service technology or a

 

URI identifying any other technology or coordination protocol A Web service

 

is the default technology.

 

 

User Task

A User Task is a typical “workflow” Task where a human performer performs the Task with the assistance of a software application and is scheduled through a task list manager of some sort.

160

Business Process Model and Notation (BPMN), v2.0.2

A User Task is a rounded corner rectangle that MUST be drawn with a single thin line and includes a human figure marker that distinguishes the shape from other Task types (as shown in Figure 10.17).

Figure 10.17 – A User Task Object

See “User Task” on page 160 within the larger section of “Human Interactions” for the details of User Tasks.

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.

A Manual Task is a rounded corner rectangle that MUST be drawn with a single thin line and includes a hand figure marker that distinguishes the shape from other Task types (as shown in Figure 10.17).

Figure 10.18 – A Manual Task Object

See “Manual Task” on page 163 within the larger section of “Human Interactions” for the details of Manual Tasks.

Business Rule

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. The InputOutputSpecification of the Task (see page 210) will allow the Process to send data to and receive data from the Business Rules Engine.

A Business Rule Task object shares the same shape as the Task, which is a rectangle that has rounded corners. However, there is a graphical marker in the upper left corner of the shape that indicates that the Task is a Business Rule Task (see Figure 10.11).

A Business Rule Task is a rounded corner rectangle that MUST be drawn with a single thin line and includes a marker that distinguishes the shape from other Task types (as shown in Figure 10.19).

Business Process Model and Notation (BPMN), v2.0.2

161

Figure 10.19 – A Business Rule Task Object

The Business Rule Task inherits the attributes and model associations of Activity (see Table 10.3). Table 10.11 presents the additional attributes of the Business Rule Task.

Table 10.11 – Business Rule Task attributes and model associations

Attribute Name

Description/Usage

 

 

implementation: string =

This attribute specifies the technology that will be used to implement the

##unspecified

Business Rule Task. Valid values are "##unspecified" for leaving the

 

implementation technology open, "##WebService" for the Web service

 

technology or a URI identifying any other technology or coordination protocol.

 

The default technology for this task is unspecified.

 

 

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.

A Script Task object shares the same shape as the Task, which is a rectangle that has rounded corners. However, there is a graphical marker in the upper left corner of the shape that indicates that the Task is a Script Task (see Figure 10.11).

A Script Task is a rounded corner rectangle that MUST be drawn with a single thin line and includes a marker that distinguishes the shape from other Task types (as shown in Figure 10.20).

Figure 10.20 – A Script Task Object

The Script Task inherits the attributes and model associations of Activity (see Table 10.3). Table 10.12 presents the additional attributes of the Script Task.

162

Business Process Model and Notation (BPMN), v2.0.2