Scritto originalmente in francese. Tradotto dall'IA — il significato è stato preservato, non la prosa.
Definizione breve
Funzione incaricata della qualità di un prodotto software — criteri, politiche di test, standard di consegna, rischi da coprire, automazione. A seconda del contesto, la sigla indica la persona, il team, la fase di validazione o la disciplina.
Definizione dettagliata
Quality Assurance si intende, in senso normativo, come assicurazione della qualità: l'insieme delle disposizioni che danno fiducia nel fatto che un prodotto soddisferà determinati requisiti. Nella pratica del software, la parola indica il più delle volte tutt'altro — la fase di test manuale collocata fra lo sviluppo e il rilascio in produzione, e le persone che la presidiano.
Negli articoli di questo blog, il termine conserva il senso di funzione, ed è la sua posizione nella catena a fare la differenza. In fondo alla catena, verifica ciò che è già deciso e può solo bloccare o lasciar passare. A monte, scrive il quadro: criteri di qualità, politiche di test, soglie di regressione accettabili, aree del prodotto da mettere in sicurezza, perimetro dell'automazione, segnali che dicono se un team consegna meglio o peggio. I due usi convivono sotto la stessa sigla, a volte nella stessa organizzazione.
Uso nel dominio
Discussioni sull'organizzazione dei team, definizione di una politica della qualità, scelte su che cosa automatizzare, ripartizione delle responsabilità fra sviluppo e test.
Sinonimi e varianti
Quality Assurance · assicurazione della qualità · tester · QA engineer.
Da non confondere con
- Qualità di consegna — perimetro delle pratiche che riducono il numero di difetti prodotti; la QA ne è un mezzo, non l'equivalente.
- Test — attività di verifica di un comportamento, che può essere svolta da uno sviluppatore come dalla QA.
- TDD — disciplina di sviluppo in cui il test precede il codice, praticata dagli sviluppatori stessi e non da questa funzione.
- Collaudo — validazione di una consegna da parte di chi l'ha commissionata, sul piano della conformità alla richiesta.
- Controllo qualità (
QC) — verifica di un prodotto finito per campionamento, mentre l'assicurazione della qualità riguarda il processo.
Esempi
«QA non deve essere il luogo in cui gli sviluppatori depositano la loro responsabilità sulla qualità.»
Una QA che definisce le soglie di regressione accettabili e il perimetro dell'automazione occupa la posizione a monte; una QA la cui attività si misura in difetti trovati appena prima del rilascio in produzione occupa la posizione a valle.
Ambiguità / dibattiti
La sigla indica indifferentemente una persona, un team, una fase e una disciplina, il che permette di discutere della «QA» senza che gli interlocutori parlino della stessa cosa.
Seconda incertezza: l'assicurazione della qualità in senso normativo riguarda il processo, mentre l'uso pratico la riduce quasi sempre al test di un prodotto finito.