Requirements Traceability Notes

Jul 30, 2024

Tracing Requirements to Source Code

Overview

  • Demonstration of tracing between requirements and source code.
  • Importance of upstream and downstream traceability across various levels of requirements.

Levels of Requirements

System Level Requirements

  • High-level overview of what the system must achieve.

High Level Requirements

  • Details that outline specific functionalities.
  • Traceable to corresponding system level requirements.

Low Level Requirements

  • Specific components that fulfill high-level requirements.
  • Mapped to actual source code functions.

Documenting Requirements

Tools Used

  • Requirements stored in Word and Excel.

Structure in Documents

  • Word Document for System Requirements

    • Utilizes styles for:
      • Requirement ID
      • Requirement text
  • Word Document for High Level Requirements

    • Includes traceability data style linking back to system requirements.
  • Excel Document for Low Level Requirements

    • Contains columns for:
      • Requirement ID
      • Requirement name
      • Description
      • Reference to high-level requirements.
      • Source code mapping (functions needed).

Importing into TB Manager

  • Structured import process demonstrated in TB Manager:
    • Importing system level, high level, and low level requirements in sequential steps.
    • Each level nests appropriately under the previous level.

Import Steps

  1. System Level Requirements

    • Use rules for ID and text extraction to identify requirements.
    • Preview and Import - confirms correct extraction.
  2. High Level Requirements

    • Use additional tracing data rule for better organization.
  3. Low Level Requirements

    • Import Excel file mapping lower requirements to source code.
    • Preview highlights necessary mappings and their functions.

Traceability

  • Importance of clear traceability to understand the purpose of functions at each level:
    • Upstream Traceability - From low levels to high levels.
    • Downstream Traceability - From high levels to system requirements.

Mapping Source Code

  • Manual mapping of source code to low-level requirements by dragging functions onto the requirements.
    • Demonstrates clarity in tracing functionality to specific requirements.

Automation of Mapping

  • Exporting current project specifications to TBM spec (XML) for automation.
  • Running a Python script to generate mapping info between low-level requirements and corresponding source code.
  • Importing back this mapping into TB Manager for complete traceability.

Identifying Gaps in Coverage

  • Highlighting low-level requirements with no associated code.
  • Generating traceability matrices to see coverage of requirements, color-coded to identify gaps (e.g., red for uncovered).

Conclusion

  • Overall objective: To ensure traceability of requirements all the way to source code for better project management and development process.
  • Contact information offered for further inquiries.