Requirements Interchange Format (ReqIF)
Data can be exchanged between
Codebeamer and other systems, for example IBM Rational DOORS, using
Requirements Interchange Format (ReqIF)
. For more information on ReqIF, see <link to external webpage>.
The only supported formats are
ReqIF 1.0.1
More information about ReqIF can be found in
Wikipedia or the
ProSTEP iViP
ReqIF implementor forum.
ReqIF is an
XML file based data exchange, with the following file extensions:
• .reqif for a single ReqIF XML file (instead of the usual .xml extension).
• .reqifz for
ZIP archives containing ReqIF files and additional files, such as images (instead of the usual
.zip extension).
Though the name suggests otherwise, the Requirements Interchange Format is not restricted to exchanging requirements only. ReqIF is a generic semantic data model that allows you to define arbitrary types of :
• Items.
• Relations.
• Specifications.
Item types are similar to classes in object orientated programming, tables in a relational database model or trackers in Codebeamer.
There can be any number of item types in a ReqIF file, each having a different set of attributes. For example, User Story, Use Case, Requirement, Test Case, etc.
Relation types are similar to Codebeamer association types. They define a specific type of relation between two items. For example, Depends On, Derived From, etc.
Relation types can also define attributes for relations. For example, the equivalent to Suspected.
Specifications aggregate items into a tree hierarchy.
Specifications can include items of different types and the same item can be included in multiple specifications or in the same specification multiple times.
Specifications are more like tables of content or document outlines than real documents, because they cannot carry any extra information, except the tree hierarchy.
The best equivalent to a Specification in Codebeamer is a tracker document view (although trackers can only contain items of the same type).
The following image shows an example ReqIF schema:
ReqIF also does not have a concept for exchanging a history of changes or comments about changes. A ReqIF file or archive only contains the current or head revision of the data to be exchanged.