Requirements Interchange Format

This article is about Requirements Interchange Format (RIF/ReqIF). For other uses, see RIF.
Requirements Interchange Format (ReqIF)
Filename extension

.reqif

.reqifz
Developed by Object Management Group
Latest release
1.10.2013
Type of format exchange file format
Container for Requirements
Extended from XML
Open format? yes
Website OMG Website

RIF/ReqIF (Requirements Interchange Format) is an XML file format that can be used to exchange requirements, along with its associated metadata, between software tools from different vendors. The requirements exchange format also defines a workflow for transmitting the status of requirements between partners. Although developed in the automotive industry, ReqIF is suitable for lossless exchange of requirements in any industry.

History

In 2004, HIS (Herstellerinitiative Software) a consortium of German automotive manufacturers, defined a generic requirements interchange format called RIF.

The format was handed over in 2008 to ProSTEP iViP e.V. for further maintenance. A project group responsible for international standardization further developed the format and handed over a revised version to Object Management Group (OMG) as Request for Comment in 2010.[1]

As the acronym RIF had an ambiguous meaning within the OMG, the new name ReqIF was introduced to separate it from the W3C`s Rule Interchange Format.

In April 2011, the version 1.0.1 of ReqIF was adopted by OMG as a formal specification (OMG Document Number: formal/2011-04-02).

In October 2013, version 1.1 was published (OMG Document Number: formal/2013-10-01). Changes are restricted to the text of the standard, the XML schema and underlying model have not changed. Therefore, 1.1 and 1.0.1 .reqif files are equivalent.

Features

ReqIF is an exchange file format for exchanging requirements, attributes, additional files (e.g. images) across a chain of manufacturers, suppliers, sub-suppliers and the like. A GUID ensures unique identification of content across the process chain.

Application

Requirements are typically elicited during the early phase of product development. This is the primary application of ReqIF, as development across organizations is happening more and more often. ReqIF allows for sharing of requirements between partners, even if different tools are used. In contrast to formats like Word, Excel or PDF, ReqIF allows for a loss-free exchange.

ReqIF was pioneered by automotive manufacturers, who started to demand the use of ReqIF in particular for the development of embedded controllers.

ReqIF is also used as the underlying data model for tool implementations. This is particularly true for the ReqIF Reference implementation (Eclipse RMF), which is being used by an implementer forum,[2] that aims to ensure interoperability of various ReqIF implementations. ReqIF Server[3] is another tool that natively uses ReqIF.

Operation

RIF/ReqIF is a standardized meta-model, defined by an XML schema. Such files must conform to the schema and contain the description of the model (the datatypes), as well as the data. A successful data exchange between various tools only succeeds, if all parties agree on a common data model. The previously mentioned implementor forum is working on such a common model and also organizes tests with tools of the participating manufacturers, to ensure future interoperability.

Structure of ReqIF files

An OMG ReqIF file consists of XML with the root element REQ-IF, containing information regarding the file itself as well as the contained datatypes and requirements.

The containers for requirements in ReqIF are called specification objects (SpecObject), which have user-defined attributes. Each attribute has a data type, which is one of Boolean, Integer, Real, String, Enumeration (with user-defined values) and XHTML, which is also for formatted text and embedded objects, including images. Some datatypes can be constrained further, e.g. the range of numerical values.

Relationships between objects are represented as SpecRelations, which can also have attributes.

At last, hierarchical trees create a structured view on SpecObjects, called Specifications. Multiple references on the same SpecObject are permitted.

See also

References

  1. Open Up - How the ReqIF Standard for Requirements Exchange Disrupts the Tool Market., Requirements Engineering Magazine, Issue 2014-03, as of 15.9.2014
  2. ReqIF Implementor Forum, ProSTEP website, as of 28.5.2013
  3. http://www.reqif.de/index.php/intro.html ReqIf Server Homepage, as of 30.5.2013
This article is issued from Wikipedia - version of the 10/19/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.