Riepilogo dell'insegnamento: INGEGNERIA DEL SOFTWARE
6 cfu così ripartiti nelle aree:
- 6 CFU nell'area I - Ingegneria del software
Sillabo dell'insegnamento
- I - Ingegneria del software
- *
PSS - Processi di Sviluppo del Software
Il processo di sviluppo del software: aspetti economici, organizzativi e metodologici; il gruppo di lavoro; prodotto software e processo; il ciclo di vita dei sistemi software; modello tradizionale a cascata; modello evolutivo e a fontana; altri modelli.
- *
LMS - Linguaggi di Modellazione del Software
Modellazione del software: modelli e linguaggi di specifica; il linguaggio UML; uso di UML entro i progetti informatici.
- *
AR - Analisi dei Requisiti
Analisi e specifica dei requisiti: l'interazione con il cliente e la formalizzazione dei requisiti; il metodo dei casi d'uso e le sue applicazioni; risultati del processo di analisi.
- *
ASW - Architetture Software
Le architetture software: architetture software per piccoli sistemi; architetture client-server, multi-tier e Web; il pattern MVC e le sue applicazioni; riuso delle componenti server e approccio multicanale. il linguaggio Java; l'architettura di Java2; Java e le proprietaâ?? di oggetti; sistemi multi-tier in Java; sistemi Web in Java; cenni al linguaggio C# e all'architettura .NET.
- *
PSC - Progettazione del Software e Codifica
Progettazione dei sistemi software: principi e metodi di progettazione; principi di modularit? ed incapsulamento; la progettazione orientata agli oggetti; i ``design patterns'' ed il loro uso; regole di scrittura del codice;
- *
TVV - Testing, Verifica e Validazione
La conduzione operativa di un progetto: impostazione e definizione di obiettivi; analisi dei vincoli; scelta di strumenti e architetture; il lavoro in team; la fase di test, sviluppi parziali e test parziali (scatola bianca e scatola nera); test di aggregazione; test su dati reali; test di regressione; collaudo; entrata in produzione e manutenzione ordinaria; manutenzione evolutiva; case study. Metodologie di gestione dei progetti software: il project management; metriche e diagrammi utili (Gantt, Perth, ...); strumenti CASE; il problema della documentazione; comunicazione entro e fuori un team; evoluzione e manutenibilitaâ?? dei sistemi.
(*) Le sottoaree con asterisco sono quelle che il GRIN ritiene essenziali