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'.
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 'Create 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
- Select 'Requirements' node or any it’s sub-requirement in
'Requality Explorer'.
Let it be a target requirement. In context menu select 'Create Requirement'.
New requirement appears in the target requirements. An identifier is generated automatically.
A name of the new requirements is empty by default. Other parameters are empty by default.
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 'relates to', 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 'relates to' 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 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.
-
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.
-
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. If not import
it 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.
Requirements tree sorting
In 'Requality' project requirements could be sorted in two ways: 'By Locations' and 'By Names'.
Default sorting is 'By Locations'.
-
By Locations - requirements are sorted by location position in document. If requirement has several locations sorting depends only on the
first location. Requirements without locations are at the end of the list and are sorted by names. If locations are situated
in several documents of the project sorting depends on document name (documents are sorted by name).
-
By Names - requirements are sorted by name (first, in ascending order, then in alphabetical order). In case of coincidence
or lack of names requirements are sorted by id.
To change sorting method open context menu on the project in Requality Explorer and select 'Properties'.
Window with project properties will be opened. Select Requality on the left side of the window. On the right you will see properties of Requality project.
In 'Sort method' drop-down list select sorting method ('By Locations' or 'By Names') and push Apply button.
Now selected sorting method is set for this project.
Generate test for requirement
ATTENTION! The feature is experimental. It can be changed in further
releases.
Requality allows to add new tests to a test purpose or a requirement by using extending test generator.
Requality 0.16 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 'Create 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 -> '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`'.
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
- In 'Requality Explorer' view select a terminal requirement where you want to add new test purpose.
- Open context menu and select 'Create Test Purpose'..
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. See how to work with attributes in detail in 'Requirements' chapter.
- 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
- To delete a test purpose select it in 'Requality Explorer',
in the context menu select 'Remove Test Purpose'.
- You also can use 'Delete' hot-key.
- In the opened dialog window push 'OK'.
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. More information is available
in corresponding section of manual
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
'Create 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. See how to work with attributes in detail in 'Requirements' chapter.
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
description of the corresponding file format in glossary). 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
description of the corresponding file format in glossary). 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 special links between nodes in selected part of 'Requality' project catalog.
Report example is presented below:

The report consists of two pages. First page contains information about direct links, second page
contains information about reverse links. 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'.
- Therd 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 'Create 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.
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).
Select target requirement in 'Requality Explorer',
in context menu select 'Edit in UniEditor'.
Add new requirements in UniEditor
- Select a requirement in 'UniEditor'.
- Push menu button in the upper-right corner of the requirement field and select in the menu one of two items:
- 'Add sibling requirement' to create requirement-neighbor. New requirement is
created after the target requirement.
- 'Add child requirement' to create
sub-requirement. New requirement is created
as child node for selected requirement.
Delete requirement in UniEditor
Note! When deleting requirement its sub-tree is deleted too,
including nodes of all types (requirement, test purposes, comments).
- Select target requirement in 'UniEditor'.
- Push menu button in the upper-right corner of the requirement field and select 'Delete requirement'.
- In the opened dialog window push 'OK'.
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.
- 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 test purpose in UniEditor
- Select in 'UniEditor' one of two nodes:
- requirement where you want to add new test purpose,
- or test purpose which belongs to a requirement you want to add new test purpose to.
- In the upper-right corner of this node (requirement or test purpose) field open menu
and select 'Add new test purpose'.
Delete test purpose in UniEditor
- Select the target test purpose in 'UniEditor'.
- In the upper-right corner of this test purpose field open menu and select 'Delete test purpose'.
- In the opened dialog window push 'OK'.
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.
- 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
Comment can be added to
any node in the 'UniEditor', except a comment-node.
- Select in 'UniEditor' the node (requirement, test purpose or requirement)
which you want to add a comment to.
- In the upper-right corner of the selected node expand the menu and select 'Add new comment'.
- When creating a comment, it's field appears in the 'UniEditor' and it's node appears
on the appropriate place in the project tree in 'Requality Explorer' view.
By default, the comment gets name in form of 'Comment <num>', where <num>
is node number (if there is no any other comments on the same level than number is 01, else next free number).
By default created comment is empty, editing of the comment text is described below.
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.
Delete comment in UniEditor
- Select the target comment in 'UniEditor'.
- In the upper-right corner of the comment field open menu and select 'Delete comment'.
- In the opened dialog window push 'OK'.
Hotkeys in UniEditor
You can use hotkeys when working in 'UniEditor'. There are hotkeys for all items of the node context menu
in 'UniEditor'. Also there are additional hotkeys to comfortable use some other actions. Here there is a full list
of all hotkeys in 'UniEditor'.
Hotkey |
Usage |
Esc |
Close node aditor without saving |
Ctrl+S |
Save changes in node editor |
Up |
Switch focus to node above |
Down |
Switch focus to node below |
Left |
Collapse expanded node or switch focus to parent-node |
Right |
Expande collapsed node or switch focus to node below |
PageUp |
Scroll selected view by one page up |
PageDown |
Scroll selected view by one page down |
Home |
Go to start of editor |
End |
Go to end of editor |
Alt+Ins |
Add sub-requirement |
Ins |
Add test purpose |
Alt+C |
Add comment |
Del |
Delete node |
Enter |
Start node editing |
F2 |
Start node name editing |
Alt+S |
Change status |
Num+ |
Expande node |
Num- |
Collapse node |
Ctrl+C |
Copy node |
Ctrl+X |
Cut node |
Ctrl+Shift+V |
Paste node as sibling (without sub-nodes) |
Ctrl+V |
Paste node as child (without sub-nodes) |
Ctrl+Alt+Shift+V |
Paste node with all its subnodes as sibling |
Ctrl+Alt+V |
Paste node with all its subnodes as child |
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).
In 'Requality Explorer' choose the target requirement, open context menu and chose 'Review'.
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.
Virtual Nodes
Create virtual node
- In 'Requality Explorer' select or create a requirement for which you want to create virtual node.
Select 'Create Virtual Node' in a context menu for this node. New virtual node will appear.
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 install SVN-plugin to 'Eclipse'
(see Installation of plugin for interaction
with control version system) 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.