Documento generato. Non modificarlo a mano: rigeneralo con
python3 scripts/gen_traceability_doc.py. Le righe qui sotto sono le citazioni§REQ:<id>realmente presenti nel codice, non una promessa.Stato: 21 requisiti su 21 implementati e verificati.
Ogni artefatto cita solo il livello immediatamente sopra di sé: il codice cita il requisito che soddisfa, il test cita il requisito che verifica, e il requisito porta i collegamenti al materiale di analisi. Nessuno salta un anello — un commento nel codice che cita un nodo C4 o un documento è il sintomo di un collegamento mancante sul requisito.
flowchart LR
F["<b>.feature</b><br/>@id(...)"]
C["<b>codice</b><br/>§REQ:…"]
T["<b>test</b><br/>§REQ:…"]
F -->|"soddisfatto da"| C
F -->|"verificato da"| T
C -.->|"stesso id"| T
classDef f fill:#c9a227,stroke:#8a6f1a,color:#fff
classDef c fill:#438dd5,stroke:#2e6295,color:#fff
classDef t fill:#3a7a3a,stroke:#2a5a2a,color:#fff
class F f
class C c
class T t
Due controlli la tengono onesta, entrambi in CI:
- anti link-rot — ogni
§REQ:citato risolve a un@id(...)esistente; - copertura — ogni id è citato da almeno un file di codice e almeno un test.
⚙️ = requisito non funzionale.
⚙️ = requisito non funzionale.
I file che soddisfano più requisiti sono quelli da leggere per primi, e quelli da toccare con più attenzione: