Chapter 2. Business Process Modeling and Notation Version 2.0
The Business Process Modeling and Notation Version 2.0 (BPMN2) specification is an Object Management Group (OMG) specification that defines standards for graphically representing a business process, defines execution semantics for the elements, and provides process definitions in XML format.
A process is defined or determined by its process definition. It exists in a knowledge base and is identified by its ID.
Table 2.1. General process properties
Label | Description |
---|---|
Name | Enter the name of the process. |
Documentation | Describes the process. The text in this field is included in the process documentation, if applicable. |
ID |
Enter an identifier for this process, for example |
Package |
Enter the package location for this process in your Red Hat Process Automation Manager project, for example |
ProcessType | Specify whether the process is public or private. (Currently not supported.) |
Version | Enter the artifact version for the process. |
Ad hoc | Select this option if this process is an ad hoc subprocess. |
Process Instance Description | Enter a description of the purpose of the process. |
Imports | Click to open the Imports window and add any data type classes required for your process. |
Executable | Select this option to make the process executable part of your Red Hat Process Automation Manager project. |
SLA Due Date | Enter the service level agreement (SLA) expiration date. |
Process Variables |
Add any process variables for the process. Process variables are visible within the specific process instance. Process variables are initialized at process creation and destroyed on process completion. Variable tags provide greater control over variable behavior, for example whether the variable is tagged as |
Metadata Attributes | Add any custom metadata attribute name and value that you want to use for custom event listeners, such as a listener to implement some action when a metadata attribute is present. |
Global Variables | Add any global variables for the process. Global variables are visible to all process instances and assets in a project. Global variables are typically used by business rules and constraints and are created dynamically by the rules or constraints. |
A process is a container for a set of modeling elements. It contains elements that specify the execution workflow of a business process or its parts using flow objects and flows. Each process has its own BPMN2 diagram. Red Hat Process Automation Manager contains the new process designer for creating BPMN2 diagrams and the legacy process designer to open the old BPMN2 diagram with .bpmn2
extension. The new process designer has an improved layout and feature set and continues to develop. By default, the new diagrams are created in the new process designer.
2.1. Red Hat Process Automation Manager support for BPMN2
With Red Hat Process Automation Manager, you can model your business processes using the BPMN 2.0 standard. You can then use Red Hat Process Automation Manager to run, manage, and monitor these business processes. The full BPMN 2.0 specification also includes details on how to represent items such as choreographies and collaboration. However, Red Hat Process Automation Manager uses only the parts of the specification that you can use to specify executable processes. This includes almost all elements and attributes as defined in the Common Executable subclass of the BPMN2 specification, extended with some additional elements and attributes.
The following table contains a list of icons used to indicate whether a BPMN2 element is supported in the legacy process designer, the legacy and new process designer, or not supported.
Table 2.2. Support status icons
Key | Description |
---|---|
| Supported in the legacy and new process designer |
| Supported in the legacy process designer only |
| Not supported |
Elements that have no icon do not exist in the BPMN2 specification.
Table 2.3. BPMN2 catching events
Element Name | Start | Intermediate |
---|---|---|
None |
| |
Message |
|
|
Timer |
|
|
Error |
|
|
Escalation |
|
|
Cancel |
| |
Compensation |
|
|
Conditional |
|
|
Link |
| |
Signal |
|
|
Multiple |
|
|
Parallel Multiple |
|
|
Table 2.4. BPMN2 throwing and non-interrupting events
Element Name | Throwing | Non-interrupting | ||
---|---|---|---|---|
End | Intermediate | Start | Intermediate | |
None |
| |||
Message |
|
|
|
|
Timer |
|
| ||
Error |
| |||
Escalation |
|
|
|
|
Cancel |
|
|
| |
Compensation |
|
| ||
Conditional |
|
| ||
Link |
| |||
Signal |
|
|
|
|
Terminate |
| |||
Multiple |
|
|
|
|
Parallel Multiple |
|
|
Table 2.5. BPMN2 elements
Element type | Element | Supported |
---|---|---|
Task | Business rule |
|
Script |
| |
User task |
| |
Service task |
| |
Subprocesses, including multiple instance subprocesses | Embedded |
|
Ad hoc |
| |
Reusable |
| |
Event |
| |
Gateways | Inclusive |
|
Exclusive |
| |
Parallel |
| |
Event-based |
| |
Complex |
| |
Connecting objects | Sequence flows |
|
Association flows |
| |
Swimlanes | Swimlanes |
|
Artifacts | Group |
|
Text annotation |
|
For more information about the background and applications of BPMN2, see the OMG Business Process Model and Notation (BPMN) Version 2.0 specification.