Defining a business process with BPMN2 involves using several elements from this modelling notation including activities, gateways, events, pools, lanes, and data objects. There is sometimes a need to change the type of an element, e.g. a user activity to a service activity, a parallel gateway to an exclusive gateway, a message start event to a timer...
Having to start over with a new element of the right type is not ideal especially when the existing element is associated with others, documented, and completed with BPMN2 properties (e.g. set as Catch or Throw). This article provides a Sparx Enterprise Architect hint to update and convert a BPMN element in just a few clicks using the toolbox.
A reminder on creating BPMN2 elements and selecting the initial type
1- When creating a BPMN2 activity, Enterprise Architect displays a list of the available types as illustrated below.
New BPMN 2 activity : manual task:
2- The same applies when creating a BPMN2 gateway.
New BPMN2 gateway BPMN2 (parallel):
3- When creating a BPMN2 event, the event category needs to be chosen first from the BPMN2 toolbox between the available options: Start Event, Intermediate Event, End Event.
Then Enterprise Architect displays a list of the available types as illustrated below for a start event.
New start event, triggered by a message:
Change, convert a BPMN2 element type with the Enterprise Architect toolbox
Once elements have been created, associated with other ones e.g. via sequence flows, documented with a description, and completed with BPMN2 properties (.e.g select Catch or Throw), having to replace each element with a new one can be time consuming.
Enterprise Architect makes it possible to change on the fly an activity type, a gateway type, or an event type and/or category. To achieve this, a new element (e.g. an activity) must be created from the Enterprise Architect BPMN2 toolbox and placed onto the existing element from the active diagram. As a result Enterprise Architect suggests a conversion to the new type.
Note: this hint also works with BPMN2 data objects, pools, and lanes.
- Example 1: convert a service activity to a user activity
- Example 2: convert a start event to a message intermediate event