Ingegneria del software 2009/10

Programma  (in blu parte gia' svolta)

- Introduzione: la produzione del software; i fattori di qualita' ed i
 principi dell'Ingegneria del Software.

- Modelli del processo di sviluppo software: modello a cascata; modello a spirale;
modelli iterativi; UP; modelli agili; extreme programming

- Gestione dei progetto software: le attività di gestione; tecniche di stima dei costi;
function points; COCCOMO

- UML: introduzione ai linguaggi di specifica; struttura generale di UML;
entita' strutturali; diagrammi (UML 2.0); viste; OCL (cenni); diagrammi dei casi d'uso;
diagrammi delle classi; diagrammi di sequenza e di collaborazione.

- Analisi dei requisiti: processo di stesura dei requisiti;  classificazione
dei requisiti; notazioni per i requisiti.

- Casi d'uso: modellazione dei requisiti funzionali; attori e scenari.

- Progettazione di sistemi software: architetture software; progettazione orientata agli oggetti.

- Manutenzione: tipi di manutenzione; metriche utili complessità
ciclomatica. complessità di Halstead.

- Qualità del software: tipi di qualità' metriche per la qualità; processi orientati alla qualità;
strumenti per la qualità; verifica, validazione e certificazione.

- Testing: testing di unità (funzionale, strutturale, statistico); criteri di copertura;
testing d'integrazione; testing di sistema; testing dei sistemi OO.

-Analisi statica: strumenti matematici (cpo, reticoli completi, funzioni continue,
teoremi di punto fisso, inserzione di Galois); interpretazione astratta; semantica
denotazionale  di un semplice linguaggio imperativo.

I riferimenti si trovano alla fine dei lucidi relativi ad ogni argomento.



Materiale didattico

Modalità d'esame:

Orale. Per poter sostenere l'esame e' necessario iscriversi
almeno tre giorni prima della data dell'appello usando
questo sito.