Analisi dei sistemi informatici (2016/2017)

Codice insegnamento
4S003735
Docente
Isabella Mastroeni
Coordinatore
Isabella Mastroeni
crediti
6
Settore disciplinare
ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Lingua di erogazione
Italiano
Periodo
I sem. dal 3-ott-2016 al 31-gen-2017.

Orario lezioni

I sem.
Giorno Ora Tipo Luogo Note
lunedì 11.30 - 13.30 lezione Aula I  
giovedì 13.30 - 16.30 lezione Aula I  

Obiettivi formativi

Obiettivo del corso è quello di fornire gli strumenti base per la comprensione, la progettazione e l'uso di strumenti di analisi (statica e dinamica) su sistemi informatici al fine di verificare proprietà e/o estrarre funzionalità di sistemi sotto analisi. Nel contesto del CdS, il corso fornisce quindi conoscenze di contesto e capacità trasversali atte ad analizzare sistemi informatici sia dal punto di vista dello sviluppatore che dal punto di vista di chi deve estrarre funzionalità da un sistema sconosciuto (reverse engineering).

Al termine dell’insegnamento lo studente dovrà essere in grado di dimostrare conoscenze e capacità di comprensione che consentono di elaborare e/o applicare idee originali, spesso in un contesto di ricerca; risolvere problemi in ambiti nuovi o non familiari, inseriti in contesti più ampi (o interdisciplinari) connessi al loro settore di studio; studiare e ricercare materiale di studio in un modo auto-gestito o autonomo.

Programma

Basi formali: Teoria dei reticoli, teoria di punto fisso, interpretazione astratta, modelli e semantica di programmi.
Analisi statica: Analisi basate su CFG, Framework monotono, analisi di Data-flow distributive, analisi numeriche e di alias, analisi inter-procedurali (cenni), SSA (cenni).
Slicing: Framework formale, algoritmo di Weiser, algoritmo HPR, forward vs backward slicing.
Analisi dinamiche: Panoramica su debugging, profiling e tracing, disassemblaggio, decompilazione; Emulazione e virtualizzazione, Testing, Monitoring.

Laboratorio: Introduzione e utilizzo di strumenti per il testing e l'analisi dinamica di codice.

Testi di riferimento
Autore Titolo Casa editrice Anno ISBN Note
F. Nielson, H. R. Nielson and C. Hankin Principles of Program Analysis Springer-Verlag 1999

Modalità d'esame

L'esame sarà strutturato in due parti e può essere espletato in due modi:
- Scritto + Progetto su argomenti di analisi
- Scritto + Orale (opzionale sotto il 26)

L'esame scritto ha l'obiettivo di verificare una sufficiente acquisizione e comprensione dei concetti presentati nel corso.
Il progetto ha l'obiettivo di verificare la capacità di acquisire materiale di studio e di rielaborare autonomamente i concetti presentati durante il corso.
L'esame orale ha l'obiettivo di verificare una acquisizione ed una comprensione avanzata dei concetti studiati, con capacità di rielaborazione degli stessi.

In particolare:
Scritto: Insieme domande per valutare la preparazione dello studente sull'intero programma del corso. La valutazione verrà data in due modi per dare allo studente la possibilità di scegliere come completare l'esame. Tale valutazione sarà espressa sia in 30esimi (in tal caso si è ammessi alla registrazione/orale se la valutazione è maggiore o uguale a 18/30) che come bonus da 0 a 4 (in tal caso si è ammessi a sostenere il progetto se la valutazione è maggiore o uguale a 1)
- Progetto/approfondimento fatto da gruppi di massimo due persone il cui argomento può essere anche proposto al docente da parte del gruppo stesso. Tale progetto sarà presentato sottoforma di una relazione scritta e di una presentazione orale.
Il risultato dell'esame sarà poi ottenuto dando una valutazione in 30esimi (rapportato poi a 24 + 2 punti per la presentazione) al progetto;
- Orale: Esame sull'intero programma del corso. In caso di voto superiore al 26/30 allo scritto l'orale diventa obbligatorio per poter anche solo confermare il voto, altrimenti si può registrare massimo un 26.

Sintetizzando:
- Voto scritto su 4 minore di 1: Ripetere lo scritto;
- Voto scritto su 4 tra 1 e 2,4 (inferiore a 18/30): Fare progetto OPPURE ripetere lo scritto;
- Voto scritto su 4 tra 2,4 e 3,4 (tra 18/30 e 26/30): Fare progetto (in tal caso vale il voto su 4) OPPURE registrare OPPURE fare orale (in questi casi vale il voto in 30esimi)
- Voto scritto maggiore di 3,4 (maggiore di 26/30): Fare progetto (in tal caso vale il voto su 4) OPPURE fare orale OPPURE registrare 26/30.

Opinione studenti frequentanti - 2015/2016


Statistiche per i requisiti di trasparenza (Attuazione Art. 2 del D.M. 31/10/2007, n. 544)

I dati relativi all'AA 2016/2017 non sono ancora disponibili