Software Engineering II
Obiettivi
Obiettivi
Alla fine del corso dovresti essere in grado di comprendere le principali definizioni, sfide e principi che guidano l'area dell'ingegneria del software. Inoltre, dovresti comprendere i benefici e saper usare (in livello basico):
- Un modello (conceptual model) di software, usato per ripresentare i diversi aspetti del software, guidando il suo sviluppo;
- Un processo di sviluppo agile, usato per catturare le esigenze degli utenti in modo attuabile e implementarle in modo agile;
- Un metodo specifico basato su uso di API per codificare e strutturare il software in moduli;
- Un sistema di versioning e di collaborazione, per aiutare l’ingegnere del software a gestire il codice in un ambiente multi-persona e multi-versione.
- Un processo di testing per i) trovare bug prima dei clienti, ii) per accelerare lo sviluppo e iii) per rendere il codice più facile da mantenere.
Libri consigliati
Libri consigliati
- Sommerville, Ian. Software Engineering, Pearson, 10 ed., 2015.
- Flewelling, Paul. The Agile Developer’s Handbook, Packt, 2018.
- Embley, David W., Thalheim, Bernhard (Eds.) Handbook of Conceptual Modeling: Theory, Practice, and Research Challenges, Springer, 2011.
Timetable e Aule
Timetable e Aule
- Mercoledì, 13.30 – 15.30, Aula B106.
- Giovedì, 08.30 – 10.30, Aula B106.
Lecturers
Lecturers
- Prof. Renata Guizzardi (Responsabile) renata.guizzardi AT unitn DOT it
- Jorge Ramirez (TA) jorge.ramirezmedina AT unitn DOT it
Office hours
Office hours
Jorge Ramírez would receive students (upon appointment over email) every Monday and Friday from 10:00 to 12:00.
Location: Room 177, Povo 2.