The purpose of the ReqIF Comments plugin is to enable importing comments and supplier feedback on exported requirements, using the ReqIF format, back into SystemWeaver without altering the original requirements. For more information about ReqIF, visit the ReqIF website. This article describes the ReqIF Comments workflow, as well as provides an example meta model and configuration for the extension view. 

Prerequisites

Below are the prerequisites for both a successful comments workflow and for configuration.

  • Familiar with your SystemWeaver meta model
  • An installation of the SystemWeaver Explorer client (swExplorer)
  • The SWExtension.ReqifRoundtripImporter extension file is located in the Client's swExplorerExtensions directory
  • Assignment of the SW Architect role to configure the SWExtension.ReqifRoundtripImporter extension view, and add support for the comments to the existing meta model
  • The original ReqIF file has been exported from SystemWeaver
  • The IDENTIFIER attributes of the file have remained intact. (ReqIF standard requirement)
  • The IDENTIFIER attributes of the file are based on AncestorHandles (ReqIF standard requirement, life time identifiers)


ReqIF Comments Workflow Description

Below is a basic description of the ReqIF comments workflow. First, a ReqIF file is produced from SystemWeaver. It should include additional attributes as placeholders for the types of comments that suppliers are expected to enter. This file is then sent to a supplier. The supplier imports the ReqIF file into their environment, reviews the contents of the ReqIF file, and enters the comments in the placeholders provided. Then, the file is exported and sent back to SystemWeaver for import. 



Configuring the Meta Model

The SystemWeaver meta model must support the use of ReqIF Comments extension. Below are example meta models.

Example without the Comment item: 



Configuring the Extension View

Configuration is set in Configure the explorer in the swExplorer client. When you set the configuration, you will want to check the Active box to ensure that system users can access the ReqIF Comments view in the swExplorer client. 


<Configs>
  <Config>
    <CommentItemType>1RSYN</CommentItemType>
    <SpecificationItemType>CX04</SpecificationItemType>
    <SpecificationPartType>1ITEM</SpecificationPartType>
    <OriginalPartType>1LINK</OriginalPartType>
    <SynchronizedPartType>1SYN</SynchronizedPartType>
    <SpecificationToContentSidsToFollow>CP06;CP08;CP07</SpecificationToContentSidsToFollow>
    <MappingConfigItemTypeSid>REQC</MappingConfigItemTypeSid>
    <MappingConfigAttributeTypeSid>XMXM</MappingConfigAttributeTypeSid>
    <Attributes>
    </Attributes>
  </Config>  
</Configs>

Explanation of the Configuration Elements

Configs and ConfigBuild the structure of the multiple configurations and the individual configurations. 


CommentItemType: The SID of the Item type that will hold the Specification and the comments. A Specification can be any type of Item.


SpecificationItemType: The SID of the Item type that will activate the view and the Item type that the Comment Item will be pointing to with the SpecificationPartType.


SpecificationPartType: The SID of the Part type that points from the Comment Item type to the Specification Item type.


OriginalPartType: The SID of the Part type that points from the Comment Item to the first version of an Item with a comment. This Part type exists for the sake of consistency since ReqIF does not support the concept of versions in the same way that SystemWeaver does. ReqIF works with lifetime ID:s that are meant to be stable over time, just like SystemWeaver's AncestorHandles.


SynchronizedPartType: The SID of the Part type that points from the Comment Item to an Item with a comment that is found in the Specification that the Comment import is performed on.


SpecificationToContentSidsToFollow:  A comma separated list of the Part SIDs to be followed from the Specification Item type down to where the Items with comments are found. 


Note: The order of the Part SIDs is not important. This tag uses the same principles as the structure tree view definitions where all Parts SIDs are followed for every item.


MappingConfigItemTypeSid: The SID of the Item Type that contains the Mapping configuration. 


Note: This is an Item Type that does not exist in the database and has to be created. The recommendation is to create it as a sub-type of Item.  It does not have any Part Types.


MappingConfigAttributeSid: The SID of the Attribute Type that contains the Mapping configuration. The Data type must be of type XML. Setting up the mapping of ReqIF attribute types to SystemWeaver attribute types is performed in the plugin itself.


Note: This is an Attribute Type that does not exist in the database and has to be created. The Attribute should be of type XML and the Data dimension should be set to Single.


Attributes: (Optional) The SIDs of requirement attributes to include in the comments import.

    <Attributes>
      <AttributeType reqifTag="X_REQ.Comment">1COM</AttributeType>
      <AttributeType reqifTag="X_REQ.RequirementStatus">1STA</AttributeType>
    </Attributes>


Adding Shortcut to Ribbon Group

The configured ReqIf Comments extension view will display in the View drop-down menu.


To add a shortcut to a ribbon group of your choice, see Configuring the Item Ribbon Tab. The <ItemView> tag is used to add the extension view to a ribbon group on a tab. Example: 

...
<RibbonGroup caption="My ribbon group">
 <ItemView name="SWExtension.ReqifRoundtripImporter.ReqifRoundtripViewContent" />
</RibbonGroup>
...


What's Next? 

Once a meta model is in place that supports the extension, and the extension has been configured and turned on, users can import comments