Cos’è il testing software e a cosa serve?

Cos’è il testing software e a cosa serve?

Introduzione al testing software

Nell’attuale scenario dello sviluppo di sistemi software da impiegare in scenari critici si sta ponendo particolare attenzione ed importanza ad una delle fasi più delicate e costose: il testing. Da studi fatti a riguardo è stato dimostrato che la gran parte dei costi totali di sviluppo (fino a più del 50%) è dovuta al processo di verifica, soprattutto in sistemi complessi e di grandi dimensioni. Alcune ricerche hanno mostrato quanto gli investimenti nella fase di test portino a guadagni significativi. Diversi studi condotti evidenziano come il vantaggio ottenuto dall’organizzazione possa andare dal 20% fino addirittura al 70% del costo totale di produzione. Il vantaggio di investire nel test dipende poi dalla capacità dell’organizzazione di mettere in piedi, nelle prime fasi del ciclo di vita, politiche di lungo termine, che prevedano anche sforzi iniziali di pianificazione, laddove ad esempio il test è considerato un’attività che inizia solo dopo l’implementazione. In letteratura, è comunemente accettato, anche se non molto praticato in ambito industriale, il principio secondo cui, rilevare problemi e guasti nelle prime fasi del ciclo di vita porta a notevoli risparmi. Nello studio condotto da Neal et al. gli autori riportano un caso di studio sull’efficienza ed i costi della Independent V&V, Verifica e Validazione, un processo che punta a mostrare che il software sia conforme alle specifiche e che soddisfi le aspettative del cliente, evidenziando, e confermando, che l’efficienza della V&V è maggiore quando essa viene applicata sin dalle prime fasi del ciclo di sviluppo. Questo fondamentale principio è mostrato già dai primi lavori sulla V&V. Tali studi evidenziano, inoltre, la capacità della V&V di rimuovere guasti nelle prime fasi del ciclo di vita; ciò evidentemente oltre a ridurre i costi di sviluppo impatta positivamente anche sui costi di manutenzione. La riduzione dei costi di sviluppo passa necessariamente attraverso la riduzione dei costi di V&V.

Cos'è il testing software e a cosa serve

Cos’è il testing software e a cosa serve

I programmi possono contenere errori o bug. Un test consiste nell’esecuzione di un frammento di codice per verificare che funzioni. Una definizione più rigorosa del testing software afferma che:

“Il Testing è l’attività di specificare, designare ed eseguire test”.

La normativa IEEE 610 definisce, invece, il testing software come:

Un’attività nella quale un sistema o le sue componenti sono analizzate sotto particolari condizioni, al fine di osservarne e registrarne il comportamento, valutando i differenti aspetti”.

L’attività di test software è una tecnica che è passata negli ultimi 20 anni dalla semplice intuizione alla scienza, dall’analisi personale ad una pratica ben consolidata, mossa dalla teoria e dall’esperienza di chi la compie. Tale attività, è comunque più complessa di quanto non sembri, ed è necessario capirne l’importanza e le sue modalità di attuazione, troppo spesso valutate ed eseguite in maniera del tutto soggettiva, senza alcuna metodologia consolidata, e senza nessun modello di riferimento.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *