Within the VERDE project, itemis is working on the traceability of requirements based on the Eclipse platform. To be able to work with requirements, we have implemented an Ecore representation of the RIF/ReqIF requirements exchange format. RIF was developed by the German HIS Automotive and is now being standardized by the OMG under the new name “ReqIF“.
Nirmal has derived the Ecore format from the specification that is provided as an Enterprise Architect model. And of course we have combined this with textual DSLs. RIF allows you to model your own requirements structure (i.e. define requirement types, attributes and links). This can be done through the ecore editor and the GUI for the requirements is automatically generated during runtime. A possible structure could look like this:
The definition of this requirement structure is like this:
In our solution, you cannot only define natural language requirements, but through the integration of Xtext you can bring in more formal notations – be they standard or project specific. Of course, you get all the benefits of Xtext, like content assist, syntax highlighting etc. Here is a screenshot of the content assist in our small formal language.