Exercise 7.4 - Jama - SysML Compare & Sync
Objectives
The new learning objectives of this exercise are to compare connected requirements models in Jama and Cameo/MagicDraw (via default mappings) and to synchronize changes that have arisen. These changes will be demonstrated by both adding and removing requirements in SysML / Jama, comparing, and synchronizing to Jama / SysML.
This tutorial will consist of 2 parts.
Part 1: Sync SysML to Jama
Add requirement in SysML, compare result, and sync to Jama
Delete requirement in SysML, compare result, and sync to Jama
Part 2: Sync Jama to SysML
Add requirement in Jama, compare result, and sync to SysML
Delete requirement in Jama, compare result, and sync to SysML
Preparation
This exercise assumes the student has:
Cameo System Modeler (or MagicDraw with SysML plug-in) supported version installed correctly on his or her machine with a valid license for use, and
Syndeia installed as a plugin for Cameo/MagicDraw with a valid license for use
Jama repository (server) that can be connected over the network from the Syndeia Repository Manager
The user can try out this capability in a sandbox Jama repository or project to ensure that their installation is working fine before using on a production repository / project.
Exercise
Part 1 - Add/delete requirement in SysML and sync to Jama
This exercise assumes the user has completed either Exercise 7.2 or 7.3 and created a set of linked requirements between the SysML model Syndeia_Jama_Mapping_Tutorial.mdzip (get it here - SysML Models, Profiles and Mappings) and their Jama repository.
In the Connection Browser tab on the Syndeia dashboard, select the Regulatory Requirements connection created in either exercise. Right-click and compare across that connection before any changes have been made to see that all is in sync (Figure 1).
The Comparison Result tab will open and the results should appear similar to Figure 2.
Modify the Regulatory Requirements text field in Cameo and add a sub-requirement, Structural Requirements, as shown in Figure 3.
Compare across the same connection as in Step 2 and display the comparison results (Figure 4). Syndeia shows that the new Structural Requirement in SysML is not present in Jama, and the text of the Regulatory Requirements is different.
Return to the Connection Browser, click Refresh to show the new child requirement, right-click the Regulatory Requirements connection and select Sync Source -> Target (Figure 5).
Repeat the comparison as in Step 2 and check that the Comparison Result shows all green, as in Figure 6. You can see the new ‘Structural Requirement’ has been added underneath Regulatory Requirements in Jama.
Check the same requirement in Jama through its web interface to see the modified requirement text and sub-requirement (Figure 7).
Now, return to Cameo and in the containment tree delete a child requirement underneath Regulatory Requirements as shown in Figure 8.
Return to the Syndeia client dashboard settings tab. Under Jama make sure the box for ‘Allow deletion during SysML and Jama synchronization’ is unchecked. If selected, Syndeia will delete Jama items (or SysML elements) when synchronizing SysML → Jama (or vice versa). Click Apply.
Compare the connection for parent requirement in Syndeia. Check that the deleted SysML requirement in Step 9 above shows red in the result as shown in Figure 10.
Right click and sync the connection from Source to Target in Syndeia Connection Search tab as shown in Figure 11.
Check that the child requirement is not deleted in Jama as a result shown in Figure 12. The Safety Requirement was not removed since the Jama setting in Step 10 was unchecked.
Return to the Syndeia client dashboard settings tab. Under Jama make sure the box for ‘Allow deletion during SysML and Jama synchronization’ is checked. Click Apply.
Repeat the Comparison Result step for the Regulatory Requirements Connection. The deleted Requirement should be flagged in Red as shown in Figure 14.
Again, Right click and sync the connection from Source to Target in Syndeia Connection Search tab as shown in Figure 15.
Check that the child requirement is now deleted in Jama as a result shown in Figure 16. The Safety requirement was deleted since the setting was checked in Step 14.
Part 2 - Add/delete requirement in Jama and sync to SysML
In Jama, modify the text of ‘Regulatory Requirements’ and add a new Requirement underneath it as shown in Figure 17 and 18.
From the Syndeia Dashboard, trigger a Comparison of the Regulatory Requirements connection once again. The changes should be shown in Red as seen in Figure 19.
From the Connection Browser tab, right click the connection and select ‘Sync Target to Source’ as shown in Figure 20.
Return to Cameo/Magicdraw and verify that the new changes have been made in the containment tree and properties shown in Figure 21.
From Jama Connect, delete the 'Interface Requirement' underneath Regulatory Requirements as shown in Figure 22.
Return to the Syndeia client dashboard settings tab. Under Jama make sure the box for ‘Allow deletion during SysML and Jama synchronization’ is checked. If selected, Syndeia will delete Jama items (or SysML elements) when synchronizing SysML → Jama (or vice versa). Click Apply.
From the Syndeia Dashboard, trigger a Comparison of the Regulatory Requirements connection once again. The changes should be shown in Red as seen in Figure 24.
Right click and sync the connection from Target to Source in Syndeia Connection Search tab again as shown in Figure 25.
Check in SysML that the child requirement has been deleted as shown in Figure 26. The Interface Requirement has been removed since the Jama setting to delete was checked.
Congratulations! You have now learned how to add/update/delete requirements in Cameo (or Jama), and compare/sync to Jama (or Cameo). Check out Exercise 7.9 to learn how to do this with custom mappings.