Qualità del software: Perché testare un’applicazione software

Qualità del software: Perché testare un’applicazione software

L’analisi della qualità

Una volta terminata la realizzazione del software, occorre verificare non solo l’aderenza di questo alle specifiche progettuali (per valutare se esistano mancanze o imprecisioni), ma occorre analizzare aspetti come la qualità, ma occorre sottolineare come l’efficienza sia un’importante aspetto facente parte della qualità che per focalizzare meglio possiamo illustrare separatamente.

Verifica dell’efficienza

L’efficienza può essere facilmente valutata analizzando le caratteristiche del prodotto e verificando l’esattezza delle sue risposte agli stimoli esterni (valori inseriti, calcoli richiesti ecc.), eventuali anomalie possono essere corrette dagli stessi sviluppatori una volta individuatene le cause e quindi occorre includere solitamente importanti controlli sulle prestazioni, robustezza e modularità del prodotto.

Verifica della qualità

L’analisi del secondo aspetto, la qualità, è un concetto senza dubbio più complesso del precedente, suscettibile a differenti interpretazioni da parte di utenti diversi anche dinanzi a medesimi aspetti. Sorge il problema di individuare un concetto vero di qualità (qualità rispetto a cosa?), non personale, cercando di capire come ottenere un prodotto valido, che soddisfi l’utenza. A tal proposito, organizzazioni come l’ISO hanno realizzato una complessa serie di normative il cui compito dovrebbe essere quello di guidare lo sviluppatore nella comprensione del concetto di qualità, unificando la vastità di interpretazioni presenti e stabilendo un metodo per ottenerla. Perché questo? Cosa comporta una scarsa qualità? Senza dubbio un precoce invecchiamento del software ed alti costi di debug; gli addetti sono impegnati nel revisionare software obsoleti anziché produrne di nuovi. Un valido esempio arriva dal millennium bug: prevedibile con largo anticipo ma mai realmente affrontato. Ai fini della qualità, è più importante eliminare il difetto che non determinare l’errore che lo ha generato.

Qualità del software: Perché testare un'applicazione software

Perché testare un’applicazione software

Un’analisi attenta delle imperfezioni del codice e dei suoi scostamenti da quanto progettato è un passo essenziale per la realizzazione di un prodotto valido, funzionale, che soddisfi la clientela e non vanifichi l’attività di realizzazione del prodotto. Come andrebbero realmente le cose se la società distribuisse un prodotto senza prima verificarne la funzionalità e l’efficienza, dipende profondamente dalla tipologia del software, dalla sua complessità, dal pubblico finale e da altri fattori, ma nella quasi totalità dei casi la mancanza di test porta inevitabilmente ad un prodotto ancora progetto, non finito, incompleto. Realtà di questo tipo si sono sempre avute nella storia del commercio informatico: società mosse dal fervore di superare la concorrenza hanno finito per mandare in fumo oltre che risorse (denaro/uomini) anche credibilità acquisite in lunghi tempi.

Esempi opposti arrivano invece da aziende di “affidabilità” consolidata, che producono software per i quali ogni difetto potenziale costituisce una perdita d’immagine e di leadership di mercato: un facile esempio è quello del campo dei DataBase, nel quale aziende come la IBM o l’Oracle puntano su prodotti di qualità, rilasciando nuove release del prodotto anche dopo alcuni anni, impegnandosi dunque non sulla velocità nel battere la concorrenza ma su un attento e lungo test. La ragione, in questo caso, è anche dettata dal fatto che prodotti come i DataBase (DB) vengono utilizzati per la gestione di grosse quantità di dati di imprese di vario genere, contenenti informazioni riservate, importanti, di alto valore economico: ogni perdita di dati costituisce un perdita pesante in termini di denaro che si ripercuote sull’impresa stessa. L’attività di verifica del prodotto prima che questo venga consegnato al cliente ha un nome: defect testing, la quale esamina la correttezza delle varie funzionalità presenti.

Pubblicato da Vito Lavecchia

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

Lascia un commento

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