Corso di Laurea Specialistica in Informatica

Interpretazione Astratta e Analisi Automatica del Software 2007/2008

Analisi, Debugging, Verifica e Trasformazione Automatica di Programmi basata sulla semantica

VERSIONE PRELIMINARE

pagina aggiornata il 27-08-2007

Indice

Finalità del corso
Programma
Bibliografia

Finalità del corso

La crescente dipendenza della società dalle applicazioni informatiche fa sí che l'analisi e la verifica della correttezza dei sistemi complessi rappresenti sempre di più un fattore critico del processo di sviluppo. Il malfunzionamento dei sistemi, siano essi hardware, software o protocolli di comunicazione, può comportare danni rilevanti di ogni genere: dalla perdita finanziaria alla perdita di vite umane. Inoltre, quando i difetti non sono rilevati prima dell'impiego del sistema, l'applicazione di eventuali misure correttive è, quando possibile, ben più difficile e costosa. Esempi dal recente passato includono il millennium bug, gli errori di alcune versioni del processore Pentium, lo scoperto da 32 miliardi di dollari alla N.Y. Bank, il fallimento iniziale del vettore Ariane 5, e gli incidenti mortali del Therac-25.

Il corso intende fornire una introduzione (relativamente) estesa alle tecniche che stanno alla base dell'analisi automatica del software e della verifica formale (nonchè debugging) assistiti dal calcolatore.

Prerequisiti

Programma preliminare

Bibliografia

Libri

Articoli (e materiale di riferimento reperibile in rete)