Questo post è ben lungi da avere la pretesa di essere un manuale e anche dal voler essere una linea guida: al massimo dice “delle cose” sulla scorta dell’esperienza vissuta in -enni di lavoro.
Quello che racconto, naturalmente, è parametrato sull’azienda piccola o media. Le aziende grandi e strutturate hanno dinamiche, processi e quattrini da spendere diversi, però le mie parole possono essere fonte di ispirazione e delucidazione.
Tutto comincia quando un ente, un reparto, una persona, richiedono la realizzazione di un nuovo programma fornendo informazioni più o meno precise, non importa quanto l’analisi sia approfondita. Viene comunque un momento in cui il fornitore pensa di avere le idee chiare e inizia a scrivere il programma.
E’ evidente come tutto quello che sto raccontando sia “for dummies” e tagliato con la scure.
Dopo un po’ di tempo il fornitore partorisce il programma e lo vorrebbe consegnare: che cosa dovrebbe essere accaduto?
Responsabilità del Fornitore
Unit Test
Deve aver controllato che il programma elabori correttamente i dati di test e gestisca le eccezioni previste. I cosiddetti “dati di test” non sono i dati presi dall’ambiente di produzione, ma sono un insieme di dati costruiti ad arte per verificare che il programma funzioni correttamente in tutti i casi previsti e invii un messaggio di errore ogni volta che si presenti una anomalia, sia essa prevista che non prevista.
Integration Test
Se il programma funziona “da solo”, in un ambiente controllato, deve funzionare anche all’interno dell’ecosistema per il quale è previsto senza causare danni: durante il suo funzionamento, per esempio, altri programmi che utilizzino gli stessi dati non si devono bloccare o rallentare.
System Test
Il programma deve funzionare con i tempi di risposta previsti o desiderati senza “infastidire” l’esecuzione di altri programmi in un ambiente le cui dimensioni e i cui volumi sono paragonabili a quelli dell’ambiente di produzione.
Responsabilità del cliente
Accettazione
Il cliente prova il programma nel suo ambiente di collaudo, dimensionato e configurato in modo da dare risposte coerenti con l’esecuzione in produzione, verifica che i risultati prodotti siano effettivamente quelli che si aspetta, nella forma e nei contenuti e lo prende in carico.
Qualche centinaio di parole per dare un’idea generale delle fasi di test e delle responsabilità.
Vale la pena scrivere qualche riga per dire, sempre in modo molto tagliato con l’accetta, per dire “che cosa” fare?