CdSINFORMATICA
Codice271AA
CFU6
PeriodoSecondo semestre
LinguaItaliano
Moduli | Settore/i | Tipo | Ore | Docente/i | |
INGEGNERIA DEL SOFTWARE | INF/01 | LEZIONI | 48 |
|
Lo studente che completerà con successo il corso:
- avrà la possibilità di utilizzare moderni strumenti e ambienti per l'analisi,
la progettazione e la verifica dei sistemi software;
- sarà in grado di dimostrare una solida conoscenza di molte tecniche di
modellazione ampiamente utilizzate nello sviluppo del software;
- avrà le competenze per iniziare a lavorare in un ambiente cooperativo.
The student who succesfully complete the course: -- will have the ability to use modern popular tools and environments for the analysus, design and verification of software systems; -- wil be able to demonstrate a solid knowledge of many modelling techniques that are widely used in software development; -- will have the skills to start working in a cooperative environment.
Esame scritto e orale, durante COVID progetto e orale
Methods:
- Final written exam
- Final oral exam
Lo studente sarà in grado di realizzare e documentare un progetto sw
Esame scritto e orale, durante COVID progetto e orale
Lo studente potrà saper gestire responsabilità di conduzione di un team di progetto.
Esame orale
Programmazione OO
Attività didattiche:
Frequentando lezioni
Partecipazione alle discussioni
Studio individuale
Presenza: consigliato
Metodi di insegnamento:
lezioni
Delivery: face to face
Learning activities:
- attending lectures
- participation in discussions
- individual study
Attendance: Advised
Teaching methods:
- Lectures
La parte iniziale fornisce motivazioni per il resto: discutiamo i problemi che si verificano nella produzione del software e nei modelli di ciclo di vita. La maggior parte è dedicata alla modellazione del prodotto software in UML, presentando i principali tipi di modelli per ciascuna attività: domini e requisiti, analisi architettoniche e dettagliate, sia dal punto di vista statico (strutturale) sia dal punto di vista dinamico (comportamentale). Infine, presentiamo le tecniche di progettazione per la verifica del software.
The initial part provides motivations for the rest: we discuss the problems occuring in software production and the life-cycle models. The largest part is devoted to modelling the software product in UML, presenting the most important model kinds per each activity: domain and requirements analyis, architectural and detailed design, both from the static (structural) and the dynamic (behavioural) viewpoint. Finally, we present the design techniques for software verification.
Disponibili in buona parte online alla pagina didawiki del corso
- Lucidi delle lezioni
- Object Oriented and Classical Software Engineering, Stephen R.Schach, Fifth edition, McGraw Hill, Capitoli: 1-3-10
- Object-Oriented Software Engineering, David C. Kung, Capitolo 2
- UML@Classroom, Martina Seidl, Marion Scholz, Christian Huemer, Gerti Kappel, Springer Verlag, 2015. Disponibile per gli studenti di unipi a questa pagina.
- Dispensa di architettura e progettazione di dettaglio.
- Capitoli: 1-2-9-10-11-12-16-17-18 del libro “Software Testing and Analysis: Process, Principles, and Techniques” di Mauro Pezzè e Michal Young, nella versione free che potete richiedere seguendo le istruzioni su Teams
J. Arlow, I. Neustadt, UML 2 e Unified Process, (seconda edizione italiana), McGraw-Hill, 2006. A. Binato, A. Fuggetta, L. Sfardini, Ingegneria del Software - Creatività e metodo, Addison Wesley, 2006. L. Semini, Architetture software (quarta edizione). Nota didattica, 2009. V. Ambriola, C. Montangero, L. Semini. Esercizi di Ingegneria del Software (quarta edizione). Nota didattica: 2009. C. Montangero, L. Semini (a cura di). Il controllo del Software - verifica e validazione, Nota didattica, 2008.
- L'esame è composto da una prova scritta ed una prova orale.
- La prova scritta consiste in:
alcune domande o esercizi da risolvere su un caso di studio, si svolge in un'aula normale, dura 2 ore, rimane valida per la sessione d'appello in corso. - La prova scritta è superata superata se:
la totalità degli esercizi sarà stata svota in modo sufficiente, o comunque se un eventuale esercizio non svolti sarà compensato dagli altri, svolti in modo buono o ottimo - La prova orale consiste in:
un colloquio tra il candidato e il docente. - La prova orale è superata se:
il candidato dimostra una buona comprensione dei temi del corso.
Durante COVID: istruzioni alla pagina didawiki
http://didawiki.cli.di.unipi.it/doku.php/informatica/is-a/start