– is a set of parameters - attributes - of any 'Requality' project node. These parameters describe different properties of the node.
Attributes are presented in a table with columns: 'Name', 'Type', 'Value', 'Scope' and 'Generator' (attribute values generator).
NOTE! Column 'SCOPE' is missing in the attributes table of the project node, by default scope of these attributes is whole the project tree.
See 'Generator'.
- is a child node of a virtual node , created based on other node (so called reused node) of requirements tree by properties of the virtual node (see 'Virtual node properties'). By default clone gets a type and properties of the reused node. But its properties can be changed by user. In 'Requality Explorer' view an icon the clone-node is marked by an additional image of the letter 'V'.
- is an entity that contains some text comment and refers to the requirement, text node or test purpose. One requirement/text node/test purpose may have several comments.
- are comment parameters that are specified and could be set in the 'Properties' view. (They can also be viewed and edited in a shortened form in the 'Parameters editing window'.)
For Comment node 'Properties' view contains three tabs:
- XML-document that sets a coverage of requirements and test purposes by other elements (test for example). It is used to generate some kind of reports.
File format:
<?xml version="1.0" encoding="UTF-8"?> <coverageInfo> <reqcoverage qid="unique_id_of_requirement_or_test_purpose"> <covered_by uri="path_to_covering_element" [hits="1"]/> </reqcoverage> <reqcoverage qid="unique_id_of_requirement_or_test_purpose"> <covered_by uri="path_to_covering_element"/> </reqcoverage> <error [name="error_name"] testuri="uri_of_covered_by_element" [uri="link_to_error_description"]> [<violates qid=unique_id_of_requirement_or_test_purpose"/>]* [<description [format="error_description_format"]>error_description</description>] </error> </coverageInfo>
Here:
Square brackets denote optional parameters.
– is a xhtml-document that contains requirements written in a free form. Formed based on a requirements document imported into the 'Requality project'. The user selects text fragments in the document and assigns them to requirements.
– is attribute type, defines a list of available attribute values. 'Enum' type can be set manually in 'Properties' view of 'Requality' project (see 'Project 'Requality' properties') as ordinar attribute of project node:
– is an unique numeric identifier of a node in the requirements tree, which is specified in the 'ForeignID' attribute. The user ensures its presence independently. ForeingID is also used as predefined attribute name for SeqID.
– path to the node identifying the node. Contains a listing of all parent nodes in order, starting from the root node 'Requirements' and ending with the node under consideration. In this listing, nodes are specified by their names, or by identifiers if there is no name defined. The separator is '/'.
- is a special functionality to generate a list of attribute values automatically.
Any node of Requality project (besides folders and documents) has a table of attributes in Main tab of 'Properties' view. There is a column Generator in the table. You can open Attribute value generator wizard by clicking in a cell in this column.
Attribute value generator wizard window contains the following parameters:
- editor of the values of the attribute of the 'LIST' type. If the 'Properties' window of a node contains an attribute of the 'LIST' type, then the 'List Value Editor' is used to set and edit its values.
The editor opens in a special window, which contains the following two elements:
– is a part of the document that has been marked by user as belonging to any requirement. So the location means both the marked part of the document and a link in requirement properties to this part of the document. One location could belong to several requirements in one project simultaneously.
- these are attributes that are automatically specified for existing and newly created elements of the requirements tree in accordance with the 'Requality project' settings. Mandatory attributes may vary for different types of nodes. All 'system attributes' are mandatory. 'User attributes' may become mandatory in accordance with the settings .
- is a view in the 'Requality' perspective, it's a document editor. It is used to mark requirements fragments in the documents.
– is a view in the 'Requality' perspective, it's a visual editor to present requirements and text nodes as plain document view. It's designed to develop documentation by requirements creation. In contrast to 'UniEditor' and 'Review' editors in this editor nodes are shown without tabspaces, such approach allows to show requirements catalog in more compact view, but it doesn't allow easy way to see the hierarchy. To analyse requirements hierarchy in the view it's recommended to use requirements tree in 'Requality Explorer' view.
– a parameter used to define the identifier or name of some node of the requirements tree. If the node has a name, then 'nameorid' is the name of the node, otherwise 'nameorid' is its identifier. Can be used, for example, as a parameter in requirements descriptions. In this case, it should be written with an underscore at the beginning: '_nameorid'.
– these are node properties, a set of attributes that characterize the node. The full list of node parameters can be viewed and edited in the 'Properties' view window of the Requality perspective. A shortened list of parameters is in a special 'parameter editing window', which opens when creating and editing nodes in the 'Module Editor', 'UniEditor' and 'Review' editors. Some attributes may be 'mandatory', they are configured in the Requality project settings. The attributes that are specified in the attribute table are user-defined, since their presence is determined by the user, unlike all other system attributes.
– is an entity corresponding to one of node types ('Comment', 'Report Settings', 'Requirement', 'Test Purpose', 'Text Node', 'Virtual Node') of the 'Requality' project. It works as a template to create new nodes of the same type.
– are a set of the node template ('node template') parameters. Properties of some type node template are similar to properties of this type node. Parameters are specified and could be set in the 'Properties' view (can also be viewed and edited in abbreviated form in the 'parameter editing window').
- a view in the 'Requality' perspective that displays the list of the document locations.
- the state of the project and all its nodes, saved in the repository.
- is a view in the 'Requality' perspective that displays the parameters of the selected object (requirement, document, test purpose, report, comment).
- is a special attribute type of requirements, virtual nodes and test purposes, which allows to link its node to some other node of the same 'Requality project' catalog. 'REFERENCE' attribute could be added in 'Properties' view in 'Main' tab in 'Attributes' table. It's a usual attribute of 'REFERENCE' type, that has a value - target node to link to.
The name of this attribute is the name of the link.
The nodes linking is represented in 'Requality Links Explorer' view. In this view links are available in both sides – both from node with created attribute:
and from linked node indicated in the 'Value' field of the REFERENCE attribute of first node:
- is a unidirectional named relationship between two nodes in the Requality project requirements tree. The link originates from the referencing node and enters the target node. It is set in the target node's attribute table as an attribute of type 'REFERENCE' and is displayed for both nodes (referring and target) in the 'Requality Links Explorer' window (for the referencing node as an outgoing link, for the target node as an incoming link). The name of this attribute is the name of the outgoing link in the referencing node and, unless otherwise specified in the project properties, is the name of the incoming link in the target node. When a new link is created, the name of the incoming link in the target node is the same as the name of the corresponding outgoing link in the referencing node. However, the Requality project has several predefined link names that have different incoming and outgoing link names.
- target requirement referred to by other requirement (related requirement).
- initial requirement related to other requirement. Related requirement has 'REFERENCE' type attribute, which specifies the requirement that is being reffered to (referred requirement).
– an entity representing a ready-made generated report. The report is generated based on the settings specified in the 'Report settings' node (see 'Report settings') and cannot be generated again. It has a read-only set of parameters that allow you to find out by what settings this report was generated. You can only change the report name. By default, the report name contains information about the date and time of generation.
A report can consist of several reports if it is generated for several linked projects at once. In this case, at the top of the report there will be a line with a list of links for these projects. When you click on such a link, the report for the corresponding project will be opened in the same window.
Each report at the beginning contains a summary table with brief information about itself. It includes such data as the date and time of generation, the version of the tool at the time of report generation, the name of the initiator of the generation (as specified in the operating system settings), and a reference to the repository if the project is under version control.
– is an object that allows generating report that contains a summary of the project (number of verified and not verified requirements, test purposes coverage of requirements, requirements coverage of document, etc.). It has a set of parameters that influences the content and form of the report and defines a source of report data. The main parameter for generating a report is 'Report Template'. Several reports could be generated based on a single Report Settings node. Changing Report Settings does not affect the reports that have been already generated.
- are 'Report' Settings properties that are specified and could be set in the 'Properties' view. (They can also be viewed and edited in a shortened form in the 'Parameters editing window ').
For Report Settings node 'Properties' view contains three tabs:
Template – report template, according to which the appearance and content of the report are modified. The report template is changed manually: selected from the list of available report templates. It is a 'system attribute'. The following report templates are available by default:
EXPERIMENTAL
- presents project statistics from different Git revisions.
The report consists of two pages:
To create the report the user could set report settings (required time period and time step between revisions)
and also user can set the coverage source, where to take coverage data from.
-a report on coverage about coverage of 'locations' in document by other elements (for example, tests), specified using an additional source of coverage information. There can be two such sources:
-a report on coverage of requirements and test purposes by other elements (for example, tests), specified using an additional source of coverage information. There can be two such sources:
-a report with links between related nodes of the Requality project directory.
The report consists of two pages. The first contains information about direct links, the second about inverse links. By default, the first page opens; to go to the second, click on the link with the name of the inverse relationship (set in the project properties). To go back to the first page, click on the name of the relationship.
-a report in the form of a table containing a list of nodes in which the 'Checker rules' rules are violated, and information about which rules are violated in each such node.
- are 'Report' parameters that are specified (mostly during 'Report Settings' generation) and accessible in the 'Properties' view.
Report parameters are identical to 'Report Settings parameters' (except for the 'date' attribute), but are read-only (except for the 'Id' parameter).
– this is the main setting that determines the contents and appearance of the report. It is specified in the 'Report settings' node. For example, the data can be presented as a list or a table. You can include all nodes of the 'Requirements' tree in the report or only nodes of a certain type. Requality has a set of built-in report templates that are available by default. If you use plugins for Requality, the list of available templates can be expanded. You can also add and delete your own report templates. The report template itself is described in a separate file in the file system.
- is a view in the 'Requality' perspective, that displays all content of the 'Requality project' (documents, requirements, reports, comments).
– is a view in the Requality perspective, which displays the project catalog nodes of the Requality project linked to the selected node by the 'reference link' specified in the 'REFERENCE' type attribute. In this window you can view both outgoing and incoming references together and separately, sort their display by name, and enable highlighting of linked nodes in the 'Requality Explorer' view.
- is an Eclipse project created using Requality plug-in. It contains documents, requirements, reports and other entities.
– properties of the Requality project, set as parameters of the root node of the project. Set in the 'Properties' window.
For a project, the 'Properties' window contains 3 tabs:
– is an entity that contains a description of some requirement, and links to those parts of the document that reference to this requirement.
- are requirement parameters that are specified and could be set in the 'Properties' view. (They can also be viewed and edited in a shortened form in the 'Parameters editing window').
For requirements 'Properties' view contains five tabs:
History tab contains information about the history of all revisions related to this requirement. The user cannot edit anything on this tab directly, only when saving the next version to the repository. The tab contains the following information:
- any node of requirements tree, that is set as target for iteration in virtual node properties (see 'Target' in 'Virtual node properties'. Clone-nodes (see 'Clone') of this virtual node are created based on the reused node. But it doesn't influence on the reused node itself. Changes of reused node or its subtree are influence on the clone-nodes.
- is a view in the 'Requality' perspective, it's a visual editor for requirements, test purposes and comments. It is designed for viewing rather than editing, so it has limited functionality. It allows only adding, editing and deleting comments and changing the status of requirements and test purposes. In contrast to 'UniEditor' it allows setting statuses of the requirements and test purposes into the value 'verified'.
– is a unique identifier of the requirements tree node within the project. It is an attribute of the requirements tree node (requirement, text node, comment, etc.) and is a number. In some cases, this number may have a user-defined prefix, but it does not exist by default. The name of the attribute is specified in 'SeqID' project parameter by the user, by default it is 'ForeignID'. The uniqueness of the identifier lies in the fact that only one requirements tree node in the project can have such an identifier throughout its entire life cycle, and even if this node is deleted, no other node will receive the same identifier while the mechanism is enabled. In order for the mechanism for supporting auto-generated identifiers in the Requality project to work and their uniqueness to be tracked, it must be enabled in the project settings (by default, the mechanism is not enabled when creating a new project). Otherwise, such attributes are considered as regular attributes of the node, and the uniqueness of their values is not guaranteed. When the auto-generation of identifiers is enabled, all nodes of requirements tree that were already in the project receive an attribute with the specified name and a unique value. If some nodes already had an attribute with this name, it is considered as 'SeqID', and its value will be reserved for this node. All new nodes will receive this attribute with an automatically assigned value. After disabling the mechanism of auto-generated identifiers, all attributes (regardless of the source, including manual one assigned before the activation) will be deleted.
- is a child node for some other requirement in the project hierarchy.
If a parent requirement R contains N subrequirements RC _1, ..., RC _ N, then the requirements RC _1, ..., RC _ N
are said to represent a decomposition of requirement R. In other words, the target system satisfies requirement R if
and only if it satisfies all requirements RC _1, ..., RC _ N.
- these are parameters of the Requality project node that exist for nodes by default, the user cannot create them, delete or change their data type, but, as a rule, the value can be edited. Sometimes the value cannot be edited either, for example, some system attributes of a report cannot be edited, because they contain information about the initial settings on which this report was generated. System attributes can be edited in 'Node Properties' (see 'Requirement Properties' as an example). It is necessary to distinguish between 'system attributes' and 'user attributes', and also keep in mind that there are 'mandatory attributes'.
- is an editor for node templates (see 'Node template'). Allows to create, delete, edit node templates and set active templates. Can be opened from editors: 'Module Editor', 'UniEditor', 'Review'.
Contains fields:
– is a concept in Requality that denotes the presence of a special one-to-many directed relationship 'Term - Term referrers' between several nodes, where one of these nodes is considered to be the place where the term is defined, and all the others are places where it is used. This relationship is specified not by an attribute of type 'Reference', but by special attributes named 'def-term' (in the node where the term is defined) and 'usedef' (in the nodes where the term is used). The name of a term aim to be unique within a project.
– is an entity that contains
the description of the test cases and expected results. Test purpose belongs only to the requirement
that has no requirements-children. Every test purpose has a set of parameters that specify its
content and properties. One requirement could have several test purposes.
- test purpose parameters that are specified and could be set in the 'Properties' view. (They can also be viewed and edited in a shortened form in the 'parameter editing window').
For test purposes 'Properties' view contains five tabs:
is an entity that contains some text. It is designed to store and display the notes and comments included in documents. Such text is a part of document but is not a system requirement.
- are text node parameters that are specified and could be set in the 'Properties' view. (They can also be viewed and edited in a shortened form in the 'parameter editing window').
For text nodes 'Properties' view contains five tabs:
- is a view in the 'Requality' perspective, it's a visual editor for requirements, test purposes and comments. Allows adding, editing and modifying requirements, test purposes and comments, and also allows changing statuses of the requirements and test purposes. In contrast to the 'Review' editor it doesn’t allow to set statuses of the requirements and test purposes into the value 'verified'.
- is a view in the 'Requality' perspective, it is used after transferring locations to new document version. It allows to check transfer correctness manually. And it allows manual transfer of locations have not been transferred automaticallty. This view shows a list of all the requirements and status of every requirement transfer:
- are node parameters defined by user (unlike a system attributes): an user can create they, remove, define the type and value. User-defined attributes are set in attributes table (see attributes table). It is better to distinguish a user-defined attributes from system (see system attributes) one and also take into account that an user-defined attribute may also become a mandatory.
- special designation of a node for its identification.
- a unique and unchangeable intra-system (within Requality) identifier of any node of the Requality project. It is a 128-bit number. When the identifier 'Id' of a node changes, its 'UUId' does not change, although it should be noted that Requality understands such an operation as deleting an old node (with the old identifier 'Id') and creating a new one (with a new identifier 'Id').
- is an element of 'Requality' project catalog, it is used for reusing of the elements of requirements catalog. Using virtual node allows you to automatically create a subtree of clone-nodes (see 'Clone') that are similar to already existing subtree of requirements catalog.
To reuse nodes you should select the method of clone-nodes iteration and then select target node to reuse (see 'Virtual node properties'). There are two methods of iteration:
For 'Reuse' method there is also 'It.vars' setting related to number of clones calculation. The setting allows to use list variables to create several clones of one node with different variable values.
In the project tree virtual node is shown as a node of requirements tree, it's a child of the node for which you want to define a subtree of clone-nodes.
Virtual node could be hidden (not shown) in the project tree. In the hidden mode in the project you can see only children of this virtual node (clone-nodes) but not itself.
- parameters of virtual node, that could be defined in 'Properties' view. (They can also be viewed and edited in a shortened form in the 'parameter editing window').
For virtual nodes 'Properties' view contains 4 tabs: