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 Technology' ribbon option, and select the 'Enable' checkbox for each of the two Technologies).
- Select the SysML 1.3 Package in the Browser window.
- Open the Scripting window and open the SysML 1.4 script group.
- 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 Technology' ribbon option, and select the 'Enable' checkbox for each of the two Technologies).
- Select the SysML 1.2 Package in the Browser window.
- Open the Scripting window and open the SysML 1.3 script group.
- Execute the Migrate script.
Migrate SysML 1.1 to SysML 1.3
Firstly, work through the steps in Script for Migrating SysML 1.1 to SysML 1.2.
Then work through 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 Browser window 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