Participant A

Se nd Me ssag e

Messa ge

B

 

Participant

R ece ive

Me ssag e

 

Figure 11.16 – A Collaboration view of a Choreography Task with a multiple Participant

The Choreography Task element inherits the attributes and model associations of Choreography Activity (see Table 11.1). Table 11.2 presents the additional model associations of the Choreography Task element.

Table 11.2 – Choreography Task Model Associations

Attribute Name

Description/Usage

 

 

messageFlowRef: Message Flow

Although not graphical represented, Choreography Task contains one or

[1..*]

more Message Flows that represent the interaction(s) between the

 

 

Participants referenced by the Choreography Task.

 

 

11.5.2 Sub-Choreography

A Sub-Choreography is a compound Activity in that it has case, a Choreography. Each Sub-Choreography involves

Choreography and each of the Participants are all displayed notation. There are two or more Participant Bands and one

detail that is defined as a flow of other Activities, in this two or more Participants. The name of the Sub-

in the different bands that make up the shape’s graphical

Sub-Process Name Band.

The Sub-Choreography can be in a collapsed view that hides its details (see Figure 11.17) or a Sub-Choreography can be expanded to show its details (a Choreography Process) within the Choreography Process in which it is contained (see Figure 11.19). In the collapsed form, the Sub-Process object uses a marker to distinguish it as a SubChoreography, rather than a Choreography Task.

The Sub-Process marker MUST be a small square with a plus sign (+) inside. The square MUST be positioned at the bottom center of the Sub-Process Name Band within the shape.

The Participant Band of the Participant that does not initiate the interaction MUST be shaded with a light fill.

328

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

Initiating

Participant

Band

Participant A

 

 

Choreography

 

 

Sub-Process

Sub-Process

 

Name

Name Band

Participant

Participant B

 

Band

 

 

Figure 11.17– A Sub-Choreography

Figure 11.18 shows an example of a potential Collaboration view of the above Sub-Choreography.

Participant A

Participant B

Figure 11.18 – A Collaboration view of a Sub-Choreography

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

329

Figure 11.19 shows an example of an expanded Sub-Choreography.

P arti ci pan t A

P arti ci pan t C

Choreo graph y Su b-P roce ss N ame

P arti ci pant C

 

Participa nt A

C h oreog raphy

 

C horeo grap hy

Ta sk N a me

 

Task Nam e

P arti ci pant B

 

Participa nt C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P arti ci pan t B

Figure 11.19 – An expanded Sub-Choreography

Figure 11.20 shows an example of a potential Collaboration view of the above Sub-Choreography.

Participant B Participant A

Send

Message

Receive

Message

 

M1

M2

C

 

 

Participant

R eceive

Send

Message

Message

 

 

Figure 11.20 – A Collaboration view of an expanded Sub-Choreography

330

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

The Parent Sub-Choreography (Expanded)

The Choreography Activity shares the same shape as a Sub-Process or any other BPMN Activity, which is in this state.

A Sub-Choreography is a rounded corner rectangle that MUST be drawn with a single thin line.

The use of text, color, size, and lines for a Sub-Choreography MUST follow the rules defined in “Use of Text, Color, Size, and Lines in a Diagram” on page 39.

The three or more partitions in the Sub-Choreography shape provide the distinction between this type of Task and an Orchestration Sub-Process (in a traditional BPMN diagram).

It is possible for a Sub-Choreography to involve more than two Participants. In this case, an additional Participant Band will be added to the shape for each additional Participant (see Figure 11.21). The ordering and position of the Participant Band (either in the upper or lower positions) is up to the modeler or modeling tool. In addition, any Participant Band beyond the first two optional; it is displayed at the discretion of the modeler or modeling tool. However, each Participant Band that is added MUST be added to the upper and lower sections of the SubChoreography in an alternative manner.

Participant A

Participant C

Choreography

Task Name

Participant B

Participant A

Participant C

Choreography

Sub-Process

Name

Participant D

Participant B

Figure 11.21 – Sub-Choreography (Collapsed) with More than Two Participants

As with a standard Orchestration Sub-Process, the Sub-Choreography MAY have internal markers to show how the Sub-Choreography MAY be repeated. There are two types of internal markers (see Figure 11.22):

A Sub-Choreography MAY have only one of the three markers at one time.

The marker for a Sub-Choreography that is a standard loop MUST be a small line with an arrowhead that curls back upon itself. The loopType of the Sub-Choreography MUST be Standard.

The marker for a Sub-Choreography that is parallel multi-instance MUST be a set of three vertical lines. The loopType of the Sub-Choreography MUST be MultiInstanceParallel.

The marker for a Sub-Choreography that is sequential multi-instance MUST be a set of three horizontal lines. The loopType of the Sub-Choreography MUST be MultiInstanceSequential.

The marker that is present MUST be centered at the bottom of the Sub-Process Name Band of the shape.

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

331

Participant A

 

Participant A

 

Participant A

C horeography

 

C horeography

 

C horeography

S ub -Proc ess

 

S ub -Proc ess

 

S ub-Process

N ame

 

N ame

 

N am e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Participant B

 

Participant B

 

Participant B

Figure 11.22 – Sub-Choreography Markers

There are situations when a Participant for a Sub-Choreography is actually a multi-instance Participant. A multiinstance Participant represents a situation where there are more than one possible related Participants (PartnerRoles/ PartnerEntities) that can be involved in the Choreography. For example, in a Choreography that involves the shipping of a product, there can be more than one type of shipper used, depending on the destination. When a Participant in a Choreography contains multiple instances, then a multi-instance marker will be added to the Participant Band for that Participant (see Figure 11.23).

The marker for a Sub-Choreography that is multi-instance MUST be a set of three vertical lines. The marker that is present MUST be centered at the bottom of the Participant Band of the shape.

The width of the Participant Band will be expanded to contain both the name of the Participant and the multi-instance marker.

Participant A

Choreography

Sub-Process

Name

Participant B

Figure 11.23 – Sub-Choreography Markers with a multi-instance Participant

This includes Compensation Event Sub-Processes (contained within a Sub-Choreography) as well as the external Compensation Activity connected through an Association.

The Sub-Choreography element inherits the attributes and model associations of Choreography Activity (see Table 11.1) and FlowElementsContainer (see Table 8.45). Table 11.3 presents the additional model associations of the

GlobalChoreographyTask element:

Table 11.3 – Sub-Choreography Model Associations

Attribute Name

Description/Usage

 

 

artifacts: Artifact [0..*]

This attribute provides the list of Artifacts that are contained within the Sub-

 

Choreography.

 

 

332

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