What is a "Traceability Matrix", and how do I benefit from it?

A Requirements Traceability Matrix (aka "Trace Matrix") enables you to represent the relationships between requirements artifacts planned for a release. Examples include:

  • "Business Requirements" vs. "Functional Requirements"
  • "Features" vs. "Requirements"
  • "Features" vs. "Use Cases"
  • etc...

Trace Matrix will show the relationship between records in X-axis and Y-axis by placing a "checkmark" in the appropriate cell in the matrix. Records that are "orphans" - i.e. not linked to any records in the other axis will be marked with light-red background to flag them.

Here's an example of a traceability matrix between "Features" and "Requirements" planned for a specific release:

  RE-14 RE-15 RE-16 RE-17 RE-18
FT-1
Covered
Covered
 
 
 
FT-2
 
 
 
 
 
FT-3
 
 
 
Covered
Covered
FT-4
 
 
 
Covered
 
FT-6
 
 
 
 
 

The matrix above displays the relationships between the records in the two axes:

  • RE-14, and RE-15 are downstream from FT-1; RE-17 is downstream from FT-3 and FT-4; and RE-18 is downstream from FT-3.
  • The relationships from FT-3 to RE-17 and RE-18 are marked as "Suspect Links", the red triangles indicate this. This was caused by a recent update to FT-3.
  • RE-16 and FT-2 are marked as "orphans" (using light-red background), since they are not related to any record in the other axis.

Benefits of Traceability Matrix:

  • Ensure "coverage" between different types of requirements artifacts. For example: Ensure that all "Business Requirements" in a release have one or more "Functional Requirements". Any orphan "Business Requirements" will likely mean that the corresponding "Functional Requirements" were somehow missed.
    • You can ensure "coverage" by simply creating the traceability matrix in Accompa and verifying that it contains no rows/columns with light-red background!
    • You can similarly ensure there are no "suspect links" by creating the traceability matrix in Accompa and verifying that there are no cells with red triangles ().
    • This can save you a lot of time that's usually spent in manually verifying coverage, and will help you avoid the usually expensive mistake of missed, conflicting, and outdated requirements.
  • Quickly add/remove relationships between records in the traceability matrix. You can double-click on a specific cell in the traceability matrix to edit the relationship between the two corresponding records.
  • Similarly, ensure "coverage" between features, use cases, requirements, and test cases too.