Analisi statica

Come abbiamo detto nella lezione precedente, il testing dell’esecuzione del programma non è però l’unica cosa che possiamo fare per aumentare la fiducia nostra e del cliente nella correttezza del programma. Un’altra importante iniziativa in tal senso è l’ispezione tramite varie tecniche del codice del programma, attività che prende il nome di analisi statica.

L’analisi statica si basa cioè sull’esame di un insieme finito di elementi (le istruzioni del programma), contrariamente all’analisi dinamica che invece considera un insieme infinito (gli stati delle esecuzioni). È un’attività perciò meno costosa del testing, poiché non soffre del problema dell’“esplosione dello spazio degli stati”.

Considerando solamente il codice “statico” del programma, questa tecnica non ha la capacità di rilevare anomalie dipendenti da particolari valori assunti dalle variabili a runtime. Si tratta nondimeno di un’attività estremamente utile, che può aiutare a individuare numerosi errori e inaccortezze.