Coverage Matrix

(REQCHECKER™ PRO only)

Overview

The Coverage Matrix is a tool used to map and track the relationship between project requirements and the elements that address them (e.g., design components, specifications, tasks, or tests). It helps to:

  • Ensure that all requirements are accounted for
  • Identify gaps or missing links in the project
  • Support consistency and completeness across deliverables
  • Facilitate impact analysis in case of changes

To make the most of this report, it is important to understand the following concepts:

Format

The matrix is generated in Microsoft EXCEL format. It allows you to consult the information for each requirement, in particular where it is covered. Requirements with errors are highlighted.

The matrix is made up of three EXCEL sheets:

  • Status sheet: list of all requirement with their status. The pie can be filtered by source document.
  • Flat Matrix sheet: the matrix itself with a line for each statement and/or coverage
  • Multi Level Matrix sheet: the requirements are hierarchised by the relationship is covered by.

Hyperlinks allow you to navigate to the document that declares a requirement or coverage.

Status sheet

Each line presents the synthesis of a requirement:

  • ID column: REQUIREMENT ID
  • STATUS column: requirement status, see Requirement status list
  • TITLE column: requirement title
  • TEXT column: requirement text
  • MANAGEMENT RATE column: management rate of this requirement, see Management Rate
  • COVERAGE RATE column: coverage rate of this requirement, see Coverage Rate
  • DOCUMENT column: file name of the source document that contains the statement
  • POSITION column: position of the statement in the source document
  • VERSION column: statement version, see Impact analysis
  • GROUP column: automatically computed group name (the AI option must be enabled)
  • LINKED column: related statement(s)
  • Other columns contain the value of each statement custom tags, see Custom tags

Flat Matrix sheet

Each line presents a couple { statement , coverage }. If the requirement has not coverage, a single line presents the statement information and coverage information are blank. If the requirement has coverages, the report contains one line for each coverage, the statement information are the same for these lines, the coverage information are filled with different values.

Some columns may be show/hidden depending on report options.

  • ID column: REQUIREMENT ID
  • STATUS column: requirement status, see Requirement status list
  • TITLE column: requirement title
  • TEXT column: requirement text
  • MANAGEMENT RATE column: management rate of this requirement, see Management Rate
  • COVERAGE RATE column: coverage rate of this requirement, see Coverage Rate
  • DOCUMENT column: file name of the source document that contains the statement
  • POSITION column: position of the statement in the source document
  • VERSION column: statement version, see Impact analysis
  • LINKED column: related statement(s)
  • Other columns contain the value of each statement custom tags, see Custom tags
  • COVERAGE DOC column: file name of the source document that contains the coverage
  • COVERAGE POS column: position of the coverage in the source document
  • COVERED BY column: ID of the requirement that contains the coverage tag, if any.
  • COVERAGE STATUS column: status of the coverage, see Coverage status list
  • COVERAGE VERSION column: version of the requirement that is provided by the cover tags, or unset if no version is provided in the coverage. The coverage version is compared with the requirement version to determine the BAD_VERSION_ERROR status, see Impact analysis
  • Other columns contain the value of each coverage custom tags, see Custom tags

Columns VERSION and COVERAGE VERSION are used to compute the impact analysis.

Multi-Level Matrix sheet

Each line presents a list {requirement1 , requirement2 , requirementN } whose requirements are hierarchised by the relationship is covered by. Each column presents the REQUIREMENT ID of the requirement for a given level of the hierarchy:

  • Level 1 column: requirements that have no parent
  • Level 2 column: requirements that have one parent
  • Level N column: requirements that have N parents

All cells contain a hyperlink to the requirement summary row in the Status worksheet, or to the location in the document where the covered item is not a requirement. When the coverage of a requirement is positioned in text outside a downstream requirement, the report shows the position of this text. When the status of the requirement is in error, the text is shown in red. EXCEL tooltip-notes provide an overview of the requirement.

Because of its structure, the same requirement is presented in one or more rows, in a single column. It is therefore easy to filter these rows to show only the upstream (parents) and downstream (children) requirements.

Here is the multi-level matrix associated with the example project supplied with the installation.

The structure of this report is shown in the graph below. Note that only is covered by links are presented by this sheet. Links created using the LINKED tag, which indicates which requirements deal with the same subject, but do not cover each other, are not represented on this sheet.

flowchart LR subgraph lev1["1st Level"] subgraph link["related to the same subject"] REQ_0010(REQ_0010<br>License status) REQ_0030(REQ_0030<br>Trial period) REQ_0050(REQ_0050<br>Deleted requirement) end REQ_0020(REQ_0020<br>Website) REQ_0040(REQ_0040<br>Planning) end subgraph lev2["2nd Level"] STEP_01_01(STEP_01_01<br>Test About) STEP_01_02(STEP_01_02<br>Test Computer ID) end REQ_0010==Is Covered By==>STEP_01_01 REQ_0010==Is Covered By==>STEP_01_02 REQ_0020==Is Covered By==>STEP_01_02 REQ_0030==Is Covered By==>STEP_01_01 REQ_0010 <-.Linked.-> REQ_0030 REQ_0010 <-.Linked.-> REQ_0050

REQCHECKER™ allows the same requirement to be declared and covered in the same data source, in particular in the same document. In this way, a document can contain requirements associated with several prodondeur levels in the coverage tree.

In the particular case where requirements of the same level are grouped together in the same documents, which is standard practice, then REQCHECKER™ assigns the level to the files and not to the requirements. In the example below, requirement REQ_030 is assumed to be level 3 and not level 2 because it is declared in the same file as requirement REQ_031, which is definitely level 3.

flowchart LR subgraph lev1["Level 1"] subgraph f1["File 1"] REQ_010(REQ_010) end subgraph f2["File 2"] REQ_011(REQ_011) end end subgraph lev2["Level 2"] subgraph f3["File 3"] REQ_020(REQ_020) end end subgraph lev3["Level 3"] subgraph f4["File 4"] REQ_030(REQ_030) REQ_031(REQ_031) end end REQ_011==Is Covered By==>REQ_030 REQ_020==Is Covered By==>REQ_031 REQ_010==Is Covered By==>REQ_020