Tutorial 1: Creating a basic ReqIF Model | ||
---|---|---|
![]() |
![]() |
|
ProR Tutorial | Tutorial 2: Use Presentations |
In this Section, we will build a ReqIF model from scratch, step by step.
You can download ProR from the Download page. Alternatively, you can install ProR in any Eclipse-Installation via its update site (also listed on the Download page). Using the update site allows you to use the Eclipse Update mechanism, something that is currently not yet enabled for the standalone version.
After this, your window should look more or less as follows:
You will see your ReqIF file in the (1) Project Explorer or the regular Navigator.
The Editor (2) shows your Specifications.
In the Editor, you see the SpecObjects that exist in this Specification. There is currently only one, with the description "Start Editing".
The Outline (3) has three folders:
The properties of a selected Element are shown in the Properties view (4). As the only Requirement in the model is selected, we see its SpecObjectTpye ("Requirements Type") and its only Attribute ("Description") with the value "Start editing here.". There are two tabs "Standard Attributes" and "All Attributes" at the bottom of the Properties view. The "Standard Attributes" tab shows you all standard attributes of the selected element. The "All Attributes" shows all existing ReqIF attributes of the selected element.
When a ReqIF Editor is active, there are also additional tool bar items (5) and an additional menu (6).
To get familiar with the system, next we will:
To add new attributes, we open the Datatype Configuration dialog with ProR > Datatype Configuration.
The resulting Dialog has a folder for SpecTypes and Datatypes. Currently, there is only one Datatype (T_String32k) and one SpecType called "Requirements Type" with one Attribute "Description".
We add more Attributes to "Requirements Type" by right-clicking "Requirements Type" and selecting "New Child > Attribute Definition String". This will create a new element. Upon selecting, we can rename it in the lower pane. We do this twice for "ID" and "Owner". We assign both Attributes the same Datatype, "T_String32k". In the end, the dialog should look as follows:
Upon closing the dialog, little will have changed - the Specification still shows just two columns, Description and Link. However, if you select the requirement, you will see the new Properties (ID and Owner) in the Property view.
To show the new Attributes in the Specification, we have to configure the Specification columns. We do this by selecting ProR > Column Configuration.
The resulting Dialog shows one entry for the one and only Column of the Specification. By clicking on the "Add Column" icon at the top of the dialog, we can add two more columns. We do this and name them "ID" and "Description" (in the lower pane). Feel free to rearrange the order with drag and drop, as you see fit. When all is done, the dialog should look as follows:
Note that you have to provide Strings for the columns for the same reason that we used Strings for the Labels earlier: This way we can easily match multiple SpecObjects of different types.
You can actually adjust the width of the columns simply by dragging the column headers.
Now we can finally add SpecObjects by right-clicking on a row in the Specification. In the context-menu, there are two submenus: "New Child" and "New Sibling". "New Child" is the only way to produce a hierarchical structure.
In both menus, there are three entries "Spec Hierarchy", "Adding SpecObjects" and "SpecObject (Requirement Type)". Some background is needed here:
We said before that Specifications contain references to SpecObjects. A SpecHierarchy is the "Wrapper" that allows the hierarchical structure and that points to the referred SpecObject. Usually, we don't have to be concerned with them. Therefore the second option: If selected, a new SpecHierarchy is created and associated with a new SpecObject, which in turn is set immediately to the given SpecObjectType. If we had more than just one SpecObjectType (besides "Requirements Type"), there would be an entry for each type in the context menu.
To continue the exercise, select the child "SpecObject (Requirement Type)". Now we have two SpecObjects. Create a few more values and enter some values. You can edit directly in the Specification, as you would in Excel. Play around with Hierarchies.
You can drag and drop SpecObjects as a sibling or as a children. The highlighting feedback helps you to find out whenever you shifting a SpecObject as sibling or as a children. For instance, if you are dragging a SpecObject over another one, the entire cell will be highlighted. This means, that the SpecoBject will be assigned as a children to the dropped SpecObject.
If you are dragging a SpecObject between two rows, you get also a visual feedback an the SpecObject will be assigned as sibling:
After some playing around, our Specification may look like this:
Quite an achievement - but also quite a bit of work to get started. Also, entering information requires a lot of clicking, and some of the descriptions are not completely visible. In the next part of the tutorial, we will address these issues.
![]() |
![]() |
![]() |
ProR Tutorial | Tutorial 2: Use Presentations |