Skip to content.
Logo tecnoteca

Portale Tecnoteca.it

Logo tecnoteca

Vai al sito aziendale Tecnoteca.com


 
You are here: tecnoteca.it » Sezioni speciali » Qualità del software » Processi » Organizzazione e supporto » Piano della qualità

Argomenti correlati:
  - Approfondimento
  - Libri

Piano della qualità

I concetti di base


Ogni progetto di sviluppo ex-novo, ampliamento o manutenzione di un prodotto software comprende attività di assicurazione della qualità (QA).
Anche un semplice lavoro sviluppato da una sola persona nasconde al suo interno attività di QA, indipendentemente dal fatto che chi lavora ne sia più o meno cosciente.
Ogni programmatore ha una sua idea di come intende scrivere il codice, e questa idea rappresenta lo "standard di codifica" di quel programmatore. Allo stesso modo ognuno di noi ha un’idea di come scrivere la documentazione, e anche questo è uno "standard di documentazione" personale. L’attività di rilettura e correzione dei documenti o del codice rappresentano uno "standard di review" (riesame) o "standard di audit" (controllo). Ogni programmatore esegue dei test o ispezioni sul suo lavoro, e questi sono sono i processi di verifica e validazione.

Un piano formale di qualità include i processi che ognuno autonomamente eseguirebbe, salvo il fatto di pianificarli e stabilirne degli standard validi per tutti i partecipanti al progetto, piuttosto che per ogni singola persona.

Le formalità stabilite per le attività di QA di un progetto sono decisioni che il cliente, il project manager ed il responsabile della qualità devono assumere in base al livello di rischio del progetto stesso.


 

Definizioni


L’assicurazione di qualità è quell’insieme di attività pianificate e sistematiche che assicurano che i processi ed i prodotti software sviluppati siano conformi ai requisiti, agli standard ed alle procedure.
I processi da controllare comprendono tutte le attività collegate alla progettazione, sviluppo e manutenzione del software.
I prodotti da controllare comprendono il software, i dati collegati, la documentazione ed ogni altro elemento di supporto.

L’assicurazione di qualità deve garantire tramite processi definiti e documentati che gli standard (criteri con i quali deve essere confrontato il prodotto software) e le procedure (criteri con i quali deve essere confrontato il processo di sviluppo e di controllo) siano seguite attraverso tutto il ciclo di vita del software.

L’aderenza ai requisiti, standard e procedure stabilite è valutata attraverso il monitoraggio dei processi, la valutazione dei prodotti, il controllo ed il test.


 

Obiettivi della qualità


Lo sviluppo del software, così come ogni attività complessa, è un processo carico di rischi, sia tecnici che di gestione.
Rischi tecnici possono essere relativi al fatto che il prodotto finale non funzioni come richiesto o sia troppo complicato da utilizzare o manutenere.
Rischi di gestione possono essere relativi al fatto che il progetto sfori il budget economico prefissato o termini oltre i tempi previsti.

Gli obiettivi della qualità consistono nella riduzione di tali rischi, attraverso regole e criteri comuni, e attraverso un processo di controllo che ne verifichi l'applicazione.
Per esempio si richiede che vengano stabiliti standard di codifica per assicurare la qualità del codice e, di conseguenza, la sua manutenibilità. Allo stesso modo la mancanza di uno standard per la gestione degli errori e per il trattamento dei problemi rilevati nel software aumenta il rischio che gli errori segnalati siano dimenticati o non ricevano adeguata attenzione.

L’assicurazione di qualità è una funzione obbligatoria nel ciclo di sviluppo di un prodotto software per migliorare la qualità dei processi di sviluppo e del prodotto finale.
Non disporre di tale funzione significa aumentare il rischio di rilasciare prodotti di qualità non accettabile.




 

L’organizzazione


L’assicurazione della qualità (QA) deve essere indipendente dal punto di vista organizzativo dalle funzioni di produzione.
Le attività di QA possono essere eseguite al meglio in una struttura abilitata al test del software e separata dalle strutture dedicate alle attività tecniche e di gestione.

Dal punto di vista dell’organigramma QA dovrebbe rispondere direttamente alla direzione e interfacciarsi con il responsabile del prodotto.
Il motivo di questa separazione sta nel fatto che QA deve essere visto come il braccio della direzione per far assicurare il rispetto degli standard e delle procedure. Se l’assicurazione di qualità non fosse indipendente dalla struttura produttiva, sarebbe difficoltoso garantire un controllo preciso ed imparziale. L’indipendenza aiuta poi ad assicurare che le attività di test siano guidate dai requisiti e non dai criteri di progettazione e codifica.

Il personale dedicato alla qualità è in genere ridotto rispetto alle altre funzioni, ma è importante disporre di persone per le quali siano stabilite precise responsabilità di QA. Troppo spesso, se le responsabilità di QA non sono assegnate, la frase "la qualità deve essere un affare di tutti" diventa "la qualità non è un affare di nessuno".


 

Struttura del documento


Il piano di qualità costituisce il documento nel quale si definiscono i criteri necessari per poter garantire la qualità dei risultati finali del progetto, attraverso l’analisi ed il controllo dei processi e dei prodotti.
Il piano tratta quindi non solo gli obiettivi della qualità, ma anche e soprattutto le modalità per raggiungerli.

Un indice del piano deve prevedere, organizzate non necessariamente nello stesso modo, le seguenti voci:

INTRODUZIONE
- Scopo e ambito di validità
- Ambito di validità
- Presentazione del documento
- Glossario e lista degli acronimi
- Documenti applicabili e riferiti

ORGANIZZAZIONE PER LA QUALITA’
- Organizzazione aziendale
- Interfacce interne ed esterne
- Ruoli e Responsabilità

ATTIVITA’ E PROCEDURE DI ASSICURAZIONE QUALITA’ PER LE ATTIVITA’ DI:
- Predisposizione di piani, standard, procedure, strumenti
- Gestione della configurazione
- Distribuzione del software
- Sicurezza degli archivi
- Gestione dei fornitori
- Specifica dei Requisiti
- Progettazione
- Sviluppo
- Integrazione e Test
- Consegna
- Manutenzione

REVIEW E AUDIT
- Modalità di preparazione
- Modalità di svolgimento
- Azioni correttive