Assunzione di una visione semplicistica ...
I difetti vengono introdotti in un prodotto dall'operazione di sviluppo. Noi (o più spesso il management) potremmo dire "Se ottengo sviluppatori migliori (per gli sviluppatori" migliori "leggo" persone migliori e processi e pratiche migliori) avrò meno difetti ". Questo è innegabilmente vero, ma solo fino a un certo punto - In un punto sconosciuto della curva non sarai in grado di ridurre i difetti assumendo sviluppatori "migliori", ma otterrai comunque dei difetti perché, come tutti sappiamo (ad eccezione del management) è tecnicamente e praticamente impossibile produrre difetti codice gratuito.
Quindi assumi i tester per garantire che a) il prodotto faccia ciò che deve fare in modo che tu venga pagato e b) trovino ogni singolo bug rimasto nel codice ... Tranne che hai una curva simile- Ad un livello, assumere tester migliori significa che troveranno più difetti, ma proprio come non si può garantire una programmazione senza bug, né si può mai fare abbastanza test per garantire di aver trovato tutti i bug. Alcuni rimarranno sempre. Ed è l'I.T. equivalente a Sods Law che, anche se i difetti rimanenti sono così oscuri, la tua copertura di test non li trova, il giorno 1 gli utenti faranno (o circa).
Il trucco è sapere se i tuoi sviluppatori sono sufficientemente bravi ei tuoi tester sono sufficientemente bravi da produrre i migliori output possibili agli utenti, accettando il fatto che ci saranno sempre dei difetti residui dopo test non importa quanto tu faccia.
Ma supponiamo che tu abbia motivo di credere che alcuni elementi dell'operazione di consegna non stiano operando alla massima qualità possibile e che gli utenti vedano più difetti di quanto potrebbero essere. Dove vai da lì?
Bene, misurate la quantità e i tipi di difetti riscontrati nei test di sistema, nei test UAT e poi dopo che il prodotto è diventato attivo. Ora sai quanti difetti "rilevabili" ci sono stati nella tua versione del prodotto. È quindi possibile valutare perché UAT non ha trovato quelli che sono stati segnalati in Live e perché i test di sistema non hanno trovato quelli che sono stati segnalati in UAT. Infine, puoi valutare il motivo per cui i difetti sono usciti dal negozio di sviluppo.
Riceverai una vasta gamma di effetti e risposte, ma quando li avrai puoi escogitare un'analisi costi / benefici per mitigare qualsiasi problema tu possa trovare. Poi, quando hai mitigato quegli effetti al punto in cui spendere più tempo o denaro non ti darebbe alcuna differenza apprezzabile nei tassi di difetti residui hai ottenuto tutto ciò che puoi ottenere e hai la migliore operazione di consegna pratica possibile per te ...
Dopo, i problemi verranno comunque trovati e gli utenti continueranno a essere infastiditi e la direzione chiederà comunque perché è possibile fornire codice con difetti "anche dopo aver speso tutti questi soldi per rendere la consegna il migliore possibile", ma saprai di avere, come organizzazione, fatto il meglio che puoi e di notte starai tranquillo:)