Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

The new learning objective of this exercise is to create new SysML_DOORS NG mappings for Data Map and Model Transform connections. This is intended for an advanced user who will create new mappings that will be used by other members of the organization.

This exercise assumes the student has

  • IBM Rational Rhapsody 8.2 installed correctly on his or her machine with a valid license for use, and
  • Syndeia 3.2 installed as a plugin for Rhapsody with a valid license for use
  • Syndeia DOORS NG interface, correctly installed with a valid license for user
  • Syndeia Mappings license, to modify syndeia.mappings file from the Syndeia dashboard (without the special mappings license, existing mappings can be used, but not modified)

We will use the provided Rhapsody project Syndeia_DOORS_NG_Mapping_Tutorial.rpy. The user can use any DOORS NG repository they have available with the ability to create and edit items within a DOORS NG model.  It is generally advisable to carry out these exercises in a non-production repository, a “sandbox”, set up for training and practice purposes.

If you have not already, read the section “Special Note on DOORS NG Artifact Types” in the Exercise 5.5 instructions, which provides important information on creating artifacts in DOORS NG using Syndeia.

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

  • A mappings file, syndeiaTutorial_Rh.mappings, which contains the specific starting mappings used in this and the following exercises. To install this,
  • Close Rhapsody, if it is open
  • Rename the existing syndeia.mappings file in the .syndeia folder to something like syndeiaOld.mappings
  • Copy syndeiaTutorial_Rh.mappings into the .syndeia folder
  • Rename syndeiaTutorial_Rh.mappings as syndeia.mappings
  • When you have completed the mapping tutorial exercises, you may want to reverse this process to restore the original mappings file.
  • A mappings profile, SyndeiaTutorialMapping.sbs, which is loaded into a TutorialMappingProfile folder in the profiles folder of Syndeia installation:
    C:\Users\<account>\<Rhapsody installation> \Share\Profiles\Syndeia\profiles\.

Any Syndeia user can use or view the mapping specifications, but Syndeia requires a special license in addition to the regular Syndeia license in order to create, modify or delete mapping information. It is good practice to confine this duty to a very limited number of experienced users or system administrators, who will provide mappings for the general users. Some mappings require a special SysML stereotype to correctly transform attributes to or from a SysML element, so each mappings file should be paired with a SysML profile that holds the required stereotypes, as we have done here.\

Exercise

  1. Open the SysML project Syndeia_DOORS_NG_Mapping_Tutorial.rpy, right-click the DOORS_NG package, and launch the Syndeia dashboard
  2. Go to the Mappings tab. The first task will be to create a new mapping using existing artifacts.
    1. Right-click SysML-DOORS NG under Mapping Groups in the left column and select Add Mapping
    2. Initially, the window should appear similar to Figure 1.
    3. Modify the Mapping
      1. Change Name to Requirement - Collection (no attributes)
      2. Change Description to SysML Requirement - DOORS NG Collection with no attributes
      3. Change Source Artifact Type to Requirement, using pull-down menu
      4. Set Target Artifact Type to Collection, using pull-down menu
      5. Set Structure Level to CHILDREN_RECURSIVE, using pull-down menu
      6. Set Include Attributes to Exclude Attributes, using pull-down menu
      7. The window should look similar to Figure 2.
      8. Click Save Mapping at bottom of right side (scroll down if necessary).
  3. Use the new Mapping you just created
    1. Go to the Connection Manager tab. Open a DOORS NG repository in the right column.
    2. Drag the Product_Spec requirement in the SysML model into a project or folder in DOORS NG (Tutorial Sandbox in this example).
    3. A small pull-down menu will appear on the Syndeia dashboard, as Figure 3, showing the possible mappings available for a SysML requirement dragged into DOORS NG.
    4. Select Requirement – Collection (No attributes) and click OK.
    5. Expand the destination folder (Tutorial Sandbox in our example) on the right side of the Connection Manager. Check that a new DOORS NG collection with child requirements has been created.
  4. The second task is to create another new mapping, this one with attributes shared between the SysML and DOORS NG elements. We will use the Clone Mapping command rather Add Mapping. Clone Mapping saves time when not all features of the new mapping need to be modified.
    1. Right-click Requirement - Collection (no attributes) under Mapping Groups/SysML – DOORS NG in the left column and select Clone Mapping
    2. Initially, the window should appear similar to Figure 4.
    3. Modify the Mapping
      1. Change Name to Requirement - Collection (attributes)
      2. Change Description to SysML Requirement – DOORS NG Collection with attributes
      3. Keep Source Artifact Type as Requirement and Target Artifact Type as Collection
      4. Set Structure Level to CHILDREN_IMMEDIATE, using pull-down menu
      5. Set Include Attributes to Include Attributes, using pull-down menu
      6. At the bottom of the right side, click the + sign box under the Stereotypes table.
      7. A Select stereotype window will open. The window should look similar to Figure 5.
      8. Select DOORS_Requirement. This choice will appear in the Stereotype box on the right.
      9. Scroll up to Attribute Definition Mappings
      10. Click Retrieve Available Attribute Definitions
      11. Click the + box below the Attribute Definition Mappings box.
      12. In the new row, select Identifier (Identifier) on the right (Target) side of the table, using the pull-down menu
      13. In the new row, select Id (Id) on the left (Source) side of the table.
      14. Repeat steps xi through xiii for Primary Text and Created On. The final table should look like Figure 6.
      15. Click Save Mapping at bottom of right side (scroll down if necessary).
  5. Use the cloned Mapping you just created
    1. Go to the Connection Manager tab. Open the DOORS NG repository you used above in the right column.
    2. Drag the Product_Spec DOORS NG created earlier into the empty SysML DNG4
    3. A small pull-down menu will appear on the Syndeia dashboard, as in Figure 7, showing the possible mappings available for a collection dragged into SysML.
    4. Select Requirement - Collection (attributes) and click OK.
  6. A new requirements hierarchy should appear under DNG4 on the SysML side. It will have the <<DOORS_Requirement>> stereotype in addition to <<requirement>> and all the tag values associated with those stereotypes (see Figure 8). Note that the three child requirements do not have their dateCreated attributes populated from DOORS. As requirements, not collections, they were subject to a different mapping than the parent, i.e. Requirement – Requirement (attributes).
  7. Delete the Feature_1_Environmental requirement in package DNG4, then return to the Syndeia dashboard, Connection Browser tab, find the connection between DNG4::Product_Spec and the 511 – Product_Spec collection in DOORS. Right-click and select Compare Source and Target. The Comparison Result shows the missing requirement on the SysML side in red (Figure 9).


  • No labels