Concetto: Tracciabilità
La tracciabilità è la possibilità di ricondurre un elemento del progetto ad altri elementi del progetto correlati, specialmente quelli relativi ai requisiti.
Relazioni
Descrizione principale

Introduzione

La tracciabilità è la possibilità di ricondurre un elemento del progetto ad altri elementi correlati del progetto, specialmente quelli relativi ai requisiti. Gli elementi del progetto coinvolti nella tracciabilità vengono denominati elementi di tracciabilitàs.  Gli elementi tipici di tracciabilità includono diversi tipi di requisiti, elementi dell'analisi e del modello di progettazione, prodotti di lavoro di test e documentazione di supporto per l'utente finale e il materiale per la formazione, come illustrato nella figura riportata di seguito.

Specifiche dei requisiti software Elementi di tracciabilità Suite di test Modello di progettazione Specifica supplementare Modello di casi d'uso Vista Richiesta cointeressati Diagramma descritto nel testo di accompagnamento.

Gerarchia della tracciabilità

Ciascuna voce di tracciabilità dispone di un proprio insieme univoco di attributi associati (vedere: Attributi dei requisiti), utile per controllare lo stato, i vantaggi, i rischi, ecc., associati ad ogni voce.

Scopo della tracciabilità

Lo scopo per stabilire la tracciabilità è di facilitare:

  • La comprensione dell'origine dei requisiti
  • La gestione dell'ambito del progetto
  • La gestione delle modifiche ai requisiti
  • La valutazione dell'impatto sul progetto di una modifica in un requisito
  • La valutazione dell'impatto sui requisiti che ha l'esito negativo di un test (ad esempio, se il test non riesce, può significare che il requisito non è soddisfatto)
  • La verifica che tutti i requisiti del sistema siano rispettati dall'implementazione.
  • La verifica che l'applicazione svolga solo quello per cui è preposta.

La tracciabilità è utile per comprendere e gestire come l'input per i requisiti, ad esempio le regole di business e le richieste degli stakeholder venga convertito in un insieme di esigenze dello stakeholder/utente e di funzioni del sistema, come specificato nel documento della visione. Il modello di casi d'uso, a sua volta, evidenzia come queste funzioni vengono tradotte in funzionalità del sistema. I dettagli su come il sistema interagisce col mondo esterno sono catturati nei casi d'uso, con altri importanti requisiti come quelli non funzionali, ed i vincoli di progettazione nelle specifiche supplementari. La tracciabilità consente inoltre di seguire come le specifiche dettagliate vengono convertite in una progettazione, come vengono testate e come viene documentato per l'utente. Per un sistema di grosse dimensioni i casi d'uso e le specifiche supplementari possono essere inclusi nello stesso pacchetto per definire una SRS (specifica di requisiti software) per una particolare "funzione" o altro raggruppamento di sottosistema.

Un concetto chiave utile per la gestione delle modifiche nei requisiti è quello di un collegamento di tracciabilità "sospetto". Quando cambia un requisito (o un altro elemento di tracciabilità) in una delle due estremità di un collegamento di tracciabilità, tutti i collegamenti associati a quel requisito vengono contrassegnati come "sospetti". Questi indica al ruolo responsabile che deve riesaminare la modifica e determinare se anche gli elementi associati devono essere modificati. Questo concetto è utile anche nell'analisi dell'impatto di potenziali modifiche.

Le tracciabilità possono essere configurate per facilitare le risposte al seguente insieme di query:

  • Mostra le necessità utente non collegate alle funzioni del prodotto.
  • Mostra lo stato dei test su tutti i casi d'uso dell'iterazione #n.
  • Mostra tutti i requisiti supplementari collegati ai test il cui stato è 'non testato'.
  • Mostra i risultati di tutti i test non riusciti, in ordine di criticità.
  • Mostra le funzioni previste per questo rilascio, quali esigenze dell'utente soddisfano e il relativo stato.

Esempio:

Per un sistema Macchina per il riciclaggio, il documento Visione specifica le seguenti funzioni:

  • FEAT10: La macchina per il riciclaggio consentirà l'aggiunta di nuovi tipi di bottiglia.

Questa funzione si riconduce ad un caso d'uso "Aggiungi nuovo tipo di bottiglia":

  • Il caso d'uso Aggiungi nuovo tipo di bottiglia consente all'operatore di insegnare alla macchina per il riciclaggio a riconoscere nuovi tipi di bottiglie.

Questa tracciabilità è utile per verificare che tutte le funzioni siano state considerate nei casi d'uso e nelle specifiche supplementari.

Tracciabilità tipica

Gli elementi di tracciabilità più importanti sono:

Esigenze utente/stakeholder (dalla Visione, possono essere ulteriormente seguiti fino alle richieste individuali degli stakeholder).
Funzione del prodotto (dalla Visione). 
Requisito supplementare (dalle specifiche supplementari). 
Caso d'uso
Sezione di caso d'uso (le sezioni di un caso d'uso dettagliato).
Elemento della progettazione (dal modello di progettazione).
Suite di test (o potenzialmente lo scenario di test).

Altri elementi, come le regole di business e le problematiche, possono essere utili da seguire.

Nel diagramma riportato di seguito è visualizzata una tracciabilità tipica:

Diagramma descritto nel testo di accompagnamento.

Questo diagramma mostra solo la tracciabilità ai requisiti. Può esistere anche un altro tipo di tracciabilità, ma non è illustrato in questo diagramma: gli elementi della progettazione si riconducono ad elementi di implementazione, esistono degli scenari di test per la progettazione e l'implementazione, ecc.