Requality: user guide
Projects
Create Requality project
- To create project select in main menu
'File' → 'New' → 'Project...'
- In opened dialog window choose 'Requality' → 'Requality Project' and push 'Next' button.
- On the next page input project name and push 'Finish'.
Edit 'Requality' project properties
Global attributes that are available on whole project nodes can be defined
in view 'Properties view'. To do so you need to click in 'Requality Explorer' on
project name. After that in 'Properties view' you will see the properties of project.
Global attribute can be defined and altered in attributes table.
Attribute to be used to define an enum type may be also created there by semi-automatic extraction from existing
attributes or manually (see above).
- Attributes table is similar to one for requirements. The differ is that it has no
'scope' column (because all attributes are global by default and availiable on whole tree of nodes).
You can work with attributes in the same way.
See 'detailed description on how to work with attributes' in requirements-related section.
- Attirbutes of project may also has 'ENUM_DEFINITION' type.
This type is made to support enum type of data that can be used in attributes of nodes in a project. To define a enumeration type,
create a new attribute in a table. The name of attribute will be used as name of enumeration type.
For this attribute in drop down list in column 'Type' select a 'ENUM_DEFINITION' type.
After that click on button in 'Value' column, it will shown an dialog 'Enum definition editor'.
The list of values in dialog is empty by default.
In column 'Value' set the values of enumeration type (one for line). In column 'Comment'
you may add you comment on specific value. To perform changes press 'OK' button.
('Cancel' to cancel). Defined values will be shown as items in 'Value' column.
Now this attribute is available for all nodes in a project as of enumeration type with defined values.
- You may edit attribute for a project manually in attributes table.
To edit a values of 'ENUM_DEFINITION' you need to open 'Enum definition editor',
by clicking on button in 'Value' column.
Global attribute to define an enumeration type can be created manually as it is described below,
but you also may extract it from attributes of nodes in a project in semi-automatic way. To do so:
- In 'Properties view' of project click on 'Extract enum definitions from attributes' button.
You will see 'Enum definition extractor dialog'.
- In this dialog choose the name of attribute you want to use in enumeration extraction.
On the right field 'Values of selected attributes' you will see all values defined in attributes with
chosen name from all nodes in a project.
- In a field below 'Select a name of ENUM definition' you may define a name of creating
'ENUM_DEFINITION', that will be created from chosen attributes.
- Press 'OK' buttons.
Now attribute of 'ENUM_DEFINITION' type was creates and shown in 'Attributes' table with defined name and has
the value defines as list of all values you seen in 'Values of selected attributes'. In 'Properties view' of nodes,
which has attributes of this name, you will see that type of attribute is changed to name of created 'ENUM_DEFINITION'.
Documents
Import document
If you want to mark requirements
in document, first of all you should import the
document that contains text of the requirements.
The requirements could be written in a free-form. Requality allows importing documents with
following extensions: 'doc', 'pdf', 'htm',
'html'. Herewith Requality copies an original document, converts it to 'xhtml'
and puts the resulting document to the project. The original document isn’t changed. Resulting
'xhtml' –document is a document that is used in the following work.
Requality allows importing of one document, set of documents, and folders with documents.
-
To import document select 'Documents'node (or its sub-node). In context menu select
'Import Document...'.
-
To select source directory push 'Browse...' to the right of the
'From directory:' field in opened
'Document Import Wizard' window and select directory where
documents or files with documents are situated.
-
There are some ways to select required document or folder:
- In 'Document Import Wizard' window in the left area
click (not select) on folder where needed document (documents) is situated.
In the right area you will see all the documents from this folder.
Select needed documents.
- To select all documents in some folder and all documents
in its sub-folders, select this folder in the left area.
- Use buttons 'Select all' and 'Deselect all'
to select and deselect all documents in the folder at once.
-
You can use document extension filter. As we wrote above Requality
provides import of documents with 4 extensions: 'doc',
'pdf', 'htm' and 'html'. But you can change
the default filter and try to import other documents. So if you want
to import document with other extension follow these instructions:
-
Push button 'Select types' in 'Document Import Wizard' window.
-
In opened 'Select Types' window in the list of available
extensions select those you want. Not-selected extensions are not
available to import and you won’t see them in 'Document Import Wizard' window
-
In 'Select Types' window you can also use 'Select All'
and 'Deselect All' buttons to select and deselect all extensions in folder at once.
-
If you want to import a document with extension not in the list,
(e.g. 'xhtml') input this extension to 'Other extensions:' field.
-
Note! Requality supports importing for only documents with extensions
'doc', 'pdf', 'htm' and 'html'.
For other extensions the result could be incorrect.
-
Note! If you didn't find your document in the target folder check filter settings.
If you selected required extensions push 'OK'. Now documents with
selected extensions are available to import.
-
Now you should select a target folder. The target folder is a folder in
Requality-project where you want your documents to be imported to. Select it in 'Into folder:'
field. Default target folder is 'Documents' (the root documents folder) or its sub-folder
(if you called import on it). Push 'Browse...' to the right of the
'Into folder:' field to select or create other folder.
(Read more about document folders in 'Document folder creation'.)
-
If imported documents have the same names as documents in the project folder you can choose
'Rename existing documents' option. Just select this flag. Now imported documents
will be renamed (by adding indexes) if their names are similar to the already imported documents.
-
When importing a folder with all nested documents and sub-folders, this hierarchy is not
transferred in your Requality project as default. All document from the folder and sub-folders are
got into the target folder 'Documents'. If you want to save the hierarchy use
'Create folders' option in 'Document Import Wizard' window.
Now all importing documents will be transferred by a hierarchy.
-
Now if you have already chosen importing documents and selected target folder finish import
by pushing 'Finish' button in 'Document Import Wizard' window.
After process finish 'xhtml'-documents appear in target folder.
Delete document
-
To delete a document select it in 'Requality Explorer' view.
- In context menu select 'Delete Document'.
- Also you can use 'Delete' hotkey.
-
Push 'OK' in the confirmation dialog to proceed document deletion.
-
If there are marked locations in the document you want to delete, you will get one more
confirmation dialog on this step. This dialog warns you that all marked locations
will be deleted together with the document. If you agree and want to proceed push
'OK'. Note! All locations marked in this document will be deleted from the
requirements. The requirements will remain without links to these locations.
Update document
'Requality' allows updating documents by transferring requirements locations
from an old document version to a new one. You can read about it here: 'Transferring locations
to new document version'.
Create documents folder
There is possibility to create folders in 'Documents' node and set documents there.
It helps to comfortably organize documents in 'Requality' project.
- To create a documents folder select 'Documents' node or any it’s sub-folder
(if exists), select 'New → Folder' in the context menu.
- In the opened window input folder name to the 'Enter folder name' field.
- The name shouldn’t replicate name of folders are on the same hierarchy level
in the documents node. Otherwise you get a warning and can’t proceed.
- After you input a correct name push 'OK'. Now you can see this folder in 'Requality Explorer'.
And now you can import documents to the new folder.
Delete documents folder
-
To delete a documents folder choose it in 'Requality
Explorer'.
- Select 'Delete Folder' in the context menu.
- You can also use 'Delete' hotkey.
-
Note! Folder deletion causes deletion of all nested documents and sub-folders.
If you are sure push 'OK' button in a confirmation dialog to proceed.
-
If folder being deleted or its sub-folders contain documents with
marked locations you get
one more confirmation dialog on this step. Note! If you delete the folder
all nested documents are deleted. Thus all the locations in these documents
are deleted too. If you agree and want to proceed push 'OK' button in
a confirmation dialog.
Requirements
All requirements in
Requality project
are situated in 'Requirements' node.
Create requirement
There are several ways to create new requirement: from
'Requality Explorer', from 'UniEditor'
and from 'ModuleEditor'.
Requiremnts may be created both from scratch and from
requirement templates of current project.
Note that it is allowed to add new requirements as a child only for requirement and it is disallowed to add them to text node.
- From 'Requality Explorer'.
Select node to which you want to add new requirement and open its context menu.
If there are templates for requirements in the current project then in the context menu the action
'New → Requirement...' with drop-down menu with list of different requirements templates
will present. From this list user may create new requirement from any template or without template.
If there are no templates in project only action 'New → Requirement' will be available.
Choosing that action will lead to creation of new child requirement.
New requirement will appear in folder with requirements as sub-requirement for selected requirement.
- From 'UniEditor'. Select
requirement node to which you want to add new requirement. Then you have several ways to add new requirement:
- Move mouse pointer to top right corner of selected node and from drop-down menu choose
'Add Child Requirement' for creating sub-requirement or 'Add Sibling Requirement'
for creating requirement for the same level.
- Move mouse pointer to editor's top right corner and choose similar item from drop-down menu.
- From keyboard, press 'Ctrl+R' for creating new sub-requirement or
'Ctrl+S' for creating sibling requirement.
- From keyboard, press 'Ctrl+D', than in editors' top right corner will open a menu with legend,
you may select item from that menu or press key 'S' or 'R'
for creating sub-requirement of same level requirement respectevly.
If the active template for requirement is selected than in menu points will be a bit different names of items, that is name
of an item may be for example 'Add Child Requirement - basic', where 'basic' – is template name
instead of 'Add Child Requirement'. After those actions new window will be open.
If the active template was chosen all fields of new requirement except 'Id', will be filled with
information from template. Field 'Id' will be calculated by the following rules:
- If created requirement is the first sub-requirement it will have Id '001'.
- In other cases system will define the last identifier of the requirement on that level, increment it and
set to new requirement Id.
- From 'ModuleEditor'.
The sequence of actions is similar to one described for
'UniEditor' in previous clause.
- In 'ModuleEditor'. Actions are the same as for 'UniEditor' in previous point.
Create requirement by copying
Requirement can be created as copy of existing requirement.
- In 'Requality Explorer'. Copy can be made by 'Copy' context menu point.
Paste can be done by 'Paste into' point
(to add copy as a child to target node) or 'Paste near'
(to add copy as a sibling to target node). Copy will be paste to selected location in requirements tree.
You also may use hot keys 'Ctrl+c' and 'Ctrl+v',
in this case copy will be made in according with 'Paste near' method.
- In 'UniEditor' and 'Module Editor'. Open editor. Click once on requirement to copy.
It will become selected. Press 'Ctrl+c' hot key. Adter that click on requirement 'Requirements' or one of
its descendant, let us name it target, and then press 'Ctrl+v'. Requirement editor will be opened.
You can edit requirement attributes there.
When you finish just press 'OK'. Requirement will be paste as sibling to target one.
Create reference requirement
There are two ways to create reference requirement:
- Add 'REFERENCE' attribute to some existing requirement and set target requirement as its value;
in this way existing requirement becomes a reference requirement to the target requirement.
- Create new requirement as reference requirement to some selected requirement.
- First way is performed in 'Main' tab in the 'Properties' view.
Select a requirement and open 'Main' tab in the 'Properties' view. In 'Attributes'
table create new attribute by adding its name to the table. Then select 'REFERENCE' type in the
'Type' column ans click on the button with two dots in the 'Value' column. In opened dialog select target requirement.
- Second way is based on process of usual creation of requirements.
- Firstly select target requirement to be referenced. Select a requirement in 'Requality Explorer' and push button 1 (see piсture below)
in the toolbar at the window top. Button 1 has 3 states: disabled selection (denoted as '0'), single selection
(denoted as '1' and means that selection of reference requirement will work only for one following selection)
and multiple selection (denoted as '*' and means that selection of reference requirement will work for all following selections).
To change button state just click on it. So you may have to click several times to select needed state. If you selected target requirement as referenced
then move mouse focus and you'll see that this requirement is now shown in project catalog with white text on gray background (see 2 on the piсture below).
- Secondly you can create reference requirements. After target requirement has been selected you can create new requirements by usual way.
For example select text in a document, open context menu on it and select 'Create new Requirement…'. Created requirement will have 'REFERENCE'
attribute with name 'elaborates', which refers to target requirement.
- If target requirement has been selected in 'single selection' mode (icon '1' on the button) then after single reference requirement
creation the selection of target requirement will be switched off. If target requirement has been selected in 'multiple selection' mode (icon '*' on the button)
then all further created requirements will be created as reference requirements. To switch off mode of reference requirements creation just select target requirement
and set the button to '0' mode.
- Please note, name of 'elaborates' attribute is set by default and could be changed in project settings. Select project in 'Requality Explorer', open context menu and
select 'Properties'. In opened 'Properties' window select 'Requality' on the left. On the right in 'Reference settings'
section you can change default name of the attribute: set new name in 'Default reference name' field.
- Also please note, if you have some different projects opened in 'Requality Explorer', different target requirements could be selected in different projects at the same time.
And target requirement selection is kept till working session end. After Eclipse closing all target requirement selections will be canceled.
Delete requirement
Note! If you delete a requirement all its locations
are deleted and all corresponding marks in the documents are
deleted too.
- To delete the requirement choose it in 'Requality Explorer', select
'Delete Requirement' in the context menu.
- You also can delete a requirement in 'UniEditor' and 'ModuleEditor'
from drop down menu in the top right corner or node's drop down menu using 'Delete Requirement' menu
point.
- You can also use 'Delete' hotkey.
- In the opened dialog confirm deletion by pushing 'OK'.
Create requirement by selecting location
You can create a requirement in the document editor ('Markup
Editor') and add the location to it at the same time.
- Open document where you want to mark some location
for new requirement.
- Choose node 'Requirements' or some sub-requirement in 'Requality Explorer'. Let this requirement
be a target.New requirement we want to create will be sub-requirement for the target requirement.
- Select text part you want to be a location in 'Markup Editor'. Note! If required location
has already been marked for some requirement, you shouldn't select it in document text, just skip this step.
- Call context menu on selected text and choose one of two menu items:
- 'Create new Requirement:
<target_requirement_name>/<new_requirement_id>'.
Here '<new_requirement_id>' is generated automatically.
New requirement name (see
'Requirement properties') is empty.
- 'Create new Requirement:
<target_requirement_name>/<new_requirement_name>'.
Here '<new_requirement_name>' is the text of selected location.
Id for new requirement is generated automatically.
- Note! If the target requirement is 'Requirements' node,
'<target_requirement_name>' is not shown in these two menu items.
It looks like: 'Create new Requirement: <new_requirement_id>'
and 'Create new Requirement: <new_requirement_name>' respectively.
- Remember you always can change requirement id and name later.
Just edit properties of the requirement (see
'Edit requirement properties').
-
As a result, the target requirement gets new sub-requirement with the location.
The text of this location is marked in the document.
You can read about simple requirement creation here: 'Create requirement'.

Add location to requirement
A requirement can have some location (some links to text pieces marked in the document).
So you can add new location to an empty requirement (which has no locations yet)
or to a requirement, which has already have some locations.
- Open the document which text fragment you want to mark and add to the requirement.
- Select the target requirement in 'Requality Explorer'.
- Select needed text location in the document editor. Note! If required location
has already been marked for some requirement, you shouldn't select it in document text, just skip this step.
- Call the context menu on selected text and choose one of two menu items:
- 'Add to Requirement…' allows selecting target requirement independently.
In opened window select the target requirement. You can also create a new requirement
by 'Create New', button. After you chose the target requirement push 'OK'.
If chosen requirement is not one that you have chosen in step 2 it becomes a new target requirement.
- 'Add to Requirement: <requirement_name>' allows adding new location to
<requirement_name> requirement. Note! This is the target requirement you have selected in step 2.
-
As the result selected location is marked in the text and is added to the target requirement.
Delete location in document editor
To delete a location from the requirement you should delete its selection in the document.
Thus location will disappear from the document and from the requirement. Note! If the location belongs to
several requirements at the same time, it will be deleted from all these requirements. (If you want to delete
the location from the specified requirement only see
'Delete location in Properties view').
- Double-click on location in 'Properties view'. The document will be opened
and scrolled to the place where the location is situated.
- Call the context menu on the location and select 'Remove from Requirement'.
- Now you can see that this location is not marked in the document anymore and there
is no link to this text in the requirement 'Properties' view ('Description' tab).
Delete location in Properties view
Here is another way how to delete a location from a requirement. This way is suitable if the location belongs to
more than one requirement but you want to delete it from the one specified requirement.
- Open 'Properties'
view for the target requirement, open 'Description'
tab (see 'Edit requirement parameters').
- Select required location in 'Locations' list.
- In context menu select 'Delete' item. Or just use Delete hot-key.
Auto-mark locations in document
'Requality' allows marking locations in document automatically.
Select document in в 'Requality Explorer' and in context menu select
'HTML Headers Document Processor'. This processor allows marking HTML-headers
(text inside <h1></h1>, <h2></h2> and so on) as locations.
Every location is added to a new requirement.
Edit requirement parameters
To edit requirement parameters select the requirement
in 'Requality Explorer' or one of its locations
in 'Outline'. Now you can see requirement
properties in 'Properties' view.
Here we describe requirement parameters you can change manually.
-
Id
- Identifier is generated automatically by could be changed. Edit it directly in this field.
(Note! The identifier of 'Requirements' node can't be changed.)
- Note! If requirement name is empty the requirements is identified by Id.
- Id should be unique for all requirements on the same hierarchy level.
If input not unique id you get warning flag and this change is not saved.
- Id can’t begin or end with spaces. When saving such symbols are deleted.
-
Name
- Requirement name is empty by default (except the case
when you create requirement from a document and use it’s text as name –
see 'Create requirement by selecting location').
- Name shouldn’t be unique.
- Edit name directly in this field.
- If name is empty requirement is identified by Id, otherwise - by name.
Type
- By default the value 'Requirement' is set.
- To change it open a drop down list and choose one of possible varians:
'TextNode(Text)', 'TextNode(Header)' or 'Requirement'.
If you change value to 'TextNode(Text)' or 'TextNode(Header)' then node change its type
to 'text node'. In this case you should work with it as with text node
(see 'Text node').
-
Attributes
- Attributes are represented in a table of several fields: 'Name'(attribute name), 'Type'(attribute type), 'Value'(attribute value), 'Scope'(attribute scope)
and 'Generator' (value generator).
- To add attribute click on the first empty cell of the 'Name' column and set attribute name.
- To edit created attribute click on required attributes table field and edit it:
edit name in the 'Name' column, select attribute type in drop-down list in the
'Type' column, set value in the 'Value' column, choose attribute scope in 'Scope' column, set attributes value
generator in the 'Generator' column.
- Attribute name shouldn’t be empty. And it shouldn’t begin and end with spaces.
Attribute names in one requirement should be unique. If you try to add and save attribute with
incorrect name you get warning flag and 'OK' is not available.
- In column 'Type' choose a type of attribute. Default types are: 'INT',
'FLOAT', 'BOOL', 'STRING', 'LIST' и 'REFERENCE'. But in a case
if there are a global attributes for a project of 'ENUM_DEFINITION' type (см. 'Enumeration type (Enum)'),
the name of that attributes will be also shown in the drop down list in column 'Type' with Ⓔ prefix
as available enumeration type of attribute (see more about possible values below).
- In field 'Value' set the value of attribute. Now you can generate value by value generator (see more about it below).
- If you choose 'List' type then you need to set the set of values for this attribute.
You can do it with value generator (see information below about value generating) or manualy.
To set the values set manually click on 'Value' cell, then click on appeared button on the right.
Wizard of attribute values editor is opened ('List values editor'). Here you can select values type in a drop-down list.
And you can set values in the list below by clicking on cell in order from the top down.
If you want to change order of the values click on required value and use up or down arrows, value will be moved up or down.
To remove the value click on it and push 'X' on the right in the table, value will be removed. To finish editing push 'OK' button.
To cancel editing push 'Cancel' button.
- If you select an additional attribute type defined for project as 'ENUM_DEFINITION',
then you will see the first value defined in 'ENUM_DEFINITION' as default one.
To select another value for attribute you can click on cell in column 'Value', then click on button
on the right and select in drop down list one of possible values
(you can see how to set those values for 'ENUM_DEFINITION' in 'Edit Requality project properties').
- To choose the scope of attribute you need to click on 'SCOPE' cell and choose one of available variant from drop-down list:
'LOCAL', 'DIRECT_CHILDREN' or 'SUBTREE'.
- 'LOCAL' - attribute will be availiable only for current node.
- 'DIRECT_CHILDREN' - attribute will be availiable for current node and its direct childs (and not visible for childs of childs).
- 'SUBTREE' - attribute will be availiable for current node and its subtree.
- To set or edit value generator click on the field in the 'Generator' column, then click on appeared button on the right.
Wizard of 'Attribute value generator' is opened, here you can set all generator parameters: select generator type ('Attr. gen. type')
and attribute scope in the corresponding drop-down lists. And set additional generator parameters depending on the generator type:
- If 'BY_FORMULA' type is set then set formula.
- If 'RANDOM' type is set then set min and max values and required number of values.
Push appeared 'Generate new set' button if you want to generate other set of values according to current generator parameters.
- If 'CYCLE' type is set then set from and to values and step size.
The result of generation will be shown in the field 'Preview'.
Read more about generator parameters here: 'Attribute value generator'.
To finish editing of generator push 'OK' button. To cancel editing push 'Cancel' button.
- NOTE! If you edit a value in 'Value' field and this attribute also have an generator it will
delete existing generator (that means that manual edition of generated values is the same as entering a value
for attribute without generator).
- To delete attribute you may use the cross image at the last column and confirm the deletion in showed dialog
by pressing 'OK'.
-
Alternative
Description
- Is empty by default.
- Edit alternative description text directly in this field.
-
Locations
-
Predicate
- Edit it directly in this field.
- Rules for writing predicates are equal to JavaScript predicates.
Transferring locations to new document version
'Requality' allows transferring locations to a new document version.
If you have a document with locations and you get a new document amended
and supplemented than you may want to transfer old locations to the new document. Do the following:
- Be sure new document is imported to the project. Otherwise import the document
to a recent project.
- Select the new document in 'Requality Explorer' view and select
'Update Document' in context menu.
- In opened window select old document.
- After the processing is complete the window with information about the number of locations found in the old version and the number of locations transferred
into a new version will appear.
- In any case, user should check transfer of all the requirements: for every requirement user should confirm the correct transfer or modify the requirement.
After document processing in 'Requality' perspective you'll see 'Update Processor Tasks' view
This view shows recent state of every project catalog requirement and provides the ability to change transferred requirements statuses manually.
In the view user can analyze and modify requirements. For every task there is a related requirement and action to perform. There are 3 types of actions (depends on 3 possible requirement states):
- 'Verify' – all requirement locations have been transferred, user should only verify the correctness of the transfer.
- 'Add Locations' – requirement locations have been transferred partially, user should find analogues of not-transferred locations
or make sure new document doesn't contain these locations.
- 'Find Locations' – none of requirement fragments has been transferred. User should find analogues of not-transferred locations
or make sure new document doesn't contain these locations or the requirement in a whole.
-
User can open considered requirement both in the old document and in a new one. In the old document, all requirement
locations will be marked in a text. In the new document only transferred requirements will be marked. If none of the
requirement locations has been transferred there will be no marked locations.
- Note. In case of switched-on synchronization between 'Requality Explorer' and browser
(toggled button 'Link with Editor' in the 'Requality Explorer' toolbar) opening of two documents from
view 'Update Processor Tasks' may be incorrect for task with none locations in the new document (with red icon).
For correct opening of the locations, it is suggested to switch-off the synchronization between browser and 'Requality Explorer'.
- Here user can modify the requirement: add or remove locations and mark requirement status as checked.
Checked requirements get 'Completed' status, you can customize view to hide checked requirements in the table.
For this purpose use the button 'Hide Completed Items' in the toolbar. After all requirements have been checked
and modified (if needed) manually you can remove tasks list from the view. It can be done be two ways: delete one current
task using button 'Delete Selected Task' or using button 'Delete all Update Processor Tasks' for deleting
all update processor tasks for current project. Deletion may be undone from menu 'Edit → Undo …'.
In addition, after transfer finished it is recommended to remove old document from the project.
- Note. It is assumed to transfer requirements sequentially for different documents. Firstly, requirements from one document are transferred and if
necessary corrected. Then proceed to the following documents.
Generate test for requirement
'Requality' allows to add new tests to a test purpose or a requirement by using extending test generator.
'Requality' provides test generation by special pattern.
Tests can be generated from 'Requality Explorer':
- Select a requirement or a test purpose in 'Requality Explorer'.
- Open a context menu for the selected element and choose 'New → Test'.
- List of available generators will be displayed. If there is no test
generator available, dialog window with title "Test generators are not
available" will be shown. In this case it is required to install
additional plugins that includes test generators. One of them 'Requality Coverage' plugin is available now on Requality update site.
- When test generator is selected there will be shown a dialog window to configure selected generator.
For example for 'ttcn' test generator implemented in 'Requality Coverage Tool' its required
- to select project for a new test,
- to set name of a test file,
- to confirm target requirement or test purpose
- to confirm or to change a template of selected file
It is also possible to add test from 'Coverage' report by
pressing "Add test" button in the report view.
Also you can use Eclipse main menu → 'File' → 'New' → 'Other' → folder 'Requality' → 'Create Test'.
Linked requirements
In 'Requality' project different catalog nodes could be linked one to another. The linking is set only in one direction:
down up. To you want one node to be linked to another one open 'Main' tab in 'Properties' view and add 'REFERENCE'
type attribute and set target node as a value. The target node will not get additional reference attribute but you will see this link
in 'Requality Links Explorer' view. Open this view by main
menu 'Window' → 'Show View' → 'Other', expand 'Requality' and select 'Requality Links Explorer'.
This view shows nodes linked to a selected node. If selected node has 'REFERENCE' attribute with a link to other node as
value you will see it in the view and icon 'down arrow' near it. Nodes that links to this node will be shown
with 'up arrow' icon. Near the icon you can see name of 'REFERENCE' attribute in which the link is set.
Wherein if recent node links to other one you'll see only attribute name. But if this node links to a recent node you'll see
prefix 'Backward_' in attribute name. You can expand or collapse info about linked node by clicking on arrow near the
arrow icon. If you click on node name in 'Requality Links Explorer' view the node becomes selected and you'll
see info about it in the view..
You can customize 'Requality Links Explorer' view to show only nodes recent node links to. Just push button 1 (see picture above)
one or more times to set it to 'down arrow' state. If you want view to show only nodes that links to recent
node set button 1 to 'up arrow' state.
Button 2 (see picture above) allows to filter nodes by names of 'REFERENCE' type attributes. To activate filter push button 2
and select required names in opened window (this window contains all names of 'REFERENCE' attributes of recent project).
If you want to show all nodes click on the 'Use all references'.
Node templates
To create a node template in 'Requality' project you need first to open a templates editor:
- First way.
- At any node of requirements tree you can call a context menu and choose a point
'Edit in UniEditor', 'Edit in Module Editor' or 'Review'.
- Then you can press a button on top left corner 'Templates'.
After that you will see an 'Templates Editor' dialog, where you can create or edit
node templates and choose an active template.
- Second way.
- Right-click on project in 'Requality Explorer' and in 'Properties' view move to 'Templates' tab.
The contents of this tab is functionally equalls to dialog of templates edition.
Here you also can create, delete or alter node templates and can choose an active template.
Please note that in templates editor in field 'List of templates' you may see a list of templates only for
that type of node that is selected in 'Select Node Type' list.
To stop working with templates just press the 'OK' button.
Create template
There are two ways to create a node template:
- Create template from 'scratch':
- In templates editor (how to open is explained above) choose a node type, for which you want to create a template.
After that in 'List of templates' list it will show all existing templates for choosing type of nodes.
- Press a button 'Create template'. It will open an create template dialog for new template of choosed type.
- In shown window you may set the attributes of template. Attribute edition process is equal to that described for 'Properties' view.
See:
- To stop templates edition press 'OK'.
After that you will see a new template in 'List of templates'.
- Create new template from existing node.
Developed in this way, template will have the same attributes as the base node from which it was created.
- In templates editor (how to open is explained above) choose a node type, for which you want to create a template.
After that in 'List of templates' list it will show all existing templates for choosing type of nodes.
- Press 'Extract template' button. Select a node in showen dialog from which you want to create a template.
Note that in the list you will be able to select only nodes of type selected in templates editor.
- Press 'OK' to finish a process.
After that you will see a new template in 'List of templates'.
Delete template
To delete a template:
- Open a templates editor (how to open it is explained above).
- Choose a type of node for which you want to delete a template. In field 'List of templates'
you will see all existing template for this project and for choosed type of nodes.
- Click in 'List of templates' on template which you want to delete.
- Press a button 'Remove' on the right of the list.
After that you will see that this template will dissapear from templates list (that means that it was deleted).
Edit template
To edit a template:
- Open a templates editor (how to open it is explained above).
- Choose a type of nodes for which you want to edit a template. In field 'List of templates'
you will see all available in this project templates of selected type.
- Click in list 'List of templates' on template you want to edit.
- Press a button 'Edit' on the right of the list (or just double click on template in list).
As a result you will see an edit template dialog. You may edit template attributes in the same way as attributes
of corresponding node type in 'Properties'. See:
Select active template
To make one of existing templates active (what is active template is explained here),
you need to do the following:
- Open a templates editor (how to open it is explained above).
- Choose a type of nodes for which you want to select an active template. In field 'List of templates'
you will see all existing templates for choosed type of nodes.
- Click in 'List of templates' by template you want to make active.
- Click on 'Set as active button on the right of list.
After that you will see that selected template in list 'List of templates' is marked as bold. That means that templates is now active.
Now all new nodes of the same type will be created from this template.
Text nodes
In Requality project all text nodes
are in 'Requirements' subtree. Text node is very similar to requirement
(see 'Requirements').
Create text node
You can create text node in the same way as requirement (see 'Create requirement').
Create text node by copying
You can create text node by copying in the same way as requirement by copying
(see 'Create requirement by copying').
Delete text node
You can delete text node in the same way as requirement (see 'Delete requirement').
Note that if you delete text node then subtree of its descendants will be also deleted.
Edit text node
You can edit text node in the similar way as you edit requirement
(see 'Edit requirement'). Except for:
- For text nodes in 'Properties' view in 'Main' tab in 'Type' field you can choose:
'TextNode(Text)' or 'TextNode(Header)'. For that you need to open a drop down list and select an appropriate value.
In this field you also may select an 'Requirement' point. In this case node will change its type to requirement.
(You can see how to work with requirement 'Work with requirements').
- Text node stores its description in 'Description' field, it is located in 'Properties' view in 'Description' tab
and you may work with it in the same way as with 'Alternative Description' field of requirement.
- Text node has no locations. Thats why in 'Properties' view in 'Description' tab it has no
field 'Locations'.
Test purposes
All test purposes in Requality project
are situated in 'Requirements' node in terminal requirements
(requirements that have no sub-requirements).
Create test purpose
Note! Test purpose could be added only to terminal requirement
Test purpose can be created in several ways: in 'Requality Explorer' and
in 'UniEditor'. Test purposes can be created from scratch and from
Test purpose templates of current project.
- In 'Requality Explorer'.
Select a terminal requirement, let us name it target.
Open a context menu by right-click on target.
If there are a test purpose templates in a project then in context menu you can see a point 'New → Test Purpose...' with drop down list of templates.
You can create a test purpose by one of those templates by selection of corresponding point in drop down list. It is also possible to create test purpose from scratch by
specific point.
If there are no test purpose templates in project then you will see only the one point 'New → Test Purpose'. If you select this point
it will create an empty test purpose. When you performed one of selected actions you will see a new test purpose in target requirement.
- In 'UniEditor'. Choose
a terminate requirement, for which you want to add a test purpose child. Then you can add a new test purpose for one of possible ways:
- Hover a top right corner of chosen requirement and select in drop down menu a point 'Add New Test Purpose'.
- Hover a top right corner of editor and select the same point in drop down menu.
- Press Ctrl+P on keyboard.
- Press Ctrl+D on keyboard and then, when a drop-down menu appears in the top right corner, you can choose a point as it is shown in p.2,
or just press 'P'.
If there is an enabled template for test purposes in a project, then in corresponding menu points will be shown its id. That means that 'Add New Test Purpose'
will be renamed, for example, to 'Add New Test Purpose - basic', where 'basic' – is an id of template.
After presented actions you will see an dialog for test purpose edition.
If an active template was seleted then all fields excepting 'Id' will be filled from that template.
'Id' field will be formed in this way:
- If it is the first test purpose to be created then its identifier will be '001'.
- If it is not, then the system will use an incremented identifier of last test purpose on the same
level.
Create test purpose by copying
Test purpose can be created as copy of existing test purpose.
- In 'Requality Explorer'. Copy and paste of test purpose can be made by meand of 'Copy' and 'Paste into'
points of context menu.
Test purpose will be created as child of selected node. Note that it is only possible to pase a test purpose to terminal requirement.
You can also use 'Ctrl+c' and 'Ctrl+v' hot keys for copying.
- In 'UniEditor'. Open editor. Click on test purpose to be copied once.
It will become selected. Press 'Ctrl+c' hotkey. Then select a 'Requirements'
or any its descendant (let us name it as target), that has no child requirements, and press 'Ctrl+v'.
An test purpose editor will be shown. You can edit an attributes there.
Do all you want and press 'OK'. Test purpose will be paste as child of target requirement.
Edit test purpose properties
To edit test purpose parameters select this test purpose in 'Requality Explorer'.
Now you can see its parameters in the
'Properties' view.
Here we describe test purpose parameters you can change manually.
- Id
- Identifier is generated automatically but could be changed manually. Edit it directly in the field.
- Id should be unique for all the test purposes of the same requirement.
If you input not unique id, you get warning flag and this change is not saved.
- Id can’t begin or end with spaces. When trying to save changes, such symbols are deleted.
- Test target
- By default it is a requirement for which you create this test purpose.
- To edit push 'Browse...' button near and select a requirement.
- You can select only the requirement that has no any sub-requirements.
- Status
- By default 'in process' is set.
- To edit status, open combo box and select one of three available statuses.
- Author
- By default it is a user name that was set while registering in Eclipse.
- Edit author name directly in this field.
- Attributes
Attributes of test purposes are identical to requirements attributes.
And you can work with it the same way. (Read more here).
- Description
- Is empty by default.
- Edit alternative description text directly in this field.
- Expected Results
- Is empty by default.
- Edit expected results text directly in this field.
- Predicate
- Edit directly in this field.
- Predicates should be formulated according to the JavaScript rules.
Delete test purpose
Test purpose can be deleted in 'Requality Explorer'. In this case you need to select it, right click and choose 'Delete Test Purpose' in context menu.
In 'UniEditor' test purpose can be removed in drop down menu of node or drop down menu on right top corner of editor
by selecting a menu point 'Delete Test Purpose'. Also you can use hot key 'Delete'.
In any case you need to confirm deletion in showed dialog by pressing 'OK' button.
Generate test for test purpose
Requality allows to create a new test aimed to check a test purpose in the same way as it made for requirement. Read more
here.
Reports
Create report settings
To create report you must first create Report Settings.
Report could be generated for some node named Root requirement.
Such report contains information about selected node itself and all its
subrequirements.
A report type depends on selected template.
To create report settings node click on 'Reports' node (or any report folder) and select
'New → Report Settings' in the context menu. Report settings will be created.
Edit report settings parameters
To edit report settings parameters select this report settings in 'Requality Explorer'.
Now you can see its parameters in the
'Properties' view.
Here we describe report settings parameters you can change manually.
- Root requirement
- Requirements node is set by default.
- Push 'Browse...' button, in the opened window select other requirement and push 'OK'.
- Template
Attributes
Attributes of report settings are identical to requirements attributes.
And you can work with it the same way (read more here).
Working with 'Coverage' report
'Coverage' report is designed to present information about coverage of
requirements and test purposes by tests.
To build coverage report its required to select source of coverage information:
- Create a new report.
- In Properties view select 'Coverage' template for the report.
- Open context menu for the report in 'Requality Explorer' view and select 'Update Coverage Source'.
- Then choose one of available coverage sources:
- 'From File' collects coverage information from a file (see
'Coverage file'). Use file
selection dialog to choose a file.
- 'Coverage By Projects' collects coverage data from another
Eclipse project available in the same workspace. You will be asked for
the following additional parameters:
- Projects where needed files will be searched.
- Extension of these files .
- Regular expression to find identifiers of requirements and
test purposes. The first capturing group is used to extract found value.
More information about regular expressions see here: Java regular expressions.
- When coverage source is chosen it is possible to generate report as
usually.
Working with 'Document Model' report
'Document Model' report is designed to present information about coverage of document locations by tests. Working
with 'Document Model' report is similar to 'Coverage' report but as a result you get a document with selected locations where the color of selection shows if this location has been covered or not.
To build coverage report its required to select source of coverage information:
- Create a new report.
- In Properties view select 'Document Model' template for the report.
- Open context menu for the report in 'Requality Explorer' view and select 'Update Coverage Source'.
- Then choose one of available coverage sources:
- 'From File' collects coverage information from a file (see
'Coverage file'). Use file
selection dialog to choose a file.
- 'Coverage By Projects' collects coverage data from another
Eclipse project available in the same workspace. You will be asked for
the following additional parameters:
- Projects where needed files will be searched.
- Extension of these files .
- Regular expression to find identifiers of requirements and
test purposes. The first capturing group is used to extract found value.
More information about regular expressions see here: Java regular expressions.
- When coverage source is chosen it is possible to generate report as
usually.
Working with 'Progress' report
Report template 'Progress' is designed to present information about project’s statistics from SVN.
ATTENTION! To generate 'Progress' report 'Requality Subclipse Connector' plugin should be installed (available by 'update site').
This plugin requires adding address "http://subclipse.tigris.org/update_1.8.x" to 'available software sites'. You can do that by copying the address
to the field 'Work with' of the 'Install' dialog. After those actions, the plug in 'Requality Subclipse Connector' may be installed in a usual way.
To build statistic report it is required to :
- Create new report settings. In the 'Properties' view set the template 'Progress'.

- Optionally user may choose one of the available coverage sources. For example to add to the
report also the information about coverage by test purposes of by data of other projects.
To do this select 'Update Coverage Source' button in 'Properties' view and choose the source.
These actions are similar to those described in report generation for 'Coverage' template.

- In addition, it is available to use additional parameters for this report. To do this in the 'Properties'
view push the button 'Open Settings' and in the opened window select 'Progress for selected dates' or
'Progress for all available dates' radio button. In case of 'Progress for selected dates' it will be
required to select the beginning and end dates of the intended period and also to state the minimum step between revisions.
The step should be stated in the following format: '1 week 2 day' or '5 month'. Also it is allowed
to use not full names of period but the short ones, for example 'd' instead of 'day', 'w' instead of 'week',
'm' instead of 'month' and 'y' instead of 'year' (for example '1 w 2 d'). Use 'OK' button to close the dialog window.

- Then generate report in a usual way.
Working with 'Traceability' report
Report template 'Traceability' is designed to present information about
the links-references (of specific type) between nodes in selected part of 'Requality' project catalog.
Report consists of two pages:
- On the first page it is a data about direct links (that means elements on which target element is referred to).
- On the second page it is a data about reverced links (that means elements that referred to target element).
'Traceability' report:

By default first page is opened. To open second page you should click on reverse link name
(mark 2 on the picture below). The name could be set in project properties. To turn back click on direct link name (mark 1 on the picture below).
If collapsing mechanism has been launched in report settings (it is launched by default) then there will be buttons for expanding and collapsing on
report pages for all strings (3). And for every string with the initial node name (4) there will be expand/collapse arrow to
show if referred (by link 5) nodes are expanded or collapsed.
4 and 6 shows results of values substitution to the primary and secondary patterns (described in 3 below). At the same time there is an information about
reverse link for 6 on the second page. So you can click on 'Backward_relates_to' to open the second page.
To generate report do the following:
- Create new Report Settings node. In the 'Properties' view set the template 'Traceability' .
- Set referense type you want to generate report to. To do this push 'Open Settings' button. In opened window
on the leftПосле этого откроется окно настройки отчета в левой части которого (1,2) you'll see a list of available
link types (possible names for 'REFERENCE'). In the brackets near the name you can see a number of catalog
nodes that has such a link. select one of them and push 'OK'.

- There is an option to customize report in details. Generated report will contain two kinds of strings: information
about both initial referred node and target node. Number 3 on the picture is an example of generation where you can
see 2 strings: 'Requirements/01 [Backward...]' and 'Requirements/02 [Backward…]'.
The first string contains information about initial referred node. Its generation template is marked as 4 and is named
'Primary template'. The second string contains information about target (referred to) node.
Its generation template is marked as 5 and is named 'Secondary template'.
- Templates of these strings can include html and designation of so-called groups (see explanations below).
Groups are identified by their numbers in square brackets (for example '[1]' for the first group).
When generating groups designations will be replaced by values generated by rules (see below).
Number 6 on the picture marks field of groups number selection. Below there are settings for every group.
- So, the group is a designation of some of the generated values, which in turn can contain a link.
For example, you can use a group to display the 'id' element with the ability
to select the item in the requirements catalog when pressed.
One more example: text 'Site' with the link 'www.ru' will create the text that will be
an active link to selected internet page.
- Example of group desription is marked by 7 (for group number 1). We should note that despite group
fields are drop-down lists there is a possibility to add any html values. This proposed values lists include
some available parameters of report and its elements (for 'primary' – initial node, for 'secondary' – target node).
- The first group is marked as 'Text(8)'. This value will be shown by default if there is no something link referres
to and there is no project catalog node (for 'secondary'), for which there shown following values instead of 'Text':
- {user-visible-name} — path to node (for 'Primary' — for the first, 'Secondary' — for the second in the relation)
- {attribute-name} — link name
- {value} — node name(for 'Primary' — for the first, 'Secondary' — for the second in the relation)
- {revert-attribute-name} — name of the revert link (for the secong page - initial)
- {name-or-id} — name of target node or 'id' if it is empty
- {this-page} — recent page name ('trace' for 1, 'tracerev' for 2)
- {next-page} — the other page name ('tracerev' for 1, 'trace' for 2)
- Available both ReportSettingt node properties (by expression «{#name}»), and node properties (by expression {@name}).
- Second group field (marked as 'Link(9)') contains a link that will be used when clicking on the group.
For this field all parameters of 'Text' are available, but there is additional parameter {requality-cnf} -
link to switch selection in 'Requality Explorer'.
- Third and fourth fields (10 and 11) contains text that will be shown instead of group if there is no
requirements catalog ('on missing ref') and if there is no linked target node
(only for links to an anchor in the current document #, standard anchor will be discussed below).
For these fields there will be available additional {skip-line} to pass corresponding string that is generated
by 'Primary' or 'Secondary' template.
- The latest element in 'Traceability' report settings window — setting of the ability to turn off
collapsing of 'Secondary' string by clicking on 'Primary'. By default it is active.
- The above-mentioned anchors are constructions like <a id=”path_to_node”/>.
It allows to use links like 'page_name#path_to_node' to switch to selected element
when clicking on the group. If there is no required anchor instead of group you'll see
a value generated by 'text on wrong link' field.
- Then generate report in a usual way.
Delete report settings
- To delete the report settings select it in 'Requality Explorer', select
'Delete Report Settings' in the context menu.
- You also can use 'Delete' hot-key.
- In the opened dialog window push 'OK'.
Generate report
- There are two ways to generate report:
- Select required report settings node in 'Requality Explorer',
and select Generate report in the context menu.
- Or just select required report settings node in 'Requality Explorer' view and
push 'Generate' button in its 'Properties view' in 'Report Settings' tab.
- Report is generated near (on the same hierarchy level) the node of report settings on which the report has been generated.
- Attribute 'date' is generated automatically in report attributes table. It contains date and time of report generation.
Open and edit report
- Select required report in 'Requality Explorer' and double click on it. The report is opened.
- Note! In 'Properties' view you can see parameters of report settings that was used to generate this report. But you can change only report identifier.
Delete report
- To delete the report select it in 'Requality Explorer', select 'Delete Report'
in context menu.
- You also can use 'Delete' hot-key.
- In the opened dialog window push 'OK'.
Create reports folder
There is possibility to create folders in 'Reports' node and set reports settings and reports there.
It helps to comfortably organize reports in 'Requality' project.
- To create a reports folder select 'Reports' node or any it’s sub-folder
(if exists), select 'New → Folder' in the context menu.
- In the opened window input folder name to the 'Enter folder name' field.
- The name shouldn’t replicate name of folders are on the same hierarchy level
in the reports node. Otherwise you get a warning and can’t proceed.
- After you input a correct name push 'OK'. Now you can see this folder in 'Requality Explorer'.
Now you can create report settings and generate reports in the new folder.
Delete reports folder
-
To delete a reports folder choose it in 'Requality
Explorer'.
- Select 'Delete Folder' in the context menu.
- You can also use 'Delete' hotkey.
-
Note! If you delete the folder
all nested nodes are deleted. If you agree and want to proceed push 'OK' button in
a confirmation dialog.
Comments
Create comment
Comment can be create in requirement, test purpose or text node.
Comment can be created in several ways: in 'Requality Explorer',
in 'UniEditor' and in 'Review'.
Comments can be made from scratch or created from Comment template from current project.
- In 'Requality Explorer'.
Choose a target node, to which you want add a comment, let it be named as target. Open a context menu by right click on target.
If comment templates are available in project then you will see point 'New → Comment...' with drop down list of templates.
You can create comment from any available template or create an empty Comment.
If there are no templates in project then you will see only one menu point 'New → Comment'. If you choose it then empty
comment will be created. When you performe one of listed action you see new child comment in target node.
- In 'UniEditor'. Choose
a node to which you want to add comment. Then you can add a comment in several ways:
- Hover a top right corner of selected node and choose in drop down menu a point 'Add new Comment'.
- Hover a top right corner of editor and choose the same point in drop down menu.
- By pressing Alt+C on keyboard.
- By pressing Ctrl+D on keyboard and then, selecting a point in dropdown menu at the top left corner as it shown in p.2,
or by pressing 'C'.
If you have selected an active template for Comments then in menu points it will be displayed as 'Add New Comment - basic', where 'basic' – is a name of template.
Point 'Add new Comment' will be also available for Comment node, but in this case new comment will be added as a sibling to target Comment.
When you done one of listed actions you will see an Comment creation dialog.
If an active template for Comments is selected then all field of dialog, excepting 'Id', will be filled
from that template.
The value of 'Id' field will be formed in this way:
- If you create the first child comment then it will have identifier '001'.
- If you already have child comments on target, then system will use the incremented value of the last child comment.
- In 'Review'. Process is similar to one for 'UniEditor' in previous section.
Create comment by copying
Comment can be created as copy of existing comment.
- In 'Requality Explorer'. You can copy a comment by menu point 'Copy'.
Pase of copied comment can be made by 'Paste into'
(to add a comment as a child) or 'Paste near'
(to add a comment as a sibling) points. Copied node will be paste in selected place of requirements tree.
Please note thaat if you try to add a copy to comment as a target then copied node can be pasted only as a sibling.
Also you can use hot keys 'Ctrl+c' and 'Ctrl+v',
and in this case the mechanics of process will bes 'Paste near'.
- In 'UniEditor' and 'Review'. Open one of those editors. Click on comment you want to copy.
It will become selected. Press hot key 'Ctrl+c'. Then click on 'Requirements' node or some of its subrequirements,
let it is named as target, and then press 'Ctrl+v'. You will see an node editor for comment, where you can change its attributes.
When you done press 'OK'. If you select comment as target node then copied one will be added as sibling, else it will be added as
child.
Edit Comment
To edit Comment, click on it in 'Requality
Explorer' and you will see its attributes in 'Properties' view.
Below you can find an attribute that can be
edited manualy.
Name
- Name of comment is not set by default.
- Name can be not unique.
- Edit name directly in this field.
- If name is not defined then comment will be identified by identifier(Id),
otherwise - by name.
Author
- By default will be defined as name of user entered during the registration in Eclipse.
- You can edit the author name directly in this field.
Field for text of comment
- Is empty by default.
- You can edit the text of comment dirrectly in this field.
Delete Comment
You can delete a Comment in 'Requality Explorer'. To do so you need to select target Comment, right-click on it and select a point 'Delete Comment' in context menu.
In 'UniEditor' and 'Review' editors Comment can be deleted in drop-down menu of node or drop-down menu on the top-right corner of editor
by selecting 'Delete Comment' point. Also you can use hot key 'Delete'.
After one of proposed actions you need to confirm Comment removal in displayed dialog by pressing 'OK' button.
Node sorting in Requality project
Nodes in a projects can be sorted in three ways: 'By Locations', 'By Names' and 'By Index'.
Default method is 'By Locations'.
-
By Locations - requirements will be sorted by locations of linked text fragments (Locations). If requirement
has several fragments then the order of sort is defined by position of the first fragment.
Requirements having no fragments will be placed to the end of sorted list and will be sorted by name.
In a case of Locations located in different documents in a project, sort will be depend on Documents names
(Documents are sorted by names).
-
By Names - requirements are sorted by names (first - in ascending order, then - by alphabet).
If requirement have no name or names are equals then sort is done by id.
-
By Index - requirements are sorted by indexes. Index in this case is the user-defined position
of requirement. For this sort it is possible to set a positon of requirement by moving it
with pressed 'Shift' key in 'Requality Explorer'. Requirement needs to be droped on the one after which
it needs to be placed. For example, for requirement tree
moving of 004 requirement to 002 requirement with pressed 'Shift' will cause the order
Please note the option 'Sort elements types separately'. If activated it will cause
the different types of nodes in requirements tree to be sorted separetly. If this option is disabled
then different types of nodes will be sorted without separation by type. Option is enabled by default but
it is recommended to disable it if you want to work with selected "By Index" sorting.
Sorting settings of Requality project
To change a sorting settings you need to:
-
Open a context menu in 'Requality Explorer' on target project and select a point 'Properties'.
An settings dialog will be shown.
- At the left side of dialog choose 'Requality'. After that at the right side you will see an 'Requality' settings.
- To change sorting mechanism('By Locations', 'By Names' or 'By Index') you may open a drop-down list 'Sort method', select one you needed and then press
'Apply'.
- You also can change an 'Sort elements types separately' option by clicking on corresponding Combo Box.

After that the changes on sorting will be applied to project.
UniEditor
Open UniEditor
In 'UniEditor' you can open
requirements tree (with test purposes and comments).
The root node of this tree is a requirement on which you called 'UniEditor'.
Thus in UniEditor you can open whole requirements tree (just call 'UniEditor' on root
'Requirements' node) or some sub-tree
(call it on some sub-requirement).
You need to do the following to open an editor:
- Select target requirement in 'Requality Explorer',
in context menu select 'Edit in UniEditor'.
Note! In 'UniEditor' you can use hot keys for you convenience.
See 'Keyboard in UniEditor, Review and Module Editor: hot keys'.
Add new requirements in UniEditor
The procedure of adding new requirements is described in 'Create requirement'.
The procedure of adding new requirements by copying is described in 'Create requirement by copying'.
Delete requirement in UniEditor
The procedure of requirement deletion is described in 'Delete requirement'.
Edit requirement in UniEditor
Requirement field consists of two parts. The upper one contains requirement name,
the lower one contains requirement alternative description.
- To edit requirement name double-click on the upper part of the field.
The field becomes editable. To finish editing click somewhere else on the screen.
- To edit requirement text double-click on the lower part of the field.
The field becomes editable. Here you can see control panel to edit the text.
It includes buttons for text formatting, for adding symbols, pictures, links, etc.
To save changes push 'Save' button in this menu. Also you can use button to undo editing.
- You can also edit requirement in node editor. Move mouse pointer to triangle in top right corner
of node and choose menu point 'Open Editor'.
Then you can change attributes of requirement in showed editor.
To save changes please press 'OK' button.
- To change requirement status click on status-icon on the left side of the
requirement name. When clicking, the status changes from 'in process' to
'complete' and vice versa.
Add new text node to UniEditor
The procedure of adding new text node is described in 'Add text node' section.
The procedure of adding new text node by copying is described in 'Add text node by copying' section.
Delete text node in UniEditor
The procedure of text node delete is described in 'Delete text node' section.
Edit text node in UniEditor
Text node has two fields. At the left of top field you can see button. It can be used to
change node type from 'Text' to 'Header' and vise versa.
- Text node contents can be edited by double-clicking on bottom field.
You will see a panel with different buttons for text formatting, for adding
a symbols, images and so on. To save changes please press button with folder icon.
To cances changes you can press button with cross icon.
- To change type of text node click on image at the left of text node.
Type will be changed from 'Text' to 'Header' and vise versa.
- You can also edit text node in node editor. Then you need to hover a triangle
at the top right corner of node and select menu point 'Open Editor'.
Then you can change attributes of text node in shown editor.
To save changes please press 'OK' button.
Add new test purpose in UniEditor
The procedure of adding new test purpose is described in 'Create test purpose' section.
The procedure of adding new test purpose by copying is described in 'Create test purpose by copying' section.
Delete test purpose in UniEditor
The procedure of test purpose removal is described om 'Delete test purpose' section.
Edit test purpose in UniEditor
The field of the test purpose consists of two parts. The upper part contains the name of the test purpose;
the lower part contains the text of the test purpose.
- To edit test purpose name double-click on the upper part of the test purpose field.
The field becomes editable, and you can make changes. To finish editing click anywhere else on the screen.
- To edit test purpose text double-click on the lower part of the test purpose field.
Here you can see control panel to edit the text.
It includes buttons for text formatting, for adding symbols, pictures, links, etc.
To save changes push 'Save' button in this menu. Also you can use button to undo editing.
- You can also edit test purpose in node editor. Move mouse pointer to triangle in top right corner
of node and choose menu point 'Open Editor'.
Then you can change attributes of test purpose in shown editor. When you done just press 'OK'.
- To change test purpose statuse, click on status-icon on the left side of the
requirement name. When clicking, the status changes from 'in process' to
'complete' and vice versa.
Add comment in UniEditor
The procedure of adding new comment is described in 'Add a comment' section.
The procedure of adding new comment by copying is described in 'Add a comment by copying' section.
Delete comment in UniEditor
Instructions on how to delete a comment can be found in 'Delete a comment'.
Edit comment in UniEditor
To edit the text of the comment, double click in the comment field.
Here you can see control panel to edit the text.
It includes buttons for text formatting, for adding symbols, pictures, links, etc.
To save changes push 'Save' button in this menu. Also you can use button to undo editing.
Review
Working in 'Review' is similar to working in 'UniEditor',
but more limited in functionality. Here you can't add or delete requirements and
test purposes, you can only edit their status.
Open Review
In 'Review' editor you can open
requirements tree with
test purposes and
comments.
Requirement for which you open 'Review' is displayed as root node.
It means that you can open the requirement tree in a whole (by calling them in the
'Requirements' root node) or separate
requirements sub-tree
(by opening the editor on the several sub-requiremets).
To open ediotor you need to do the following:
- In 'Requality Explorer' choose the target requirement, open context menu and chose 'Review'.
Please note! In 'Review' it may be convinient to work with hot keys.
You can read more at 'Keyboard in UniEditor, Review and Module Editor: hot keys'.
Edit statuses of the requirements and test purposes in Review
To change the status of requirement/test purpose click on status-icon on the left side of the
node name. When clicking, the status is changed in the following order:
'in process' → 'complete'
→ 'verified' → back 'in process', etc.
Hotkeys in Review
When working in 'Review' you can use hotkeys. In 'Review' there are hotkeys not only for
manipulation with comments but for some other usages too.
The list of all hotkeys for 'Review' is similar to the list of
hotkeys for 'UniEditor',
except for the prohibited usages.
Module Editor
'Module Editor' is silimar to 'UniEditor', but has more restricted functionality.
You can work here only with requirements and text nodes.
Open Module Editor
In 'Module Editor' you can open
requirements tree including text nodes. It uses node you select before calling 'Module Editor' open as root. You can edit
full requirements tree if you open 'Module Editor' on root requirements node 'Requirements'). One also can edit
subtree of requirements
(by calling editor on root of selected subtree).
To open an editor you need to do the following:
- In 'Requality Explorer' please select
a target requirement or text node, open a context menu and select a point 'Module Editor'.
Keyboard in UniEditor, Review and Module Editor: hot keys
In 'UniEditor', 'Review' and 'Module Editor' editors you can use hot keys to work only from keyboars.
NOTE! In different editors for different node types you can use particular set of hot keys.
Two formats of hot keys are available:
-
Normal. One can see them in node menu. You can open node menu by hovering a triangle in top right corner of node.
-
There is an alternative way to use hot keys. To use them you need to press 'Ctrl+D'.
Common menu with list of available actions for selected node will appear in top right corner.
Each action will be supplimented by hot key. Now you can press appropriate key and action will be performed.
You also can open common menu with mouse. Hover a button on top right corner of editor and menu will be shown.
After that you can use shortened varians of hot key without additional 'Ctrl+D', or just click on menu points by mouse.

One can also use keyboard to navigate over node editors and nodes.
All related key boundings are listed in table:
Action |
Hotkey |
Alternative Hotkey(first press Ctrl+D and then given key) |
Create new requirement as child |
Ctrl+R |
R |
Create new requirement as sibling |
Ctrl+S |
S |
Create new text node as child |
Ctrl+J |
J |
Create new text node as sibling |
Ctrl+I |
I |
Remove node |
Del |
Del |
Edit selected node in separate window |
Ctrl+E |
E |
Change node type from Requirement to Text Node and vise versa |
Alt+M |
M |
Create new test purpose |
Ctrl+P |
P |
Create comment to selected node |
Alt+C |
C |
Open template selection\edition dialog |
Ctrl+T |
T |
Set focus to node below/under |
Up/down arrows |
-- |
Expand/Retract subtree with root on selected node |
Right/left arrows |
-- |
Edit node id\name |
F2 |
-- |
Edit node description (Description field) |
Enter |
-- |
Change focus to next view (for example, Outline).
Note. Focus can be changed to tabs on current view and buttons on
control panel of current view, for example, to minimize or to
fullscreen. |
Tab |
-- |
Change focus to previous view |
Shift+Tab |
-- |
Enter a view (use it to navigate between different views using Tab and Shift+Tab) |
F12 |
-- |
Open editor to requirement below or under when editor is opened. |
Ctrl+up/down arrows |
-- |
Undo |
Ctrl+Z |
-- |
Redo |
Ctrl+Shift+Z |
-- |
Refresh editor |
F5 |
-- |
Open search dialog |
Ctrl+F |
-- |
Close node editor (exit node edit mode) |
Esc |
-- |
Save changes in editor |
Ctrl+S |
-- |
Move to page below current |
PageUp |
-- |
Move to page after current |
PageDown |
-- |
Change focus to first node |
Home |
-- |
Change focus to last node |
End |
-- |
Add test to node |
Alt+T |
-- |
Start to edit node |
Enter |
-- |
Start to edit id\name |
F2 |
-- |
Change status |
Alt+S |
-- |
Expand node |
Num+ |
-- |
Retract node |
Num- |
-- |
Copy node |
Ctrl+C |
-- |
Cut node |
Ctrl+X |
-- |
Paste node as sibling (without sub-nodes) |
Ctrl+Shift+V |
-- |
Paste node as child (without sub-nodes) |
Ctrl+V |
-- |
Paste node with all its subnodes as sibling |
Ctrl+Alt+Shift+V |
-- |
Paste node with all its subnodes as child |
Ctrl+Alt+V |
-- |
Virtual Nodes
Create virtual node
- In 'Requality Explorer' select or create a requirement for which you want to create virtual node.
Select 'New → Virtual Node' in a context menu for this node. New virtual node will appear.
Create virtual node by copy paste
You can create Virtual node by copying of existing virtual node.
It is possible to create a copy in 'Requality Explorer' with 'Copy' menu point.
To Paste virtual node you can use menu points 'Paste into'
(to add copy as child of target node) or 'Paste near'
(to add copy as sibling of target node). That will create copy in target place of requirements tree.
You can also use hot keys 'Ctrl+c' and 'Ctrl+v' for copying. In this case 'Paste near' approach will be applied.
Delete virtual node
- To delete virtual node select it in 'Requality Explorer', select 'Delete Virtual Node' in a context menu for this node.
- You can also use 'Delete' hotkey.
- In the opened dialog confirm deletion by pushing 'OK'.
Edit virtual node parameters
To edit virtual node parameters select it in the 'Requality Explorer', Now you can see requirement properties in the 'Properties' view.
Here we describe parameters of the virtual node you can change manually.
Id
- Id is generated automatically but could be changed manually. Edit it directly in this field.
- Note! If virtual node name is empty the node is identified by Id
- Id should be unique for all virtual nodes on the same hierarchy level. If input not unique id you get warning flag and this change is not saved.
- Id can’t begin or end with spaces. When saving such symbols are deleted.
Name
- Virtual node name is empty by default.
- Name shouldn’t be unique.
- Edit name directly in this field.
- If name is empty virtual node is identified by Id, otherwise - by name.
Attributes
- Attributes are represented in a table of several fields: attribute name, attribute type, attribute value and generator.
- To add attribute click on the first empty cell of the 'Name' column and set attribute name.
- To edit created attribute click on required attributes table field and edit it:
edit name in the 'Name' column, select attribute type in drop-down list in the
'Type' column, set value in the 'Value' column, set attributes value
generator in the 'Generator' column.
- Attribute name shouldn’t be empty. And it shouldn’t begin and end with spaces.
Attribute names in one requirement should be unique. If you try to add and save attribute with
incorrect name you get warning flag and 'OK' is not available.
- If type of attribute is 'List', you should set a list of attribute values for this list.
Click on the field in the 'Value' column, then click on appeared button on the right.
Wizard of attribute values editor is opened ('List values editor'). Here you can select values type in a drop-down list.
And you can set values in the list below by clicking on cell in order from the top down.
If you want to change order of the values click on required value and use up or down arrows, value will be moved up or down.
To remove the value click on it and push 'X' on the right in the table, value will be removed. To finish editing push 'OK' button.
To cancel editing push 'Cancel' button.
- To set or edit generator click on the field in the 'Generator' column, then click on appeared button on the right.
Wizard of 'Attribute value generator' is opened, here you can set all generator parameters: select generator type
and attribute scope in the corresponding drop-down lists. And set additional generator parameters depending on the generator type:
- If 'BY_FORMULA' type is set then set formula.
- If 'RANDOM' type is set then set min and max values and required number of values.
Push appeared 'Generate new set' button if you want to generate other set of values according to current generator parameters.
- If 'CYCLE' type is set then set from and to values and step size.
Read more about generator parameters here: Attribute value generator.
To finish editing push 'OK' button. To cancel editing push 'Cancel' button.
Target
- Is empty by default.
- To set 'Target' push 'Select...' button. In the opened window select requirement or test purpose or create new requirement with the help of 'Create New' button. Push 'OK'.
- If a parent-requirement of virtual node has a child test purpose then only test purpose (not requirement) could be selected as a 'Target' in this case.
- To remove current 'Target' value push 'Clear'. The value will be removed.
Iteration method
- 'Reuse' is set by default.
- To edit open the drop-down list and select one of two values: 'Reuse' or 'Base Element'.
It.vars
- Multiple variables for iteration could be specified. No one is set by default.
- To add new iterator push '+' button, new element with drop-down list (to select iterator) will appear. Select required iterator in the list.
- To remove iterator push button 'X' near the field.
Hide virtual node
- To hide virtual node select it in 'Requality Explorer', select 'Hide Selected Virtual Nodes' in its context menu.
The virtual node will be hided in the project tree, only its subtree (reused elements) will be shown.
Show virtual node
- To show (undo hide) virtual node select project tree element that contains this virtual node and call context menu on it. Select 'Show hidden children' in the context menu.
Virtual node will be shown in the project tree.
Checking the project tree
It's possible to check if Requality project tree is correctly set and to find problems in nodes description.
Open context menu on the root node of your Requality project and select 'Enable Checkers'.
After that all the nodes in which checker finds error are highlighted.

Version Control
For version control Requality allows working with CVS,
Subversive,
EGit and other Eclipse Team Provider (excluding
Subclipse). In 'Requality Explorer' context menu there is a standard
item 'Team' to manipulate versions.
SVN
To use 'SVN' you should have SVN-plugin installed to 'Eclipse' and get URL of repository where your project
is shared or will be shared (also you should get user login and password if needed). It's recommended to use
Subversive plugin. All instructions below are for exactly this plugin.
Export project to SVN
- In 'Requality Explorer' view click on the project folder and select 'Team → Share Projects...' in the context menu.
- In 'Share Project Wizard' window in 'General' tab input URL of repository where you want to push your project to.
- Input user login and password in 'User:' and 'Password:' fields.
(If you don't want to be asked for password again select 'Save authentication'.) It is not necessary if repository
is not protected with a password.
- Push 'Finish'.
- In 'Commit' window input your comment in 'Comment' field. Verify that all project items are selected in the table below.
Push 'OK'.
- Wait until files transfer to repository. After that all project nodes in 'Requality Explorer' should be displayed
without an angle bracket in front of the name. The angle bracket means that the node has changes are not saved in 'SVN'. All parent nodes
of such node are also marked with the angle bracket. If some node is still marked with the angle bracket (after transfer to 'SVN' is finished)
try to refresh 'Requality Explorer': click on the project node, then push 'F5'
or select 'File → Refresh' in 'Eclipse' main menu. If the angle bracket doesn't disappeare changes are not transferred to 'SVN'.
Commit changes to SVN
Following instructions describe how to transfer local project changes to repository (if this project already exists in 'SVN').
How to know that your local project is connected to 'SVN' (you are working with local copy of repository project):
there are version number and repository URL near project name in 'Requality Explorer'. This number is a number of version
that was last syncronized with the repository.
- In 'Requality Explorer' select changed node that you want to push to repository. If you want to push all project changes
then select root node of the project.
- Opent context menu on it and select 'Team → Commit'.
- In 'Commit' window in 'Comment' field input your comment. Check that all needed items are selected
in поле выбора файлов. Push 'OK'.
- If 'User Credentials' dialog asks you about username and password, input it in 'User:' and 'Password:'
fields. If you don't want to be asked for password again select 'Save authentication'.
Import project from SVN
- In 'Requality Explorer' on empty place open context menu and select 'Import...'.
- In 'Import' window select 'SVN → Project from SVN' and push 'Next >'.
- In 'Checkout from SVN' window look through the list of available repository URLs.
- If one of available repositories suits you select 'Use existing repository location:', then select this repository
in the table and click 'Next >'.
- If you didn't find your repository in the list select 'Create a new repository location' and click 'Next >'.
- In 'General' tab input URL of repository where you want to push you project.
Also input username and password in 'User:' and 'Password:' fields. (If you don't want to be asked for password
again select 'Save authentication'.) It is not necessary if repository is not protected with a password.
- In 'URL:' field input path to the project in the repository (including project folder). Click 'Finish'.
- In 'Check Out As' window doesn't change anything and click 'Finish'.
Update project from SVN
If project in the repository has been changed you can update your local copy following the instructions below.
- First of all it's recommended to close all opened documents. Or you should reopen them after update is finished to see all changes.
- In 'Requality Explorer' on you project open context menu and select'Team → Update'.
- If 'User Credentials' dialog asks you about username and password, input it in 'User:' and 'Password:'
fields. If you don't want to be asked for password again select 'Save authentication'.
Import-export of Requality requirements catalogue into ReqIF format
'Requality' provides importing requirements catalogues from ReqIF format and exporting
requirements catalogues created in 'Requality' project into ReqIF format.
Export Requality requirements catalogue into ReqIF
To export the requirements catalogue from 'Requality' project to ReqIF format it is required to:
- In 'Requality' project’s context menu select 'Export...'. In the opened dialog window
select 'Requality' → 'Export to ReqIF' and press 'Next'.
- In the opened window, select a path to target folder of the project where the intended
ReqIF document should be created, enter the name of intended document and press 'Finish'.
After those actions, the system will export requirements catalogue into ReqIF format: requirements catalogue
from 'Requality' project will be transformed into requirements catalogue in ReqIF format and placed in the
specified project as a file with "reqif" extension. This ReqIF file may be used by any requirements management
tool supporting ReqIF format.
Import requirements catalogue from ReqIF
To import requirements catalogue from ReqIF format into 'Requality' project it is required to:
- In 'Requality' perspective in 'Requality Explorer' window open context menu and select 'Import...'.
- In the opened dialog window select 'Requality' → 'Import from ReqIF' and press 'Next'.
- In new opened window from the file system select required '.reqif' file and press 'Next'.
- In next two dialog windows, specify the appropriate elements of ReqIF format for 'Requality' format elements.
First, the window for ReqIF and 'Requality' types mapping. For entering the conformity between types, it is required
to select the type of ReqIF element in left column and the corresponding type in the middle column and press 'Add mapping'.
The created mapping will be represented in the right column; it will be displayed as 'type_ReqIF → type_Requiality'.
Also it is possible to map few types of ReqIF elements to one type of 'Requality'element.
To do this, in left column instead of selecting one type select few types, the rest of actions are the same.
- To delete incorrect mapping it is required to select it in the right column and press 'Remove mapping' button, selected mapping will be removed.
- Then push 'Next' button. The window for mapping ReqIF attributes to 'Requality' attributes will open.
To specify the mapping select the name of the ReqIF attribute in the left column and the name of corresponding 'Requality'
attribute in the middle column. Then push 'Add mapping' button.
The created mapping will be represented in the right column; it will be displayed as 'атрибут_ReqIF → атрибут_Requality'.
Also it is possible to map few attributes of ReqIF elements to one attribute of 'Requality' element.
To do this, in left column instead of selecting one attribute select few attributes, the rest of actions are the same.
- To delete incorrect mapping it is required to select it in the right column and press 'Remove mapping' button, selected mapping will be removed.
- Then press button 'Finish'.
After those actions, the system will import the selected ReqIF document into 'Requality' project format:
new 'Requality' project will be created, with requirements catalogue created in accordance to requirements
catalogue in the initial '.reqif' document, specified types and attributes mappings.