Migrate BPMN 1.1 Model to BPMN 2.0

It is possible to migrate a BPMN 1.1 model (or part of a model) to BPMN 2.0, using the Automation Interface function Migrate(). This function updates the Tagged Values and, if required, stereotypes to BPMN 2.0 for all elements, attributes, connectors and diagrams under the selected package or element.

Example

The following VB script calls the Migrate() function to migrate the package or element to BPMN 2.0:

 

Sub MigrateElement (sGUID, lngPackageID)

 Dim proj as EA.Project

 set proj = Repository.GetProjectInterface

 proj.Migrate sGUID, "BPMN1.1", "BPMN2.0"

 

 'refresh the model

 If lngPackageID<>0 Then

         Repository.RefreshModelView (lngPackageID)

 End If

End Sub

 

Sub MigrateSelectedItem

 Dim selType

 Dim selElement as EA.Element

 Dim selPackage as EA.Package

 selType = GetTreeSelectedItemType

 If selType = 4 Then 'means Element

               set selElement = GetTreeSelectedObject

         MigrateElement selElement.ElementGUID, selElement.PackageID

         MsgBox "Element Migration Completed",0,"BPMN 2.0 Migration"

 ElseIf selType = 5 Then 'means Package

         set selPackage = GetTreeSelectedObject

         MigrateElement selPackage.PackageGUID, selPackage.PackageID

         MsgBox "Package Migration Completed",0,"BPMN 2.0 Migration"

 Else

         MsgBox "Select a Package or Element in the Project Browser to initiate migration",0,"BPMN 2.0 Migration"

 End If

End Sub

 

Sub Main

 MigrateSelectedItem

End Sub

 

Main

 

Notes

Please backup your project before you run the BPMN 2.0 Migrator
Normalization occurs on the following tags:
BPMN1.1::Activity::InMessageRef
BPMN1.1::ctivity::OutMessageRef
BPMN1.1::Activity::IORules
BPMN1.1::Activity::InputSets
BPMN1.1::Activity::OutputSets
BPMN1.1::Activity::ComplexMI_FlowCondition
BPMN1.1::Activity::Performers
BPMN1.1::BusinessProcess::InputSets
BPMN1.1::BusinessProcess::OutputSets
BPMN1.1::BusinessProcess::Performers
BPMN1.1::EndEvent::ErrorCode
BPMN1.1::IntermediateEvent::ErrorCode
 
Taking BPMN1.1::Activity::InMessageRef as an example, the following steps take place:

(1)  Create a new element BPMN2.0::Operation

(2)  Insert the reference tag BPMN2.0::Activity::operationRef'

(3)  Migrate BPMN1.1::Activity::InMessageRef to BPMN2.0::Operation::InMessageRef
 

Denormalization occurs on the following tags:
BPMN1.1::Transaction::TransactionProtocol
BPMN1.1::WebService::Operation
BPMN1.1::WebService::Interface
BPMN1.1::WebService::ParticipantRef
BPMN1.1::Condition::ConditionExpression
BPMN1.1::BPELProcess::InputSets
BPMN1.1::BPELProcess::OutputSets
 

  Taking BPMN1.1::Transaction::TransactionMethod as an example, the following steps take place:

  (1) Find element BPMN1.1::Transaction by 'BPMN1.1::Transaction::TransactionProtocol

  (2) Migrate BPMN1.1::Transaction::TransactionMethod to BPMN2.0::transactionMethod

  (3) Migrate BPMN1.1::Transaction::TransactionProtocol  to BPMN2.0::transactionProtocol
 

If a BPMN1.1 stereo tag is discarded in BPMN2.0, it is preserved if the tag has a value

Learn more