Versions Compared

Key

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

...

Model transformations are based on mapping rules, referred to as mappings hereafter, that specify the types of model elements that will be generated in the target model from the types of model elements in the source model. For example, there is a pre-defined mapping in Syndeia that maps a SysML Block to a Teamcenter Item, and this mapping is used when a Teamcenter element of type Item is used to generate elements in a SysML model or when a SysML element of type Block is used to generate elements in Teamcenter.

Until Syndeia 3.2 , all mappings were pre-defined to ensure that the types of source and target elements were semantically consistent or equivalent. Some variations were allowed in Syndeia settings, such as selecting the type of JIRA issue (e.g. Bug, Task, New Feature) that will be generated from a SysML blockmade it possible for users to define custom mappings between artifacts types and attributes in different repositories, and use those mappings to govern model transformations, comparison, and synchronizations.

Syndeia 3.2 brings the powerful and extensible capability to create and use custom mappings. In addition to the pre-defined mappings, users can now create their own custom mappings to control the types of target elements that will be generated based on the types of source elements. Users can also specify the levels of model structure and the mapping between attributes of the source element type and target element type. Users can define multiple mappings for a specific type of element and can select specific mappings during model transformations. For example, a user can now specify the following mappings and select specific attributes (or none) to include: SysML Block ↔ JIRA New Feature, SysML Activity ↔ JIRA Task, or SysML Use Case ↔ JIRA Story. Syndeia creates connections between source and target model elements, and each connection is aware of the mapping used for the same. Compare and bi-directional synchronization operations on connections use the mapping information to compute differences and synchronize models3 has now introduced the ability to define relationship mappings in addition to artifact mappings and attribute mappings. As a result, users can map SysML relationship types (e.g. Containment, Part Property/Associations) to relationship types in other repositories (e.g. Jira link types - Blocks, Relates).

A general approach for using the mapping capabilities is presented below, followed by a list of hands-on step-by-step tutorials to get started with the mappings.

...

The mapping capabilities in Syndeia 3.2 are simple to setup set up and use. A general approach is presented below. Users are requested to review the tutorials available at Tutorials - Syndeia for Rhapsody for detailed step-by-step instructions.

Mapping Authors and Users

...

  1. Mapping Authors can create, edit, or delete artifact types, mappings, and mapping groups. Mapping Users can use mappings during model transformation, compare, and synchronization synchronize operations but not create, edit, or delete mappings.
  2. Syndeia provides a Mapping Author license file that every Mapping Author should have available with the regular Syndeia license. Syndeia checks for this license file to identify Mapping Authors versus Mapping Users.

...

  1. Source Artifact Type and Target Artifact Type - Artifact types, originaing from two different model / repository types, that are being mapped. For example, SysML Activity is mapped to JIRA Task in the exampel shown below. It is mandatory to specify source and target artifact types in each mapping.
  2. Structure Level - Option to generate structure when transforming an artifact of source artifact type to the target model (and vice versa). In the example shown below, CHILDREN_RECURSIVE is selected. This implies that when a SysML Activity element (artifact) is used to generate JIRA Task artifact, the activity structure (call behavior actions) are used to generate linked JIRA issues recursively. The following options are available for Structure Level.
    1. NO_CHILDREN - Indicates that no children will be generated
    2. CHILDREN_IMMEDIATE - Indicates that only immediate children will be generated
    3. CHILDRENT_RECURSIVE - indicates that children will be generated in a recursive manner
  3. Attribute Definition Mappings - Mapping of attribute definitions of the source and target artifact types. In the example shown below, assignee, info, priority, and summary attribute definitions (tags originating from multiple stereotypes) on a SysML Activity artifact type are mapped to Assignee, Status, Priority, and Summary attribute definitions for JIRA Task artifact type respectively.
  4. Stereotypes - List of stereotypes to be applied to SysML artiact types participating in the mapping. The list of SysML stereotypes is used to derive the attribute definitions for the SysML artifact type (e.g. Activity) that can be mapped to attribute definitions of other artifact types (e.g. JIRA Task), as shown in the Attribute Definition Mappings.
  5. Relationship Mappings - Mapping of relationship types of the source and target artifact types. In the example shown below, assignee, info, priority, and summary attribute definitions (tags originating from multiple stereotypes) on a SysML Activity artifact type are mapped to Assignee, Status, Priority, and Summary attribute definitions for JIRA Task artifact type respectively.
  6. Attribute Definition Mappings.

...

  1. - Mapping of attribute definitions of the source and target artifact types. In the example shown below, the Derived Requirement and Verified by relationship types in SysML are mapped to Derived from and Verified by relationship types in Jama.

Image Added

Using Mappings

...

Getting Started

In Syndeia 3.23, the mapping capability is available for model transformations involving SysML models and Jama, Teamcenter, JIRA, and DOORS-NG repository types. Step-by-step tutorials, sample models, and custom mappings are available to learn how to use this new capability. The following sections in the Tutorial cover this capability.

In the Syndeia plugin for Rhapsody, this content and the step-by-step tutorials are also included in the document Tutorials - Syndeia for Rhapsody.pdf. Sample models are included in the <Syndeia_Installation>/models/Mapping_Tutorials.zip file, e.g. C:\Users\<YourUserName>\IBM\Rational\Rhapsody\8.1.3x64\Share\Profiles\Syndeia\models\Mapping_Tutorials.zipthe following repositories. Refer to the step-by-step tutorial exercises linked below.

Limitations

There are 2 main limitations in the mapping capability in this version of Syndeia. We are actively working to expand the mapping capabilities and address these limitations in the next version of Syndeia.

...