Files
dev-process/templates/Traceability-Matrix-template.md
Stefan Lohmaier 247b8311f3 refactor(i18n): rename vorlagen/ -> templates/, *-vorlage -> *-template
Final German naming cleanup in dev-process:
- vorlagen/                            -> templates/
- vorlagen-word/                       -> templates-word/
- tools/generate_word_vorlagen.sh      -> tools/generate_word_templates.sh
- *-vorlage.md / *-vorlage.docx        -> *-template.md / *-template.docx
- Review-Protokoll-vorlage.*           -> Review-Minutes-template.*
- angebot-vorlage.*                    -> quote-template.*
- angebot-beispiel.html                -> quote-example.html

All references in README.md, toolstack/toolstack.md, build_word_template.py,
and generate_word_templates.sh updated. The master Word style template
(slohmaier-doc-template.docx) was already English-named.

The dev-process repo is now fully English in both content and structure.
2026-05-12 12:09:06 -07:00

3.2 KiB

Traceability Matrix

Principle

The traceability matrix ensures end-to-end traceability from requirement to test:

System requirement → Software requirement → Architecture element → Implementation (PR/file) → Test case → Test result

Each level must be traceable in both directions:

  • Forward: requirement → has it been implemented and tested?
  • Backward: test case → which requirement does it verify?

Table structure

Sys-Req SW-Req ASIL Arch element Implementation Test case Test result Status
SYR-001 SWR-010 B MOD-Timer PR !23, timer.c TC-010 Pass (v1.2) Complete
SYR-001 SWR-011 B MOD-Timer PR !23, timer.c TC-011 Pass (v1.2) Complete
SYR-002 SWR-020 A MOD-CAN PR !31, can_driver.c TC-020 Pass (v1.2) Complete
SYR-003 SWR-030 B MOD-Watchdog Open
SWR-040 QM MOD-Diag PR !35, diag.c TC-040 Fail (v1.1) Finding open

Column explanation

Column Description
Sys-Req System requirement ID (Gitea issue with label req::system)
SW-Req Software requirement ID (Gitea issue with label req::software)
ASIL Assigned ASIL level
Arch element Architecture module or component
Implementation Pull request and/or file
Test case Test case ID (Gitea issue with label test::*)
Test result Pass/Fail with version/date
Status Complete / Open / Finding open

Gap analysis

The matrix makes gaps visible:

  • Requirement without test: row without test-case entry → test missing
  • Requirement without implementation: row without PR → not implemented
  • Test without requirement: test case not assigned to any requirement → verify
  • Fail without finding: failed test without a documented finding → rework

Automatic generation from Gitea

The matrix can be generated automatically from Gitea issues:

  1. A Python script reads all issues with req::* labels via the Gitea API
  2. It follows issue links to architecture issues, PRs, and test issues
  3. It reads CI-pipeline results (JUnit XML) for test outcomes
  4. It produces the matrix as a Markdown table or CSV

Precondition: issues are correctly linked and labelled (see gitea-aspice-setup.md).

Output formats:

  • Markdown (for wiki / documentation)
  • CSV (for import into customer systems)
  • HTML (for reporting)

An example script lives at tools/traceability-report.py in the project repository.


The current traceability matrix is updated on every release and stored in the wiki.