Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Objectives

The new learning objectives of this exercise are to compare connected requirements models in Jama and Cameo/MagicDraw (via custom mappings) and to synchronize changes that have arisen.  These changes will be demonstrated by both adding and removing Jama requirements, comparing those changes in Syndeia client, and syncing both to Jama connect and SysML.

This tutorial will consist of 2 parts.

  • Part 1: Sync SysML to Jama

    • Transform requirements from Jama to SysML using custom mappings

    • 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 19.0 (or MagicDraw with SysML plug-in) or later installed correctly on his or her machine with a valid license for use.

  • Syndeia 3.6 or later 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.

Using mapping in Syndeia requires two new elements which are provided with these tutorials

  1. A mappings file, syndeia34Tutorial.mappings (get it here -SysML Models, Profiles and Mappings), which contains the specific starting mappings used in this and the following exercises. To install this,

    1. Close MagicDraw, if it is open

    2. Rename the existing syndeia.mappings file in the .syndeia folder to something like syndeiaOld.mappings

    3. Copy syndeia34Tutorial.mappings into the .syndeia folder

    4. Rename syndeiaTutorial.mappings as syndeia.mappings

    5. When you have completed the mapping tutorial exercises, you may want to reverse this process to restore the original mappings file.

  2. A mappings profile,Syndeia_Mapping_Tutorials_Profile.mdzip (get it here -SysML Models, Profiles and Mappings), which is loaded automatically with the SysML project Syndeia_Jama_Mapping_Tutorial.mdzip and can be used with other projects.

Exercise

Part 1 - Add/delete requirement in SysML and sync to Jama

  1. This exercise assumes the user has access to the SysML model Syndeia_Jama_Mapping_Tutorial.mdzip (get it here -SysML Models, Profiles and Mappings) and their Jama repository.

  2. Go to the Settings tab (Figure 1) and check the Use mapping element under the General heading, if not already checked. Click Apply.

Screenshot 2024-11-14 105130.pngImage RemovedScreenshot 2024-12-09 141023.jpgImage Added
  1. Go to the Mappings tab. The contents of the main area on the right will depend on the element selected on the left. Expand Mapping Groups and select SysML-Jama on the left to see the existing mappings in this area (Figure 2). Check the mapping spec for Requirement - Requirement (attributes).

Screenshot 2024-11-14 105153.png
  1. The first task is to drag a hierarchy of Jama requirements into Cameo to create an equivalent requirements structure using the custom mapping shown above. An example Jama structure ‘Product Spec’ is shown below in Figure 3.

Screenshot 2024-11-14 105635.png
  1. Go to the Connection Manager tab on the Syndeia dashboard, expand the SysML tree on the LHS, and select your Jama repository from the drop-down menu on the RHS as shown in Figure 4.

    1. With Model Transform Connection Type selected, drag the Product Spec Jama requirement onto the empty Cameo Package ‘From Jama’.

    2. Select the mapping spec ‘Requirement - Requirement (attributes)’ and click OK.

image-20241204-190230.png
  1. We can view the new SysML requirements generated by Syndeia in Cameo’s containment tree, as shown in Figure 5.

image-20241204-155520.png
  1. In the Connection Browser tab on the Syndeia dashboard, select the Product Spec connection created. Right-click and compare across that connection before any changes have been made to verify that all is in sync (Figure 6).

figure6.jpg
  1. The Comparison Result tab will open and the results should appear similar to Figure 7.

figure7.jpg
  1. Modify the ‘Product_Spec' text field in Cameo and add a sub-requirement, 'Feature_1_Safety’, as shown in Figure 8.

Screenshot 2024-11-15 153156.jpg
  1. Compare across the same connection as in Step 7 and display the comparison results (Figure 9).

figure9.jpg
  1. Return to the Connection Browser, click Refresh to show the new child requirement, right-click the connection and select Sync Source -> Target as shown in Figure 10.

Screenshot 2024-11-15 114349.jpg
  1. Repeat the comparison as in Step 2 and check that the Comparison Result shows all green, as in Figure 11.

figure11.jpg
  1. View the same requirement in Jama through its web interface to see the modified requirement text and sub-requirement (Figure 12).

Screenshot 2024-11-15 114630.jpg
  1. Now, return to Cameo and in the containment tree delete a child requirement underneath Product_Spec as shown in Figure 13.

Screenshot 2024-11-15 114828.jpg
  1. Repeat the Comparison Result step for the Product_Spec Connection.  The deleted Requirement should be flagged in Red in Syndeia as shown in Figure 14.

Screenshot 2024-11-15 114909.jpg
  1. In the Connection Browser of Syndeia, Right-click and select ‘Sync Source to Target’ for the connection as shown in Figure 15.

Screenshot 2024-11-15 114935.jpg
  1. After Syndeia is finished syncing, check that the Requirement no longer shows in Jama Connect as shown in Figure 16.

Screenshot 2024-11-15 115027.jpg

Part 2 - Add/delete requirement in Jama and sync to SysML

  1. In Jama, modify the text of ‘Product_Spec’ and add a new Requirement (Feature_1_Maintenance) underneath it as shown in Figure 17.

Screenshot 2024-11-15 163114.jpg
  1. From the Syndeia Dashboard, trigger a Comparison of the connection once again.  The changes should be shown in Red as seen in Figure 18.

figure18.jpg
  1. From the Connection Browser tab, right click the connection and select ‘Sync Target to Source’ as shown in Figure 19.

Screenshot 2024-11-15 115513.jpg
  1. Return to Cameo and verify that the new changes have been made in the containment tree and properties shown in Figure 20.

Screenshot 2024-11-15 115610.jpg
  1. From Jama Connect, delete a requirement underneath Product_Spec Requirements as shown in Figure 21.

Screenshot 2024-11-15 115740.jpg
  1. From the Syndeia dashboard, compare the Product_Spec Requirements connection again and check that the deleted requirement appears in red as shown in Figure 22.

Screenshot 2024-11-15 115859.jpg
  1. Now from the Connection Browser, right click on the connection and select ‘Sync Target to Source’ as shown in Figure 23.

Screenshot 2024-11-15 115928.jpg
  1. Check in Cameo that the Requirement ‘Feature_1_Environmental’ has been moved to the Parent Package level in the Containment Tree as shown in Figure 24.

Screenshot 2024-11-15 115959.jpg

Future improvements in Syndeia will include a setting to allow the user to either delete the requirement or move it to the parent level in SysML. For any questions, please reach us on our helpdesk.

  1. Compare the connection from Syndeia one last time to check that everything is showing green.

Screenshot 2024-11-15 120028.jpg