Creating a SysML – Jama Reference Connection
- Begin with a SysML project with a requirement structure in Jama_Tutorial.mdzip (or your own), right-click the top-level package, and launch the Syndeia dashboard (Figure 1).
Figure 1 Launching Syndeia dashboard
- To connect to Jama, right-click the Jama category under Repositories in the Repository Manager tab and select Add… (Figure 2), then enter a name, your own Jama URL and credentials, and click OK (Figure 3).
Figure 2 Adding a Jama network connection
Figure 3 Entering Jama repository info
- Your repository should load and expand to show projects, components, sets, and requirements, as in Figure 4.
Figure 4 Viewing Jama repository contents in Repository Manager tab - To connect ANY SysML element to ANY Jama element (without exchanging data), select Reference for Connection Type and drag the element on one side onto the element on the other you wish to connect (Figure 5). These connections will show in the Connection Browser and Connection Summary tabs and in the Syndeia visualizations.
Figure 5 Creating a Reference Connection
SysML to Jama Requirement Transform
- Open the Jama_Tutorial model and launch Syndeia from the Jama Connections folder, if not already open from the previous exercise. 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 (Figure 1).
Figure 1 Connection Manager tab, Syndeia dashboard, selecting Jama repository on right
With Model Transform Connection Type selected, drag and drop the top-level requirement (System Requirement Spec) from SysML to a Jama project or component and click ‘Yes’ when prompted (we use empty Jama_Tutorial component in Figure 2).
Figure 2 Drag and drop SysML requirement onto Jama projectIf dropped onto a Jama project, Syndeia creates an auto-named set (called “Architectural Requirements”) and a component to contain the set (called “System Architecture (SysML)”) and then creates requirements inside the set. If dropped directly onto an existing component, Syndeia creates an auto-named set (called “Architectural Requirements”) and then creates requirements inside the set. Expand the new component/set to view the new requirements (Figure 3).
Figure 3 Syndeia dashboard showing new Jama requirements, set and component on RHS
Right-click > Open (Figure 3) to view the new requirements directly in the Jama interface (Figure 4).
Figure 4 Jama web interface showing one of the new requirements- Go to the Connection Browser tab in Syndeia and right-click > Refresh, then right-click > Expand All to view the model transform connections that were created between SysML and Jama (Figure 5).
Figure 5 Connection Manager tab, Syndeia dashboard, showing new connections between SysML and Jama elements.
Jama to SysML Requirement Transform
- Open the Jama_Tutorial model and launch Syndeia from the Jama Connections folder, if not already open from the previous exercise. 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 (Figure 1).
Figure 1 Connection Manager tab, Syndeia dashboard, selecting Jama repository on right
- With Model Transform Connection Type selected, drag and drop either a set or a requirement from Jama to a SysML package, and click ‘Yes’ when prompted (Figure 2). We are using the same requirement structure (System Requirement Spec) created in the previous exercise, but any similar structure could be used.
Figure 2 Drag and drop Jama requirement onto SysML package - Expand and view new SysML requirements both in the Connection Manager’s SysML tree (Figure 3) as well as in the Containment tree (Figure 4).
Figure 3 Syndeia dashboard showing new SysML requirements
Figure 4 Rhapsody model browser showing new SysML requirements
Jama - SysML Compare & Sync
- 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 Jama_Tutorial.mdzip and their Jama repository. In this example, we used the conditions after Exercise 7.2.
- 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).
Figure 1 Connection Browser tab, Syndeia dashboard, comparing across connection - The Comparison Result tab will open and the results should appear similar to Figure 2.
Figure 2 Initial comparison result Modify the Regulatory Requirements text field in Rhapsody and add a sub-requirement, FCC Regulations, as shown in Figure 3.
Figure 3 Modifying Regulatory Requirements in Rhapsody- Compare across the same connection as in Step 2 and display the comparison results (Figure 4).
Figure 4 Comparison Results after modifying MagicDraw requirements - Return to the Connection Browser, click Refresh to show the new child requirement, right-click the Regulatory Requirements connection and select Sync SysML -> Target (Figure 5).
Figure 5 Syncing SysML changes to Jama - Repeat the comparison as in Step 2 and check that the Comparison Result shows all green, as in Figure 6.
Figure 6 Comparison Results after syncing SysML to Target - Check the same requirement in Jama through its web interface to see the modified requirement text and sub-requirement (Figure 7).
Figure 7 Jama web interface showing modified requirements - While in the Jama interface, modify the requirement text again and add one more sub-requirement called Communications Requirement (Figure 8).
Figure 8 Making changes to Jama requirements in Jama web interface - Repeat the comparison as in Step 5 to see the changes (Figure 9).
Figure 9 Comparison Results after modifying Jama requirements - In the Connection Browser, right-click the Regulatory Requirements connection and select Sync Target → SysML.
- View the new requirement and updated text in the Rhapsody model (Figure 10).
Figure 10 Rhapsody model showing modified requirements (highlighted in red).