Obiettivi formativi
Proporre un percorso che, partendo dall'analisi della Software Crisis e passando per lo studio dei tradizionali modelli di sviluppo, arrivi a definire i fondamentali aspetti architetturali dei moderni sistemi software con particolare attenzione alle applicazioni web.
Con riferimento agli Indicatori di Dublino:
Conoscenza e capacità di comprensione
Il corso introduce i primi concetti relativi all'ingegneria del software. Particolare enfasi è data alla comprensione delle metodologie classiche. Il testo di riferimento è in italiano, ma viene altresì utilizzata durante le lezioni la terminologia in lingua inglese come avviamento alla consultazione di letteratura scientifica internazionale.
Capacità di applicare conoscenza e comprensione
Le conoscenze teoriche presentate vengono sempre applicate alla risoluzione di problemi specifici. Il progetto assegnato che affianca il corso è incentrato sulla realizzazione di applicazioni Web. Spesso i metodi risolutivi vengono presentati sotto forma algoritmica, sviluppando negli studenti la capacità di strutturare procedure utili in numerose parti dell'informatica e non solo nello studio dell'ingegneria del software.
Autonomia di giudizio
Gli esercizi, che vengono proposti relativamente alla parte teorica svolta a lezione, possono venire risolti individualmente o in gruppo. Il confronto con i compagni di corso, nel lavoro a casa o durante discussioni sullo stato di aggiornamento del progetto in aula, favorisce lo sviluppo di capacità specifiche per poter a chiarire ai compagni o ai docenti le proprie argomentazioni. Spesso le problematiche che scaturiscono dallo sviluppo del progetto possono venire risolti in modi molto diversi e l'ascolto delle soluzioni proposte da altri permette di sviluppare la capacità di individuare strutture comuni, al di là delle apparenti differenze superficiali.
Abilità comunicative
Le numerose discussioni sui diversi metodi per risolvere i problemi proposti consentono di migliorare le capacità di comunicazione. Vengono inoltre abitualmente utilizzate durante le spiegazioni (ed esplicitamente evidenziate in classe) alcune modalità di comunicazione specifiche della tecnologia informatica.
Capacità di apprendimento
Lo studio delle origini delle soluzioni tecnologiche e la loro introduzione motivata da considerazioni qualitative e quantitative contribuisce a realizzare negli studenti la capacità di apprendere in modo profondo e non soltanto superficiale e ripetitivo. Le conoscenze così acquisite non sono mai rigide e definitive, ma sono perfettamente adattabili ad ogni evoluzione e cambiamento di prospettiva e di contesto.