Penso che esista un ruolo per garanzia della qualità in un'organizzazione agile, in particolare quella che deve aderire a un sistema di gestione della qualità come ISO9001 , ISO13485 per il settore dei dispositivi medici o AS9000 nel settore aerospaziale , allo scopo di soddisfare i requisiti dei clienti, i regolamenti o i mandati aziendali.
Ci sono due cose importanti da tenere a mente. Innanzitutto, l'assicurazione della qualità non è solo interessata alla qualità del prodotto finale, ma a tutti i prodotti di lavoro intermedi. È possibile visualizzare lo sviluppo del software come una scatola nera che accetta in qualche modo i requisiti del cliente e il software di output (e forse il supporto per quel software). Tuttavia, durante questo processo, il team di sviluppo fa cose - trasformazioni di tali requisiti in qualcosa di usabile per progettare e costruire software, creazione di progetti, prototipi e simulazioni, codice di produzione, codice di test, script di supporto, procedure manuali (per test, implementazione. ..), documentazione per l'utente e altro - ognuno dei quali può presentare difetti che potrebbero avere un impatto sulle attività a valle che si basano su tali informazioni. La garanzia della qualità riguarda non solo i difetti riscontrati in questi prodotti di lavoro, ma anche il modo in cui tali difetti vengono prevenuti. In secondo luogo, l'assicurazione della qualità è anche interessata alla qualità dei processi: quanto bene stiamo facendo il lavoro. Anche se la cosa ovvia qui è la qualità dei prodotti di lavoro, è anche quanto tempo ci vuole per fare il lavoro (tra le altre cose).
Due dei principi di Agile sono di favorire "gli individui e le interazioni su processi e strumenti" e di favorire "software funzionante su una documentazione completa". Tuttavia, nessuno di questi dice che non si dovrebbe avere un processo o che non è necessario alcun tipo di documentazione. Se stai cercando di implementare un sistema di gestione della qualità, è probabile che ti venga richiesto un livello di documentazione che possa essere paragonato al lavoro effettivamente svolto durante il controllo. Penso che questi ideali Agili siano meglio espressi in alcuni dei concetti di sviluppo del software snello - eliminare gli sprechi rimuovendo i ritardi il processo, riducendo la burocrazia e migliorando la comunicazione interna, amplificando l'apprendimento e responsabilizzando il team nel prendere decisioni su come raggiungere al meglio gli obiettivi.
Oltre ad essere responsabile dell'auditing interno, un'organizzazione di QA può anche aiutare a supportare l'agilità o lo sviluppo del software snello essendo responsabile di aiutare a rilevare gli sprechi, trovare ritardi e garantire che ciò che è documentato dia ad ogni team di sviluppo un margine di manovra sufficiente per implementare requisiti di processo (riscossi da clienti, agenzie di regolamentazione, mandati aziendali, ecc.) nel modo migliore per il singolo progetto ma con un certo livello di coerenza all'interno dell'organizzazione per consentire alle persone di passare da un progetto all'altro senza dover reimparare un intero nuovo set di processi e metodi in cima alla curva di apprendimento tecnico.
Tuttavia, sulla base di alcuni dei tuoi commenti, sembra che la direzione in cui questo sta andando non sia agile o snella. È una linea sottile camminare su come dettagliato per rendere la documentazione del processo. Se è troppo vago, offre a ogni team room del progetto l'implementazione di tutto ciò che desidera, determinando ampie variazioni nelle implementazioni dei processi (e quindi nella qualità del processo e nella probabile qualità del prodotto) all'interno dell'organizzazione. Se è troppo specifico e dettagliato, è probabile che aggiunga burocrazia e una documentazione completa interferisca con le interazioni e il software di lavoro. Ci deve essere equilibrio tra agilità e capacità di ottenere informazioni sulla qualità del processo (attraverso misurazioni e un certo livello di coerenza).
Vedi anche: