Il corso si occupa delle problematiche relative alla realizzazione di sistemi software complessi.
A partire dalla definizione del software come prodotto di un processo ingegneristico e dall'individuazione delle sue qualità, si introducono i principi fondamentali su cui si basano le metodologie e gli strumenti di supporto alla modellazione, analisi, progetto, implementazione e collaudo di sistemi software orientati agli oggetti, in ambiente centralizzato e distribuito. Per gli aspetti di modellazione si fa riferimento prevalentemente alla notazione UML. Qualche cenno è dato, comunque, ai linguaggi di specifica formale e ai problemi di verifica. Java è utilizzato come linguaggio di implementazione. Come ausilio alle attività di sviluppo si propongono i pattern di progetto sequenziali, concorrenti, basati su componenti e per applicazioni su rete. Il corso discute, infine, aspetti di gestione e controllo dei progetti.
- Teacher: Luciano Argento
- Teacher: Fabio Fassetti
- Teacher: ANGELO FURFARO