Requirements Interchange Format (ReqIF)
Since
Codebeamer 7.6.0, it is possible to exchange data between
Codebeamer and other systems, for example IBM Rational DOORS, via
Requirements Interchange Format (ReqIF)
.
Only
ReqIF 1.0.1
and higher are supported, older RIF formats are not.
More Information about ReqIF can also 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. For example,. images (instead of the usual
.zip extension)
other than the name suggests, the Requirements Interchange Format is not restricted to exchanging requirements only.
ReqIF is a generic semantic data model, that allows 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).
Example ReqIF schema:
ReqIF does not have a concept of reference fields or foreign keys, but Codebeamer is able to convert reference fields into Relations upon export and bind Relation types to tracker reference fields upon import.
ReqIF does also not have a concept for exchanging a history of changes or comments about changes. A ReqIF file/archive only contains the current/head revision of the data to exchange.