How to Use Requirements Traceability Matrix (RTM)

  Libor Buš tips share

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

Requirements Structure for SW & HW Products

Requirements for complex products combining SW & HW are typically described in several levels of abstraction. The international standard ISO/IEC/IEEE 29148Systems 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 developed from abstract business and stakeholder needs to detailed design.

Requirements are inputs to other software or systems life cycle processes:

  • 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 relationships between requirements and project artifacts maintained through development. For instance, you can link system requirements to stakeholder requirements, or software verification tests to low-level software requirements.

The following diagram illustrates the typical requirements structure for a SW / HW product according to the traditional V-model development process:

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 impact analysis of requirements changes to estimate costs and risks.

Requirements traceability is the key for compliance with industry standards for functional safety:

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

Challenges With Traceability Matrix in Excel

You can display traceability links between requirements and related project artifacts in a traceability matrix. For example, 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.

Requirements Traceability Matrix (RTM) displayed as an Excel spreadsheet vs. live traceability views 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.
  • Difficult traceability analysis across multiple levels. You need to jump between traceability matrices when tracing coverage from high-level requirements (user needs) via detailed software requirements down to design elements.

Manage End-to-end Requirements Traceability Better

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 ReqView 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 Traceability Links — mouseover a link to preview information about the linked object or click on the link to navigate to the linked object similarly as you browse the Internet.

View Requirements Traceability Matrix

In ReqView, you can flexibly add custom traceability columns displaying live traceability matrix right in the table view next to the requirements description. And then, simply export the current table view to HTML, MS Word, or Excel to share traceability reports with your team:

  • Customize Traceability Views — create traceability columns with a custom layout and styling to see information about linked objects right in the context of the displayed document.

  • Traceability Wizard — generate new traceability columns displaying linked objects in a tree with up to three levels in just a few clicks. More info 

  • 360° Traceability Views — open a project in multiple windows and place them side-by-side on more displays to understand the full context of linked requirements. More info 

Example: Traceability Matrix for Software Requirements Specification (SRS)

  1. Open the Example Project storing high-level user stories (NEEDS), Software Requirements Specification (SRS), software verification tests (TESTS), and design elements (ARCH).

  2. Switch to the SRS, and show the following traceability columns as illustrated on the screenshot below:

    • 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

Review Traceability Matrix in Excel

You can export the displayed traceability matrix to HTML, MS Word, or Excel conveniently and share it with external reviewers. More info 

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

You can filter requirements without traceability links to expose missing or unverified functionality. To enable gap analysis, capture type of requirements in a custom enumeration attribute (User Story, Functional Requirement, Constraint, etc.) and consistently link requirements and other project artifacts using different link types.

Example: Open the Example Project and filter user stories (NEEDS) with missing satisfaction links from SW requirements (SRS) by entering Type: STORY NOT Is Satisfied by condition:

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 SW requirements, which are not verified by any test case.

Example: Change Impact Analysis Report

In ReqView, you can conveniently generate traceability reports with custom layout and style by export 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):

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

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.

Visualize Requirements Traceability Graphs

Extend ReqView by powerful free tools based on Neo4j graph database to solve more advanced usecase.

  • Query traceability graphs — use Neo4j Browser to explore graphs using intuitive Cypher graph query language.
  • Visualize traceability graphs — use Neo4j Bloom and yWorks Data Explorer to visualize traceability graphs.
  • Validate traceability consistency — create custom HTML reports querying a Neo4j graph database to validate consistency of requirements traceability automatically.

For more information see How to Analyze Requirements Traceability in Neo4j Graph Database.

Visualize requirements traceability graph in yWorks Neo4j Data Explorer

Learn More

Try ReqView

Do you maintain requirements traceability matrix in Excel manually?

  FREE TRIAL  DOWNLOAD

Find out how ReqView can simplify your daily requirements traceability tasks.