Obiettivi formativi
Il corso intende fornire i principi di base per l'analisi e la progettazione di sistemi software.
Prerequisiti
Fondamenti di informatica, Fondamenti di programmazione.
Contenuti dell'insegnamento
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 lo sviluppo di sistemi software.
Sviluppo di Sistemi Software Orientati agli Oggetti – UML. 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. Interfacce Grafiche. Gestione basi di dati. Programmazione riflessiva e concorrente.
Programma esteso
- - -
Bibliografia
B. Bruegge and A.H. Dutoit. Object-Oriented Software Engineering: Using UML, Patterns and Java, 3rd Edition, Prentice Hall, 2009.
Metodi didattici
Il corso si basa su lezioni teoriche e esercizationi in laboratorio.
Modalità verifica apprendimento
Sono previste una prova teorica e una pratica.
Altre informazioni
- - -