INGEGNERIA DEL SOFTWARE A
Corso di Laurea Triennale in Ingegneria Informatica
Prof. Agostino Poggi
Finalità del Corso
Il corso intende fornire i principi di base per l'analisi e
la progettazione di sistemi software.
Programma
- Fondamenti di Ingegneria del Software - Qualità del
software. Il processo di produzione del software. Metodologie per lo
sviluppo del software. Analisi di sistemi software. Progettazione di
sistemi software. Strumenti per la progettazione e realizzazione di
sistemi software
- Sviluppo di Sistemi Software Orientati agli Oggetti - Analisi
orientata agli oggetti dei sistemi software. Progettazione e sviluppo di
sistemi software orientati agli oggetti. Design pattern
- Il linguaggio Java - Oggetti e classi. Ereditarietà e
polimorfismo. Eccezioni. Input/output. Collezioni di oggetti. Programmazione
concorrente.
Attività di esercitazione
Le esercitazioni saranno mirate all'apprendimento delle
tecniche e all'uso di strumenti per progettazione e realizzazione di sistemi
software principalmente attraverso l'uso del linguaggio di programmazione Java.
Modalità di esame
Sono previste una prova teorica e una prova pratica.
Propedeuticità Consigliate
Sono considerati propedeutici: Fondamenti di Informatica A, Fondamenti
di Informatica B.
Testi Consigliati
- Ian Sommerville. Ingegneria del software, 8/ed, Pearson Education, 2007.
- Simon Bennett, John Skelton, Ken Lunn,
UML, Mc Graw-Hill, 2001
- Bruce Eckel, Thinking in Java, III ed, MindView,
2002.
- E. Gamma, R. Helm, R. Johnson, J.
Vlissides, Design Patterns, Addison-Wesley, 1994.
- Jim Arlow, Ila Neustadt. UML 2 e Unified Process: Analisi
e progettazione Object-Oriented, 2/ed, Mc Graw Hill, 2007.
- Bruce Eckel, Thinking in Patterns, MindView,
2003