ReqIF_Settings - Helmut-Ortmann/EnterpriseArchitect_hoReverse GitHub Wiki

ReqIF Settings

You find the settings in Settings.Json, typically in 'c:\users\<user>\Roaming\ho\hoReverse'. With 'Help, About' you can see the path to Settings.json and much more.

Overview

Name Description Example Type M Impact
AliasList Attributes to concatenate to EA Alias ["ReqIF.ForeignID"] List I,R
AllowedOperations Comma separated list of allowed Operations "Export, Import,Roundtrip" Value E,I,R
AttrNameList Attributes to concatenate to EA Name ["ReqIF.ForeignID","ReqIF.Text"] List x I,R
AttrNotes Attribute to assign to EA Notes "ReqIF.Text" Value I
Description Description to show for list item in Dialog "My lovely import list" Folder x E,I,R
EmbeddedFileStorageDictionary The directory to store embedded images and file "c:/Temp/ReqIF/Store/24/" Folder x E,I,R
ImportType The type to import like "ReqIF" "DoorsReqIF" or "ReqIF",.. Value x E,I,R
InputFile Input file "c:/temp/MyInputFile.reqifz" Folder x I
ExportFile Export file "c:/temp/MyexportFile.reqifz" Folder x E,R
ListNo List number. Same list number are processed in one step "11" Value x E,I,R
Name Name to show for list item in Dialog "My lovely import list" Value x E,I,R
ObjectType The EA ObjectType to create "Requirement" Value x I
RoundtripFile Roundtrip file "c:/temp/MyInputFileExport.reqifz" Folder R
RtfNameList The ReqIF Atribute list for the rtf/docx text in EA ["Object Text"] Value x I
StatusNew The EA element (e.g. Requirement) status when newly created "Proposed" Value x I
PackageGuidList List of package GUIDs. ["{4A61F344-65CB-4a5f-B93C-9E6A7F4FF0E6}", "{4A61F344-65CB-4a5f-B93C-9E6A7F4FF0E6}"] Value E,I,R
PrefixTaggedValueTypeList For each Package of the PackageGuidList you may define a prefix for tagged value ["Mod1_", "Mod2_"] List x I,R
SpecHandlingType How to handle the EA Specification (Notes and/or Linked Document) "MixedMode" Enum I
Stereotype The EA Stereotype to create "Functional Requirement" Value x I
UseMariGold Use the free Mari Gold Library to convert XHTML to EA docx "true" or "false" Bool x I
Validate ReqIF Use "ValidateReqIF": "true" to validate and get reasonable error messages for a *.ReqIFZ file. "true" or "false" Bool I
WriteAttrNameList For Roundtrip the attributes hoReverse updates in *.reqifz ["CommentState", "CommentText"] List x R

Explanation

General

Apply the rules for JSON:

  • Value : "Key": "Value"
  • List : "Key": ["Value1", "Value2","Value3"]
  • Enum : "Key": "EnumerationValue"

Allowed Operations

Enum with the allowed operations on ReqIF files:

  • Export
  • Import
  • Roundtrip

Attribute List

List of ReqIF-Attributes to fill an EA Property like:

  • Name
  • Alias
  • RtfNameList

The ReqIF Attributes are concatenated and cut off after 100 characters.

Example: "AttrNameList" : ["ReqIF.ForeignID", "ReqIF.Chaptername", "ReqIF.Text"],

AttrNotes

The ReqIF Attribute to fil the EA Notes field. Usually "Text".

Embedded File Storage Directory

The location images and embedded files are stored.

Export File

Folder of the *.reqifz to output.

  • "c:/temp/myExportFile.reqifz" or
  • "c:\temp\myExportFile.reqifz"

Impact

  • I Import
  • R Roundtrip
  • E Export

ImportType

The type of document to import:

  • DoorsCsv
  • DoorsReqIf
  • ReqIf
  • XmlStruct

Input File

Folder of the *.reqifz input file.

  • "c:/temp/myFile.reqifz" or
  • "c:\temp\myFile.reqifz"

JSON type

  • Bool ("true" or "false")
  • List (["Value1", "Value2", "Value3",..])
  • Value ("Value")
  • Enumeration, same as value
  • Folder/Dictionary ("c:/temp/myFile.reqifz" or "c:\temp\myFile.reqifz")

List Number

Elements with the same List numer are handled with one dialog. This is in easy way to import, export, or roundtrip a lot of files/specifications.

M Mandatory

  • 'x' Mandatory
  • ' ' Optional

ObjectType

The EA Object Type to create. Together with Stereotype you can define arbitrary EA Elements.

  • "Requirement"
  • "Class"
  • etc.

PackageGuidList

To process more than one EA Package with one *.reqifz file. It's a list of Package GUIDs with the optional ReqIF specification id.

  • guid GUID of EA-Package
  • spec-id: ReqIf ID of the specification
  • Examples
    • Specify package and the ReqIF ID of the specification to import into the package
      • ["{guid1}=spec_id1","{guid2}=spec_id2",...]
    • Work for packages in the order of specifications in *.ReqIFZ file
      • ["{guid1}","{guid2}",...]

Prefix Tagged Value Type List

If you have defined a package list you can define prefixes for the EA tagged values as a JSON list. Each package is a DOORS Module or ReqIF Specification.

  • ["Mod1_", "Mod2_"]

Roundtrip file

Path to the exported roundtrip file. The default is input file with the extention 'Export'

Spec Handling Type

Enum to specify how to handle the ReqIF Text:

  • MixedMode (default): Export: Use Linked Document if available, Import: Fill both: Linkend Document and Notes
  • OnlyLinkedDocument
  • OnlyNotes

Status New

The EA element status after creating an entry (e.g. Requirement):

  • "StatusNew": "Proposed"

Stereotype

Together with ObjectType you can define arbitrary EA Elements.

The EA Stereotype of the EA object to create.

  • "MyStereotype"
  • etc.

Use Mari Gold

  • "true" use the free Mari Gold to convert XHTML to EA docx
  • "false" use the commercial Sautin library to convert XHTML to EA rtf

Validate ReqIF

Bool to validate the ReqIF. Use "ValidateReqIF": "true" to validate and get reasonable error messages for a *.ReqIFZ file.

  • true
  • false

Verbosity Type

Enum to define the level of verbosity:

  • Silent (default) // Ignore false OLE, etc.
  • Verbose

WriteAttrNameList

For Roundtrip the list of Attribute Names that will be written by EA. Typically these are:

  • 'CommentState' Enumeration like 'Accepted, 'Rejected'
  • 'CommentText' String to comment on a Requirement
  • 'ReferenceGuid=EA.GUID' Variable, to establish bi-directional traceability
  • 'EA.Name' Variable, to have the name also in DOORS

For Enumerations you have to define the EA Tagged Value Types with the enumeration definition and the same name as the TaggedValue name.

If you have imported ReqIF hoReverse and the Attributes for Roundtrip are part of the ReqIF file then horeverse has already created the needed TaggedValue.

Type of Enum

Use the following EA Tagged Value types:

  • Enumeration single selection: EA Enumeration
  • Enumeration multiple selection: EA CheckList

Variables

You can use variables to autfill fields from EA (e.g. ["MyReferenceToEA=EA.GUID"])

  • hoReverse supports the following autofill fields:
    • EA.GUID
    • EA.Created
    • EA.Modified
    • EA.Name
    • EA.Version
    • EA.Status
    • EA.Stereotype
    • EA.Type
    • EA.Author
    • EA.Phase

Example

"WriteAttrNameList": [ "_EaGuid=EA.GUID", "_EaName=EA.Name", "_Comment","_Status",],

Glossary

  • Attribute (ReqIF) With Attributes a Requirement may contain additional information stored in the Attributes. In EA this are Tagged Values.
  • EA Tagged Values are a UML/SysML compliant method to provide additional properties to UML/SysML elements and connectors. Here we use it to define arbitrary ReqIF Attributes to exchange with other tools.
  • GUID Universally unique identifier used by EA to uniquely identify an object
  • MCDF Microsoft Compound Document Format (used by DOORS embedded files)
  • Package The Package which contains the requirements. In terms of ReqIF its the Specification or in DOORS the Module.
  • ReqIF Information of a file or folder with *.reqif or *.reqifz
  • ReqIF Requirements Interchange Format
  • ReqIF Roundtrip, often called ReqIF Workflow. The Standard how to exchange ReqIF requirements between two partners
  • ReqIF Standard of the OMG to exchange requirements between different tools, see OMG Specification
  • ReqIF Workflow: ReqIF workflow specifies how to exchange requirements between tools. Often called Roundtrip
  • ReqIF Tool: A tool that imports/exports ReqIF compliant XML documents
  • Requirements authoring tool: A tool to create and modifying requirements
  • Specification In ReqIF the container which contains the requirements. In DOORS it's named 'Module'.
  • SPICE Process Reference Model to assess process maturity.
  • Tagged Values UML/EA measure to add values to a classifier/requirement. For enumerations EA needs Tagged Value Types (Enum or Checklist).
  • Traceability