How to Manage Live Requirements Traceability Matrix?

  Libor Buš tips share

Maintaining a requirements traceability matrix (RTM) in Excel is time-consuming and error-prone. Use ReqView to manage and analyze end-to-end traceability easily. Try it for free!

How to Structure Requirements for SW & HW Products?

Requirements for a product combining SW & HW are typically described in several levels of abstraction. It helps to manage complex products. The international standard ISO/IEC/IEEE 29148:2018 — Systems and software engineering — Life cycle processes — Requirements engineering recommends organizing requirements in the following documents:

  • Business Requirements Specification (BRS)
  • Stakeholder Requirements Specification (StRS)
  • System Requirements Specification (SyRS)
  • Software Requirements Specification (SRS)

The advantage of this approach is that requirements can be iteratively derived from abstract stakeholder needs to detailed design to cope with product complexity.

Product requirements are inputs to other life cycle processes, which derive further documentation during product development:

  • System Architecture — interfaces, subsystems, design elements, etc.
  • Verification & Validation (V&V) — reviews, test cases, test case results, verification procedures, bugs, etc.
  • Risk Management — hazards and risks analysis using Failure Modes and Effects Analysis (FMEA) or other methods

Requirements traceability represents M:N relationships between requirements and related project artifacts maintained through the product development. For instance, you can link system requirements to stakeholder requirements, or verification to low-level requirements.

The following diagram illustrates the typical requirements structure. It represents the traditional V-model development process for SW / HW systems:

Typical structure of a system development project with requirements, risks, and tests

Detailed and consistent requirements traceability increase product quality because it enables demonstration that requirements were fully implemented and verified. It is also useful for the effective impact analysis of requirements changes to estimate costs and risks.

For safety-critical products, requirements traceability is the key for compliance with functional safety standards, such as:

  • SW/HW Systems: IEC 61508 — Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems
  • Automotive: ISO 26262 — Road Vehicles – Functional Safety
  • Medical Devices: IEC 62304 — Medical Device Software — Software Life Cycle Processes
  • Aerospace: DO 178C — Software Considerations in Airborne Systems and Equipment Certification
  • Railway: EN 50128 — Railway Applications — Communication, Signaling and Processing Systems — Software for Railway Control and Protection Systems

What Is Requirements Traceability Matrix (RTM)?

You can display traceability links between requirements and related project artifacts in a traceability matrix. For example, you can create a requirements traceability matrix as an Excel table representing low-level SW requirements as rows and test cases as columns. If a test case verifies a requirement then put a cross character ("X") in the corresponding row, see the image below.

Example of traceability matrix in Excel vs. traceability reports created from templates in ReqView

However, you will reach the limits of this manual approach using Excel quite soon:

  • Reviewing a large traceability matrix is inconvenient — just imagine yourselves scrolling a traceability matrix with more than 100 rows and columns to find out if a requirement is verified by any test.
  • Manual maintenance of a traceability matrix is very time-consuming and error-prone. You need to manually update its rows and columns according to two different documents.
  • Analysis of traceability analysis across multiple levels is difficult. You need to jump between traceability matrices when tracing coverage from high-level requirements (user needs) via detailed software requirements down to design elements.

How to Manage Dynamic Traceability?

You really do not need to waste your time and efforts with the manual maintenance of traceability matrices in Excel! See how easily you can manage and review end-to-end traceability in the requirements management tool. More info 

  • Create Links Intuitively: just select source and target requirements and choose a link type.
  • View Live Requirements Traceability Matrix: display all traceability links in Links column to review the whole matrix in a single live view.
  • Browse End-to-end Traceability: click on a traceability link similarly as you browse the Internet.
  • Identify Coverage Gaps: filter requirements with missing traceability links to expose missing or unverified functionality

How to Identify Requirements Coverage Gaps?

For each requirement, capture its type in a custom enumeration attribute (User Story, Functional Requirement, Constraint, etc.). Consistently link it with derived requirements using satisfaction link type. Then you can easily filter high-level requirements with missing satisfaction links. Focus the Filter input field and enter a filtering condition matching all requirements with a chosen type without a satisfaction link.

For instance, open the Example Project, switch to the NEEDS document and enter Type: STORY NOT Is Satisfied by filtering condition to display uncovered user stories:

Filter uncovered high-level user needs with missing satisfaction links

Similarly, switch to the SRS document and enter Type: FR NOT Is Verified by filtering condition to display functional requirements without any test.

How to Use Live Traceability Matrix?

We know that each customer has unique needs. In ReqView, you can flexibly customize the layout and styling of the live traceability matrix view. And then, simply export the current table view to HTML, MS Word, or Excel to share traceability reports with your team:

  • Customize Traceability View: define custom traceability columns to see information about linked objects right in the context of the displayed document structure.
  • Export Traceability Matrix: export the current table view with custom traceability columns to HTML, MS Word, or Excel – generate a traceability matrix document automatically.
  • Change Impact Analysis: identify the high-level requirements impacted by a change and inspect all impacted low-level requirements, tests, design elements linked across all traceability levels.

How to Customize Traceability View?

You can define a traceability matrix using custom traceability columns easily. Open the Example Project, switch to the Software Requirements Specification (SRS) document, and show the following traceability columns:

  • Satisfies: upstream user needs (NEEDS) satisfied by the requirement
  • Verified By: software tests (TESTS) verifying the requirement
  • Implemented By: design elements (ARCH) implementing the requirement
Dynamic traceability matrix for Software Requirements Specification (SRS) in ReqView

You can open and adjust HTML template of these traceability columns to filter links by link type, iterate traceability coverage across several levels, or display attributes of linked objects. More info 

How to Understand Full Context of Linked Requirements?

With ReqView 2.11, you can open a project in multiple windows and place them side-by-side on more displays. Understand full context of linked requirements in a single 360° traceability view easily. More info 

Manage requirements and traceability in multiple ReqView windows

How to Export Traceability Matrix to Excel?

You can export the current ReqView traceability matrix view into Excel conveniently in just a few clicks. More info 

Traceability matrix for Software Requirements Specification (SRS) exported from ReqView to Excel
  Download Example Traceability Matrix

Example: Template for Change Impact Analysis Report

In ReqView, you can conveniently customize report templates using Handlebars {{ moustache }} syntax and predefined export helper functions. More info 

We will demonstrate that on a change impact analysis report for the Example Project. The report should display end-to-end traceability coverage of high-level user stories (NEEDS) down to low-level software requirements (SRS) and software tests (TESTS):

Example requirements traceability matrix generated from an HTML template

The report has simple layout using an HTML table with 3 columns. The following template snippet outputs the content Traceability column (styling is omitted for clarity):

{{#eachInlinkWith type="satisfaction"}}
<span>{{docId}}-{{id}}: {{shortDescription}}</span>
{{#eachInlinkWith type="verification"}}
<span>{{docId}}-{{id}}: {{shortDescription}}</span>

The snippet uses eachInlinkWith block helper to iterate all incoming satisfaction traceability links into a user story. For each linked requirement, it renders the ID, the description, and status. In the context of the linked SRS requirement, the snippet analogically uses eachInlinkWith helper to iterate all incoming verification links. For each linked test, it renders the test ID, the description, and status.

  Download Report Template

If you need a little help with your specific traceability reports then contact us. We offer custom services and will be happy to tailor complex custom reports according to your specific needs.

Try ReqView

Find out how ReqView can simplify your daily requirements traceability tasks. Just download ReqView and request PRO trial license to start your free trial.

  Free Trial

Learn More