QPR Knowledge Base

Activities

Hide Navigation Pane

Activities

Previous topic Next topic No expanding text in this topic  

Activities

Previous topic Next topic JavaScript is required for expanding text Mail us feedback on this topic!  

Comments (...)

An activity is work that is performed within a business process. An activity can be atomic or non-atomic (compound). There are two types of activities: sub-process and task. They are represented with rounded rectangles.

 

Activity is quite similar to the activity and sub-process elements in the default template of QPR ProcessGuide.

 

 

Creating and Modifying Activities

Tool Palette of the BPMN template contains tools for creating sub-processes sub_process and tasks btn_activity. When you have selected the right tool in the Tool Palette, create a new sub-process or task by pointing and clicking the location for it in the flow chart. If you create a sub-process, a new process level is added to the model.

 

You can edit the properties of activities (such as the attributes listed in the tables below) by right-clicking on the element in the flow chart view and selecting Set Process Step Properties... For further information on this dialog, see topic "Process Step Dialog" in QPR ProcessGuide - User's Guide. Using the pop-up context menu, you can also change directly some of the activity properties, such as hiding or showing the subprocess content in the case of a sub-process, or changing the task type in the case of a task.

 

 

Common Activity Attributes

All activities share some common attributes. These common attributes are described in the following table.

 

Attribute / Attribute group

Cardinality

Type

Description

Common Activity Attributes



 

Status

1

String

The status of a process is determined when the process is being executed by a process engine. The status of a process can be used within assignment expressions. The possible options are:

None
Ready
Active
Cancelled
Aborting
Aborted
Completing
Completed

Performers

N

String

One or more Performers may be entered. The Performer attribute defines the resource that will perform or will be responsible for the activity.

Properties

N

Property

Property, which is used in the definition of attributes for a process and common activity attributes.

InputSets

N

Input

The InputSets attribute defines the data requirements for input to the activity. Each InputSet is sufficient to allow the activity to be performed (if it has first been instantiated by the appropriate signal arriving from an incoming sequence flow).

OutputSets

N

Output

The OutputSets attribute defines the data requirements for output from the activity.

IORules

N

Expression

This attribute is an expression that defines the relationship between one InputSet and one OutputSet.

StartQuantity

1

Integer

This attribute defines the number of tokens that must arrive from a single sequence flow before the activity can begin. The default value is 1.

CompletionQuantity

1

Integer

This attribute defines the number of Tokens that must be generated from the activity. The default value is 1.

LoopType

1

String

If the value of this attribute is something else than none, the loop marker is placed at the bottom center of the activity shape. The possible options are:

None
Standard: A boolean expression is evaluated after each cycle of the loop. If the expression is still true, then the loop will continue.
MultiInstance: A numeric expression is evaluated only once before the activity is performed. The result of the expression evaluation will be an integer that will specify the number of times that the activity will be repeated.

Standard Loop Attributes



 

LoopCondition

1

Expression

Standard loops have a boolean expression to be evaluated, plus the timing when the expression is evaluated.

LoopCounter

1

Integer

This attribute is used at runtime to count the number of loops and is automatically updated by the process engine.

LoopMaximum

1

Integer

This is an optional attribute that provides is a simple way to add a cap to the number of loops.

TestTime

1

String

This attribute defines whether the expressions are evaluated before the activity begins or after the activity finishes. The possible options are:

Before
After

Multi-Instance Loop Attributes



 

MI_Condition

1

Expression

MultiInstance loops have a numeric expression to be evaluated.

LoopCounter

1

Integer

This attribute is used at runtime to count the number of loops and is automatically updated by the process engine.

MI_Ordering

1

String

This attribute defines whether the loop instances will be performed sequentially or in parallel. The possible options are:

Sequential
Parallel

Parallel MI_Ordering Attributes



 

MI_FlowCondition

1

String

This attribute is equivalent to using a gateway to control the flow past a set of parallel paths. The possible options are:

All
None
One
Complex

ComplexMI_FlowCondition Attributes



 

ComplexMI_FlowCondition

1

Expression

This attribute determines when and how many Tokens will continue

past the activity.

Compensation

1

String

This attribute controls the compensation marker for task and sub-process elements. Possible values are:

•        true  (the compensation marker is visible)

•        false

 

 

Sub-Process

A Sub-Process is a compound activity in that it has detail that is defined as a flow of other activities. A sub-process is a graphical object within a process flow, but it also can be “opened up” to show another process (either embedded or independent).

 

The sub-process can be in a collapsed view that hides its details or a sub-process 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, there is a “plus” sign in the lower-center of the shape indicating that the activity is a sub-

process and has a lower-level of detail. For further information on showing or hiding sub-process contents, see topic "Use Pop-up Menus to Modify Elements in Flow Chart" in QPR ProcessGuide - User's Guide.

 

pic_subprocess

 

BPMN specifies five types of standard markers for sub-processes. The collapsed sub-process marker can be combined with four other markers: a loop marker or a parallel marker, a compensation marker, and an ad hoc marker. A collapsed sub-process may have one to three of these other markers, in all combinations except that loop and multiple instance cannot be shown at the same time. In QPR ProcessGuide sub-process markers are implemented with attribute set enumerated BPMN attribute symbols to the BPMN template.

 

pic_subprocess_markers

 

A sub-process, either collapsed or expanded, can be set to be a transaction, which will have a special behavior that is controlled through a transaction protocol (such as BTP or WSTransaction). The boundary of the activity will be double-lined to indicate that it is a transaction, as illustrated in the following figure.

 

pic_subprocess_transaction

 

In QPR ProcessGuide, there are the following three sub-process element types in the BPMN template:

Embedded sub-processes: Modeling is done inside the sub-process container.
Independent sub-processes: Sub-process modeling can be done in the sub-process level.
Reference sub-processes: Reference is made to external processes.

 

The attributes for a sub-process are described in the following table.

 

 

Attribute / Attribute group

Cardinality

Type

Description

SubProcessType

1

String

This attribute defines whether the sub-process details are embedded within the higher level Process or refers to another, re-usable process. The possible options are:

Embedded (the default): an activity that contains other activities (a process).
Independent: an activity within a process that “calls” to another process that exists within the diagram.
Reference: a sub-process that references another sub-process that has been defined.

IsATransaction

1

Boolean

This attribute determines whether or not the behavior of the sub-process will follow the behavior of a transaction.

Transaction Attributes


 

 

Transaction

1

Attribute set

 

TransactionId

1

String

This attribute provides an identifier for the transactions used within a diagram.

TransactionProtocol

1

String

This attribute identifies the protocol (e.g., WS-Transaction or BTP) that will be used to control the transactional behavior of the sub-process.

TransactionMethod

1

String

This attribute defines the technique that will be used to undo a transaction that has been cancelled. The possible options are:

Compensate (the default)
Store
Image

Embedded Sub-Process Attributes




AdHoc

1

Boolean

Specifies whether the embedded sub-process is ad hoc or not. The default value is false.

AdHoc Attributes




AdHocOrdering

1

String

Defines if the activities within the process can be performed in parallel or must be performed sequentially. The default setting is parallel and the setting of sequential is a restriction on the performance that may be required due to shared resources.

AdHocCompletionCondition

1

Expression

This attribute defines the conditions when the process will end.

Reusable Sub-Process Attributes




DiagramRef

1

String

This attribute defines the business process diagram e.g. the model name and path from ProcessGuide server.

ProcessRef

1

String

This attribute defines the reference to process.

InputMaps

N

Expression

Multiple input mappings may be made between properties of the independent sub-process and the properties of the process referenced by this object. These mappings are in the form of an expression.

OutputMaps

N

Expression

Multiple output mappings may be made between properties of the independent sub-process and the properties of the process referenced by this object. These mappings are in the form of an expression.

Reference Sub-Process Attributes




SubProcessRef

1

ProcessStep

Identifies the sub-process being referenced. A dialog is opened for selecting the model element.

 

Task

A Task is an atomic activity that is included within a process. A task is used when the work in the process is not broken down to a finer level of process model detail. Generally, an end-user and/or an application are used to perform the task when it is executed.

 

pic_task

 

BPMN specifies three types of markers for a task: a loop marker or a multiple instance marker and a compensation marker. A task may have one or two of these markers. In QPR ProcessGuide task markers are implemented with attribute set enumerated BPMN attribute symbols to the BPMN template.

 

pic_loops

 

The attributes for a task are described in the following table.

 

Attribute / Attribute group

Cardinality

Type

Description

TaskType

1

String

The type of task. The possible options are:

None
Service (the default): a task that provides some sort of service, which could be a Web service or an automated application
Receive: a task that is designed to wait for a message to arrive from an external participant. Once the message has been received, the task is completed.
Send: a task that is designed to send a message to an external participant. Once the message has been sent, the task is completed.
User: a “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.
Script: a task which 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.
Manual: a task that is expected to be performed without the aid of any business process execution engine or any application.
Reference: a task that references another activity that has been defined. If the two (or more) activities share the exact same behavior, then by one referencing the other, the attributes that define the behavior only have to be created once and maintained in only one location.

Service Task Attributes




InMessageRef

1

MessageRef

A Message for the InMessageRef attribute must be entered. This indicates that the Message will be received at the start of the Task, after the availability of any defined InputSets. In QPR ProcessGuide separate elements are used as messages. MessageRef type is a relation attribute to Message element. A dialog is opened for selecting the message element.

OutMessageRef

1

MessageRef

A Message for the OutMessageRef attribute must be entered. The sending of this message marks the completion of the Task, which may cause the production of an OutputSet. In QPR ProcessGuide separate elements are used as messages. MessageRef type is a relation attribute to Message element. A dialog is opened for selecting the message element.

Implementation

1

String

This attribute specifies the technology that will be used to receive the message. The possible options are:

Web service (the default)
Other
Unspecified

Receive Task Attributes




MessageRef

1

MessageRef

A Message for the MessageRef attribute must 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). In QPR ProcessGuide separate elements are used as messages. MessageRef type is a relation attribute to Message element. A dialog is opened for selecting the message element.

Instantiate

1

Boolean

Receive tasks can be defined as the instantiation mechanism for the process with the Instantiate attribute. The possible options are:

True
False

Implementation

1

String

This attribute specifies the technology that will be used to receive the message. The possible options are:

Web service (the default)
Other
Unspecified

Send Task Attributes




MessageRef

1

MessageRef

A Message for the MessageRef attribute MUST 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). In QPR ProcessGuide separate elements are used as messages. MessageRef type is a relation attribute to Message element. A dialog is opened for selecting the message element.

Implementation

1

String

This attribute specifies the technology that will be used to receive the message. The possible options are:

Web service (the default)
Other
Unspecified

User Task Attributes




InMessageRef

1

MessageRef

A Message for the InMessageRef attribute must be entered. This indicates that the Message will be received at the start of the Task, after the availability of any defined InputSets.  In QPR ProcessGuide separate elements are used as messages. MessageRef type is a relation attribute to Message element. A dialog is opened for selecting the message element.

OutMessageRef

1

MessageRef

A Message for the OutMessageRef attribute must be entered. The sending of this message marks the completion of the Task, which may cause the production of an OutputSet. In QPR ProcessGuide separate elements are used as messages. MessageRef type is a relation attribute to Message element. A dialog is opened for selecting the message element.

Implementation

1

String

This attribute specifies the technology that will be used to receive the message. The possible options are:

Web service (the default)
Other
Unspecified

Script Task Attributes




Script

1

String

This attribute defines a script that can be run when the task is performed. If a script is not included, then the task will act equivalent to a task type of None.

Manual Task Attributes




 



There are no specific attributes for manual task.

Reference Task Attributes




TaskRef

1

Task

This attribute defines the task being referenced. A dialog is opened for selecting the model element.

 

Comments (...)