Obiettivi formativi
Il corso fornisce nozioni introduttive di base sull'ingegneria del
software, affrontando negli aspetti più salienti di
pianificazione, progettazione, collaudo e manutenzione, i processi
di sviluppo e produzione del software.
Il programma del corso non prevede prerequisiti, è
cioè del tutto autocontenuto. La conoscenza di un linguaggio
di programmazione qualsiasi e un po' di esperienza di
programmazione sono desiderabili, ma non strettamente
necessarie.
Il programma del corso è fortemente influenzato dalle
direttive del nuovo ordinamento didattico, ed in particolare
esclude contenuti che prevedano un bagaglio di conoscenze
matematiche men che elementari o che contribuiscano
all'arricchimento dello stesso. Ciò non riflette un
giudizio in merito al valore e alla necessità di tali
conoscenze nell'ambito disciplinare e professionale di
questi corsi, bensì solo una scelta di ricollocazione di
detti contenuti nell'ambito dei programmi delle Lauree
specialistiche.
Attività formative
Il corso prevede lo svolgimento di 32 ore di lezioni ed
esercitazioni frontali in aula, e di attività di progetto in
laboratorio, in parte dirette dal docente. Per queste ultime, sono
previste ulteriori 12 ore di esercitazioni di laboratorio, a cura di
un collaboratore didattico, e sono riservate ulteriori risorse di
laboratorio.
L'apprendimento della materia è sostenuto dallo studio
dei materiali didattici di riferimento e dal loro uso nella
realizzazione di progetti in laboratorio. Questi sono organizzati
come progetti componenti un unico progetto formativo, il quale
verte su alcuni temi speciali di interesse proposti dal
docente.
Temi speciali di interesse di questa edizione del corso
sono:
- misurazione e gestione delle risorse nei progetti software
- gestione delle configurazioni del software
nonchè i temi risultanti dalle combinazioni dei temi
suddetti.
Programma del corso
- Introduzione all'ingegneria del software: il
software: prodotto e processo, caratteristiche di qualità,
ciclo di vita del software, fasi ed attività del processo
produttivo, modelli del ciclo di vita dei sistemi software.
- Pianificazione del processo produttivo: Studio
di fattibilità, determinazione di obiettivi e vincoli,
gestione dei rischi, controllo dei processi di produzione, gestione
delle configurazioni, versionamento, amministrazione di
progetto.
- Progettazione del software: cattura ed analisi
dei requisiti, prototipazione rapida di modelli, specifica e
codifica, verifica di correttezza, scalabilità,
progettazione basata su componenti, norme di codifica e
documentazione.
- Collaudo del software: metodi di collaudo,
strategie di collaudo (di unità, di integrazione,
funzionale, di sistema), metodi e strategie di collaudo di software
a oggetti, metriche di collaudo.
- Valutazione: metriche del software, modelli di
costo, progettazione di qualità, standard ISO 9001, 9000-3,
9126.
indietro.