Source: https://www.math.unipd.it/~tullio/IS-1/2019/
Timestamp: 2020-04-03 20:34:24+00:00

Document:
Ingegneria del Software - Manifesto a.a. 2019/2020
Università di Padova, a.a. 2019/2020
Ultimo aggiornamento: 9 febbraio 2020, ore 12:40
[pubblicata composizione gruppi II lotto
(per dettagli, si veda la bacheca dell'insegnamento nella piattaforma Moodle)]
documento collaborativo per la formazione dei gruppi
Scadenza tassativa di registrazione studenti nel documento collaborativo:
I lotto: 3 novembre 2018, ore 18
II lotto: 29 febbraio 2020, ore 18
L'insegnamento di Ingegneria del Software si sviluppa su due semestri, collocando la maggior parte della didattica d'aula all'interno del I semestre, e la parte prevalente delle attività pratiche nel II semestre.
L'insegnamento si propone di fornire agli studenti i principali strumenti metodologici per affrontare un impegnativo progetto didattico di sviluppo software da svolgersi in gruppo, secondo metodi professionali di conduzione e di gestione del rapporto cliente-fornitore.
L'insegnamento si concentra sull'illustrazione e la sistematizzazione delle conoscenze essenziali della disciplina detta Software Engineering. A tal fine, il corso illustra ciascuna delle aree di conoscenza rilevanti nell'ambito, correlandovi le regole metodologiche che gli studenti dovranno seguire nello svolgimento del progetto didattico, la cui realizzazione effettiva inizierà intorno a fine novembre, per poi proseguire nel II semestre.
08 novembre: il docente pubblicherà alcuni capitolati d'appalto per la realizzazione di specifici prodotti software, ciascuno dei quali farà capo a un proponente esterno (aziende, organizzazioni, enti) e implicherà l'uso di tecnologie avanzate e innovative. Il docente agirà come il committente del corrispondente appalto.
15 novembre: presentazione e discussione dei capitolati (in aula).
in date da definire tra il 18 novembre e il 6 dicembre 2019: seminari di presentazione di alcune delle tecnologie centrali rispetto ai capitolati proposti
14 gennaio 2020: consegna dell'offerta tecnico-economica predisposta da ciascun gruppo di progetto che si sarà nel frattempo formato
21 gennaio: presentazione pubblica delle proposte e decisione sulle aggiudicazioni (ammissione al progetto).
Lo svolgimento del progetto didattico verrà accompagnato da specifiche revisioni di avanzamento di progetto, secondo la prassi adottata in diversi standard internazionali.
Per poter concludere regolarmente il proprio progetto didattico, ogni gruppo dovrà sostenere e superare tre successive revisioni di avanzamento, l'ultima delle quali includerà il collaudo del prodotto sviluppato. Ogni gruppo fornitore potrà collocare liberamente la propria serie di revisioni di avanzamento nelle date di calendario sotto riportate:
09 marzo 2020: consegna materiale in ingresso alla revisione di avanzamento di progetto
16 marzo: revisione di avanzamento
13 aprile: consegna materiale in ingresso alla revisione di avanzamento di progetto
20 aprile: revisione di avanzamento [e I appello scritto individuale]
11 maggio: consegna materiale in ingresso alla revisione di avanzamento di progetto
18 maggio: revisione di avanzamento [e II appello scritto individuale]
11 giugno: consegna materiale in ingresso alla revisione di avanzamento di progetto
18 giugno: revisione di avanzamento [e III appello scritto individuale]
13 luglio: consegna materiale in ingresso alla revisione di avanzamento di progetto
20 luglio: revisione di avanzamento [e IV appello scritto individuale]
24 agosto: revisione di avanzamento [e V appello scritto individuale]
13 settembre: consegna materiale in ingresso alla revisione di accettazione
14 settembre: ultima convocazione revisione di accettazione (collaudo finale) e [VI appello scritto individuale].
L'accettazione finale del prodotto sviluppato da ciascun gruppo nel progetto didattico soddisferà una delle due condizioni necessarie al superamento dell'esame. L'altra condizione richiede il superamento di una prova scritta individuale, che ciascuno studente potrà sostenere nelle date sopra indicate. Per ogni studente partecipante, la valutazione numerica del progetto didattico varrà il 60% del voto complessivo individuale, determinato dalla media pesata della valutazione conseguita dal proprio gruppo di progetto in ognuna delle tre revisioni di avanzamento, con una quota di ponderazione legata al rapporto tra l'impegno medio atteso e l'impegno effettivo erogato dallo studente. Il rimanente 40% verrà determinato dalla valutazione della prova scritta individuale.
L'intero svolgimento dell'insegnamento Ingegneria del Software ha un "peso" di 13 CFU, ripartiti come segue:
6 CFU (48 ore d'aula) di lezioni frontali di teoria, tutte collocate nel I semestre
3 CFU (24 ore d'aula) di lezioni frontali ed esercitazioni di pratica, ripartite tra I e II semestre
4 CFU dedicati interamente allo svolgimento del progetto, per un impegno individuale di circa 100 ore produttive, unite a ulteriori 150 ore circa (associate ai 9 CFU di cui sopra) per lo studio di teoria, pratica e l'auto-apprendimento di tecnologie.
IEEE Computer Society. Software Engineering Coordinating Committee (V3 2014)
Vardanega Introduzione
Per approfondire #2: ACM Code of Ethics
Processi di ciclo di vita del software
§8 §2
3 14 ottobre T4 Vardanega
Per approfondire #5: I modelli agili
Per approfondire #6: Le schede SEMAT (1, 2)
Per approfondire #7: Rapporto dello Standish Group sul Progetto CHAOS
Per approfondire #8: Barry W. Bohem su 40 anni di modelli di stima dei costi software
Per approfondire #9: Gestione delle persone
Per approfondire #10: Diagrammi Gantt e PERT
Per approfondire #11: Modello di descrizione di Work Package
§7,12 §19,20
21 ottobre FC1 Vardanega Flipped classroom sul tema Amministrazione di progetto
Studio autonomo e discussione in aula di strumenti di (1) versionamento, (2) configurazione, (3) pianificazione, (4)
Per approfondire #12: Strumenti di collaborazione
§6 §22
24 ottobre T8 Vardanega Analisi dei requisiti
Per approfondire #13: Struttura del documento di specifica dei requisiti secondo IEEE 830-1998
(accessibile entro rete Ateneo) §1 §4
25 ottobre T9 Vardanega
28 ottobre E1 Cardin UML
31 ottobre T10 Vardanega Progettazione
Per approfondire #14: Fan-in e fan-out
Per approfondire #15: Definizioni di architettura software
Per approfondire #16: Christopher Alexander sulla teoria dei pattern §2-3 §6-7
E2 Cardin
7 novembre T11 Vardanega Continuazione lezione T10
(8:30-10:15) E3 Cardin
11 novembre E4 Cardin Rivisitazione dei principi OOP
Per approfondire #17-18: dal blog di R. Cardin
14 novembre P1 Vardanega Regolamento del progetto didattico
Regolamento aggiudicazione capitolati
(16:30-18:00) P2 Vardanega Formazione dei gruppi I lotto
15 novembre P3
Presentazione dei capitolati d'appalto
18 novembre E5 Cardin Dipendenza: il distruttore dell'OOP
Per approfondire #19: dal blog di R.Cardin (parte 1, parte 2)
21 novembre T12 Vardanega
§10 §21
22 novembre FC2 Vardanega Flipped classroom sul tema documentazione
Studio autonomo, presentazione e discussione in aula di soluzioni per la scrittura collaborativa, la verifica, la salvaguardia di alcuni documenti di progetto.
Spunti di studio §8
(12:30-13:30) P4 imola
informatica Approfondimenti tecnologici sul capitolato C5 (Stalker)
25 novembre E6 Cardin Design pattern strutturali:
Decorator, Proxy, Facade, Adapter
(12:30-13:30
1AD100) P5 Zucchetti Approfondimenti tecnologici sul capitolato C4 (Predire in Grafana)
28 novembre T13 Vardanega Qualità di processo
Per approfondire #20: Elementi dello standard ISO 9000
Per approfondire #21: Sintesi di ISO IEC 90003:2004
29 novembre Conferenza sul tema: metriche di misurazione del software
1BC50) P6 teal.blue Approfondimenti tecnologici sul capitolato C3 (NaturalAPI)
E7 Cardin Design pattern creazionali:
Singleton, Builder, Abstract Factory
(12:30-13:30) P7 Zero12 Approfondimenti tecnologici sul capitolato C1 (Autonomous Highlights)
(08:30-10:30) FC3 Vardanega Flipped classroom sul tema Modelli di sviluppo avanzati
Studio autonomo, presentazione e discussione in aula di modelli di sviluppo agile, e di principi SEMAT
6 dicembre T14 Vardanega Verifica e validazione: introduzione
Per approfondire #22: Martin Fowler sui "test double"
Per approfondire #23: Fagan Inspection & Walkthrough
Per approfondire #24: Bertrand Meyer sul testing §5
(12:00-13:00) P8 Sanmarco Informatica Approfondimenti tecnologici sul capitolato C6 (ThiReMa)
6 dicembre (15:00-16:00
1BC45) P9 RedBabel Approfondimenti tecnologici sul capitolato C2 (Etherless)
Questionario valutazione didattica: restituzione 13 dicembre
Valutazione via Uniweb: 7 maggio - 18 luglio 2020
Design pattern comportamentali:
Observer, Template Method, Command, Strategy, Iterator
12 dicembre T15 Vardanega Verifica e validazione: analisi statica
13 dicembre T16 Vardanega Verifica e validazione: analisi dinamica
Per approfondire #25: Effetti indesiderabili del dynamic binding §4
(16:30-18:00) P10 Vardanega Incontro con i gruppi del I lotto
16 dicembre E9 Cardin
Design pattern architetturali:
E10 Cardin Recupero lezione E9
- Sul numero di versione
- Sul modello di sviluppo incrementale
9 gennaio T17
Vardanega Continuazione lezione 16
Vardanega Incontro informativo sugli stage curricolari
21 gennaio 2020 P11
ore 17:00 di martedì 14 gennaio 2020
Esito I convocazione RR
Il ricevimento studenti si tiene per appuntamento in studio #400 il:

References: §8
 §2

§7
 §19

§6
 §22
 §1
 §4
 §2
 §6

§10
 §21
 §8
 §5
 §4