Prev Next

Migrate SysML Model to Later SysML Version

Enterprise Architect provides a useful feature to migrate a model from one version of SysML to the next. A model (or part of a model) created in an older version of the SysML Technology can be migrated to the next version using the Automation Interface. This function updates the Tagged Values and, if required, stereotypes to the later version for all elements, attributes, connectors and diagrams under the selected Package or element.

There is no facility to migrate a model from SysML 1.4 to SysML 1.5, because the two releases are functionally the same.

Migrate SysML 1.3 to SysML 1.4

Enterprise Architect's support for SysML 1.4 has a built-in script for migrating 1.3 models to 1.4.

You must enable both the SysML 1.3 Technology and the SysML 1.4 Technology (select the 'Specialize > Technologies > Manage' ribbon option, and select the 'Enable' checkbox for each of the two Technologies).

  1. Select the SysML 1.3 Package in the Project Browser.
  2. Open the Scripting window and open the SysML 1.4 script group.
  3. Execute the Migrate script.

Migrate SysML 1.2 to SysML 1.3

Enterprise Architect's support for SysML 1.3 has a built-in script for migrating 1.2 models to 1.3.

You must enable both the SysML 1.2 Technology and the SysML 1.3 Technology (select the 'Specialize > Technologies > Manage' ribbon option, and select the 'Enable' checkbox for each of the two Technologies).

  1. Select the SysML 1.2 Package in the Project Browser.
  2. Open the Scripting window and open the SysML 1.3 script group.
  3. Execute the Migrate script.

Migrate SysML 1.1 to SysML 1.3

Firstly, follow the steps in Script for Migrating SysML 1.1 to SysML 1.2.

Then follow the steps in Migrate from SysML 1.2 to SysML 1.3.

Script for Migrating SysML 1.1 to SysML 1.2

Run this VB script, which calls the Migrate() function to migrate the SysML 1.1 Package or element to SysML 1.2:

Sub MigrateElement (sGUID, lngPackageID)

Dim proj as EA.Project

set proj = Repository.GetProjectInterface

proj.Migrate sGUID, "SysML1.1", "SysML1.2"

'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,"SysML Migration"

ElseIf selType = 5 Then 'means Package

set selPackage = GetTreeSelectedObject

MigrateElement selPackage.PackageGUID, selPackage.PackageID

MsgBox "Package Migration Completed",0,"SysML Migration"

Else

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

End If

End Sub

Sub Main

MigrateSelectedItem

End Sub

Main

Notes

  • When migrating from SysML 1.1 to SysML 1.2, the:
         -  Stereotype dimension is changed to quantitykind
         -  Stereotype dataType is removed from SysML 1.2
         -  Tagged Value dimension is migrated to quantitykind; this applies to stereotypes <<unit>>
             and <<valueType>>
         -  Tagged Value isConjugated in stereotype <<flowport>> is migrated to custom properties

Learn more