Prev | Next |
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
This 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
- BPMN1.1::Activity::InMessageRef
- BPMN1.1::Activity::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, these steps take place:
(1) Create a new element BPMN2.0::Operation (this is the bridging element)
(2) Insert the reference tag 'BPMN2.0::Activity::operationRef'
(3) Migrate BPMN1.1::Activity::InMessageRef to BPMN2.0::Operation::InMessageRef
- A BPMN1.1::Transaction referenced by a BPMN1.1::Activity::TransactionRef
> BPMN1.1::Transaction::TransactionMethod
> BPMN1.1::Transaction::TransactionProtocol
- A BPMN1.1::WebService referenced by a BPMN1.1::Activity::WebServiceRef,
BPMN1.1::StartEvent::WebServiceRef,
BPMN1.1::IntermediateEvent::WebServiceRef,
BPMN1.1::EndEvent::WebServiceRef
> BPMN1.1::WebService::Operation
> BPMN1.1::WebService::Interface
> BPMN1.1::WebService::ParticipantRef
- A BPMN1.1::Condition referenced by a BPMN1.1::StartEvent::ConditionRef,
BPMN1.1::IntermediateEvent::ConditionRef
> BPMN1.1::Condition::ConditionExpression
Taking BPMN1.1::Activity::TransactionRef as an example, these steps take place:
(1) Find element BPMN1.1::Transaction by BPMN1.1::Activity::TransactionRef
(2) Migrate this referenced BPMN1.1::Transaction::TransactionMethod's value to
BPMN2.0::Activity::transactionMethod
(3) Migrate this referenced BPMN1.1::Transaction::TransactionProtocol's value to
BPMN2.0::Activity::transactionProtocol
Learn more