Learn how to identify requirements coverage gaps by filtering the requirements table and by custom traceability report.
Requirements traceability is a key practice for software development standards (such as IEC 62304 for medical or ISO 26262 for automotive industry) requesting a prove that all requirements are covered by design, implementation and verification artifacts.
In ReqView, you can create and manage traceability links directly in the structured requirements documents so that you see all the necessary traceability information in Links column of the requirements table. Requirements with missing links making coverage gaps are easily visible:
You can further filter the requirements table to identify all the requirements which are not covered or you can export the requirements document using a customized traceability report highlighting coverage gaps. The first approach is simpler however it exposes coverage gaps only on a single level. The second approach is more complicated, on the other hand, it visualizes coverage gaps over multiple levels.
In the next sections we will explain that on the ReqView demo project which contains 4 documents NEEDS (business needs), SRS (software requirements), TEST (test cases) and RISKS (FMEA), satisfaction links from SRS to NEEDS and validation links from TESTS to SRS. Thus our coverage analysis will have 3 levels: NEEDS ← SRS ← TESTS.
Filter Requirements Coverage Gaps
You can filter top level requirements with missing incoming traceability links to expose requirements coverage gaps as follows:
In the top level document set a custom enumeration attribute storing information if a document object is a requirement or not. In the demo project, we use type enumeration attribute with possible values User Story, Section, Information, …
Switch to the top level requirement document and enter filtering condition matching only requirements. In the demo project switch to NEEDS document and enter [Type: User Story].
Narrow the filter by adding a condition matching only objects with missing links of given type. In the demo project use filtering suggestions to enter [NOT Is satisfied by] condition.
As a result, you will see only requirements with coverage gaps on the highest two levels:
You can print the filtered view by File > Print… menu. Do not forget to check Preserve filter and sorting option in Print Options dialog.
Alternatively, you can export the filtered view into HTML. For instance, choose File > Export > HTML File > MS Excel menu to export view with the predefined MS Excel HTML template:
You can similarly filter requirements coverage gaps on the lower levels. In the demo project switch to SRS document and filter coverage gaps in verification links from TESTS to SRS.
Multilevel Coverage Analysis Report
You can create a custom template exporting coverage analysis report which helps you to identify coverage gaps across multiple levels.
The following HTML template snippet illustrates how to output in the demo project a traceability column with 2 levels downstream coverage information starting from NEEDS top level:
The template snippet first uses ifEqual helper to check if the object in the current context is a top level requirement (user story). Then it uses ifHasInlinks block helper to decide if the requirement has an incoming satisfaction link. If the top level requirement is linked by incoming satisfaction link(s) then the snippet iterates the satisfaction links using eachInlinkWith helper and outputs ID and description of linked SRS requirements. If the linked SRS requirement has an incoming verification link it dives one level down and outputs coverage analysis between SRS and TESTS. If the top level requirement is not linked by any incoming satisfaction link then the snippet outputs a warning message.
The following picture shows an example HTML output of the multilevel coverage analysis report based on the snippet above:
You can login to the ReqView support portal and download NEEDSTraceabilityTemplate.html template and customize it for your project with specific documents and traceability scheme.
Check following documentation sections:
You can download example templates after login to the ReqView support portal:
- NEEDSTraceabilityTemplate.html - custom HTML template which outputs end-to-end downstream coverage analysis for the demo project