Che cos’è la testabilità del software e utilizzo della metodologia in azienda

Che cos’è la testabilità del software e utilizzo della metodologia in azienda

Testabilità del software

Innanzitutto bisogna dire che nell’ambito del testing software è importante quanto difficile definire cosa si intenda per “testabilità” del software.

In pratica, per valutare se un determinato risultato raggiunge o meno il risultato atteso è necessario definire prima tale risultato in termini di testabilità, cioè capace di essere testato. Quindi, le caratteristiche rilevate a seguito dell’esecuzione di un test devono poter essere paragonate a caratteristiche definite a priori. Tali caratteristiche devono perciò poter essere paragonate senza alcuna ambiguità. L’esecuzione di una funzione di calcolo, per esempio, dovrà fornire un risultato numerico definito a priori: un numero ritenuto “corretto”, mentre tutti gli altri risultati saranno considerati “errati”.

Poiché il software implementa dei requisiti, occorre dunque che questi siano descritti in termini “testabili” perché i test possano verificarli e validarli. Purtroppo non tutti i requisiti sono definiti in maniera testabile. E’ compito della fase di “analisi dei requisiti” raccogliere richieste generiche, elaborale e tradurle in specifiche chiare, complete e “testabili”. Senza questa fase cruciale dell’analisi dei requisiti risulta impossibile assicurare l’efficacia dei test.

Concludendo, occorre garantire che i requisiti risultino:

  1. Chiari (non ambigui)
  2. Completi
  3. Testabili

Nella letteratura specializzata, le caratteristiche di testabilità dei requisiti sono indicate con l’acronimo S.M.A.R.T., con il seguente significato:

  1. S = Specifico;
  2. M = Misurabile;
  3. A = Attendibile;
  4. R = Realistico;
  5. T = Tempistico.

Garantendo tali caratteristiche dei requisiti sarà possibile definire i risultati attesi dai test e quindi assicurare la “testabilità” del software.

Che cos'è la testabilità del software e utilizzo della metodologia in azienda

Adozione e utilizzo della metodologia in azienda

La metodologia di testing proposta può aiutare le aziende a sviluppare prodotti software di maggiore qualità e a migliorare la soddisfazione dei propri clienti.

Essa si presta ad essere utilizzata in progetti complessi ed in altri più semplici e di breve durata. Fornisce una descrizione dei tre elementi principali: la competenza delle persone, il processo di testing, i metodi, le tecniche e gli strumenti a supporto. Fa uso delle migliori pratiche disponibili ed è stata già sperimentata con successo presso un gruppo nutrito di piccole e medie aziende di software.

La sua applicazione in una struttura organizzativa con proprie abitudini e metodi consolidati non risulta agevole né immediata. Occorre una forte motivazione al cambiamento e la necessità di migliorare per competere sul mercato.

L’approccio suggerito è tratto dal modello CMM che indica le pratiche richieste per la corretta implementazione dei processi di sviluppo in generale, e di verifica e validazione in particolare, per il miglioramento del livello di maturità di un’organizzazione software.

UTILIZZO DEL MODELLO E MIGLIORAMENTI

Il modello proposto acquista validità e diventa efficace quando sostenuto da un impegno della direzione aziendale. Tale impegno sarà quindi formale e sostanziale:

  • formale in quanto dichiarato, documentato nella politica per la qualità e divulgato in tutta l’azienda;
  • sostanziale in quanto tale politica sarà efficacemente implementata in azienda con il coinvolgimento della direzione stessa in fase di lancio ed in fase di sostegno e di

A tale scopo si suggerisce, come prima cosa, di modificare la politica per la qualità in modo da contenere i seguenti punti fondamentali, nel caso non li prevedesse già:

  1. Competenza delle persone;
  2. Gestione dei requisiti;
  3. Disegno e codifica secondo un processo definito;
  4. Ispezione e revisione tecnica dei output prodotti;
  5. Test e collaudo accurato;
  6. Utilizzo di tecniche e strumenti adeguati.

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 *