POC: add tool qualification verification report model - #831
AlexanderLanin wants to merge 3 commits into
Conversation
|
Documentation preview for this pull request is available at: |
| This report evaluates the Docs-as-Code toolchain as a qualified tool for | ||
| producing and verifying safety-relevant documentation. | ||
|
|
||
| .. tool-usecase:: Build and CI behavior |
There was a problem hiding this comment.
As the author of the doc_as_code.rst this is derived from, I wonder why there is only two use cases here?
For me, each malfunction is a separate use case and their distinct description is important. Also, reference to the process requirements are important. This is all lost here.
There was a problem hiding this comment.
POC scope has ended there :p
| :post_template: tool_qualification_report | ||
|
|
||
| This report evaluates the Docs-as-Code toolchain as a qualified tool for | ||
| producing and verifying safety-relevant documentation. |
There was a problem hiding this comment.
Security evaluation is missing but required by S-CORE process.
| :detection_sufficient: NO | ||
| :additional_safety_measure_required: YES | ||
| :safety_measure: Pull-request review checks changes to safety-critical links before merge. | ||
| :violates: tool_req__docs_common_attr_safety_link_check |
There was a problem hiding this comment.
No way that this single requirement is sufficient. I expect a list of ten or more requirements for this one. Similar for the other malfunctions.
There was a problem hiding this comment.
Note: dont review the content. this is a POC
2ca13d2 to
47270ce
Compare
Why
A tool qualification report needs to show, in one readable model, which tool use cases are evaluated, which malfunctions can violate requirements, how those malfunctions affect safety, and which tests provide evidence. The POC makes this chain machine-readable and renders it as a qualification matrix and traceability table.
The structure is designed for a process reader: use cases are visible as top-level report items, while their malfunctions are shown directly beneath them. The report then connects each malfunction to violated requirements and available verification evidence.
What the process reader can follow
The model expresses this flow:
A malfunction can be fully or partially verified by multiple testcases.
Metamodel elements and links
tool-usecasetool-malfunctiontool-usecase;violatesone or more requirements; optional free-textsafety_measure; safety impact and detection attributestestcasefully_verifiesorpartially_verifiespoints to one or more malfunctionsThe supported requirement targets for
violatesare general, stakeholder, feature, component, tool, and assumption-of-use requirements.The nesting relationship is represented by Sphinx-Needs
parent_needs. The generated UI labels this relationship ascontainson the use case andcontained byon the malfunction, avoiding an implementation-orientedparentlabel.The qualified
doc_toolNeed remains the report identity and owns the post-template report generation, but the use cases are intentionally not nested under it. The report template discovers the top-leveltool-usecaseNeeds and follows their nested malfunctions.Example and report output
The example is based on the Docs-as-Code tool verification concerns from the S-CORE documentation, including:
The generated report contains:
The POC adds additional best-guess testcase links to demonstrate that one malfunction can be covered by multiple tests while another can remain without direct testcase evidence.
Scope
This is a POC for validating the metamodel shape, nested-Need rendering, graph-driven report generation, and testcase traceability.