==== Lezioni a.a. 19/20==== Le lezioni dei corsi A e B possono essere leggermente diverse: diversi modi di presentare il materiale (lucidi e/o lavagna), ritmo (un argomento anticipato o posticipato), però i lucidi di riferimento per i due corsi corsi sono gli stessi: - {{ :informatica:is-a:is_01_20.pdf |Introduzione al corso e presentazione del materiale didattico}} (Aggiornato 20/2, modifica su validità prove in itinere) - {{ :informatica:is-a:is_02_20.pdf |Modelli di ciclo di vita}} - {{ :informatica:is-a:is_03_20.pdf |Analisi dei requisiti}}. Materiale da consultare:{{ :informatica:is-a:houseofcars.pdf | House of Cars}} {{ :informatica:is-a:progetto_vasa.pdf |Vasa}}, {{ :informatica:is-a:pisamover.pdf |PisaMover}}, {{ :informatica:is-a:rebu.pdf |Rebu}}. Esempi di documenti dei requisiti di provenienza industriale: {{ :informatica:is-a:2006_-_eirene_sys.pdf |eirene sys}}, {{ :informatica:is-a:multimahjong.pdf |MultiMahjong}}, {{ :informatica:is-a:nasax38.pdf |Nasa's X-38 Fault Tolerant System Services}}. - Venerdì 28 febbraio, lezione a corsi uniti, orario 9-11, in aula magna del polo Fibonacci “fratelli Pontecorvo” (Matricolandosi): {{ :informatica:is-a:unipi_-_agile_fundamentals.pptx.pdf |lezione su Agile Fundamentals}}, tenuta da Davide Luca Roitero, Agile Transformation Leader in un'azienda italiana di grandissime dimensioni. - {{ :informatica:is-a:is_04_20_casid_uso.pdf |Introduzione a UML, Casi d'uso e narrative}} - {{ :informatica:is-a:is_04_20-esercasid_uso.pdf |Esercitazione Casi D'uso}} (Versione aggiornata al 10/3 ore 11,40) Corso B: versione che mi avete chiesto di caricare {{ :informatica:is-a:is_05_e1_20-esercitazionecasid_uso.pdf |qui}}, non guardate le soluzioni. (durante la lezione ho scambiato di posto un paio di lucidi e aggiunto dei soggetti dimenticati in una narrativa) - {{ :informatica:is-a:is_06_20.pdf| Classi e Oggetti}} (aggiornata al 16/3/2020) - {{ :informatica:is-a:esercitazioneclassi19-20stampabile.pdf |Esercitazione classi}} - {{ :informatica:is-a:is_08_20.pdf |Diagramma delle attivita'}} - {{ :informatica:is-a:is_09_e3_20_eserattivita.pdf |Esercitazione Diagramma attivita'}} (versione corretta dell'albergo dei fiori, aggiornato 31/3 ore 13) - {{ :informatica:is-a:is_10_20stati.pdf|Diagramma di Macchina a Stati}} - {{ :informatica:is-a:is_11_20_e4_esercitazionestati.pdf |Esercitazione Diagramma di Macchina a Stati}} - {{ :informatica:is-a:is_20_homework_attivitastati.pdf |Esercizi}} (Homework) su diagrammi di attività e diagrammi di macchina a stati --> {{ :informatica:is-a:is_09_e4_20_soluzionehomework_attivitastati.pdf |Soluzioni}} - {{ :informatica:is-a:is_12_20_diagrammisequenza.pdf |Diagrammi di sequenza}} - Esercizi sul caso di studio {{ :informatica:is-a:is_13_20_esercitazioneconcadinavigazione_chiuse_.pdf |Conca di navigazione}} (lezione (quasi) interattiva del corso B del 9/4) - {{ :informatica:is-a:esercitazioneperprimaverificasol.pdf |Esercitazione VASA}} - {{ :informatica:is-a:progetto_midterm_di_ingegneria_del_software.pdf |Progetto di MidTerm}} - {{ :informatica:is-a:is_14_20_progettazionedescriverearchitetturesw.pdf |Progettazione: Architetture software}} - {{ :informatica:is-a:is_15_20_principidiprogettazione.pdf |Progettazione: Principi di buona progettazione}} - {{ :informatica:is-a:is_19_esercitazioniarchitettureesoa.pdf |Esercitazione di Architetture e SOA}} (esteso 6/5) - {{ :informatica:is-a:is_20_20_progettazionedettagliostutturecomposite.pdf |Progettazione di dettaglio e diagrammi di struttura composita con esercitazione}} - {{ :informatica:is-a:is_21_20_introverificaevalidazione.pdf |Introduzione alla Verifica e Validazione}} - {{ :informatica:is-a:is_22_20_testing1.pdf |Verifica dinamica: progettazione delle prove parte 1}} - {{ :informatica:is-a:is_homework_testing.pdf |Homeworks}} (alcuni si riferiscono a tecniche che vedremo la prossima lezione) e {{ :informatica:is-a:is_homework_testing_con_soluzioni.pdf |soluzioni degli stessi}} - {{ :informatica:is-a:is_23_20_testing2.pdf |Verifica dinamica: progettazione delle prove parte 2}} (aggiornato 21/5 h11) - {{ :informatica:is-a:seminario_ion_testing_automation_and_methodologies.pdf |Seminario ION_Testing Automation and Methodologies}} -- Come anticipato a lezione, ci saranno altri seminari da parte di aziende. Il **30 aprile ore 14** e il **14 maggio, sempre ore 14**, ci saranno due seminari da parte di **Ion Trading** su **"software architecture refactoring"** e **"testing"**, rispettivamente. Saranno a corsi (A e B) uniti. A tal fine creeremo un team apposta, di cui pubblicheremo il link nei team dei singoli corsi === Modalità di esame sessione estiva a.a. 2019-2020 === Causa COVID e impossibilità di fare esami in presenza, le modalità di esame per la sessione estiva a.a. 2019-2020 cambiano. Per superare l'esame dovrà essere realizzato un progetto fatto in gruppo (avrete un progetto per appello e 5 giorni per realizzarlo, max 5 persone per gruppo) e un orale. L'iscrizione sul portale esami deve essere fatta da chi intende sostenere la prova orale. **Attenzione alla scadenza che è stata anticipata per tutti i corsi**. Non è richiesta iscrizione per la sola consegna del progetto. I dettagli sulle modalità di consegna del progetto saranno indicati sul testo del progetto. Il testo del progetto sarà pubblicato su Teams e qui: {{ :informatica:is-a:una_cervecita_fresca_maggio2020.pdf |Progetto primo appello: Una cervecita fresca}} (non alle 9 del mattino, però ;-) ) {{ :informatica:is-a:attacco_la_kamchatka_giugno2020.pdf | Progetto secondo appello: Attacco la Kamchatka!}} (VERSIONE CORRETTA Aggiornato al 12 giugno ore 11.20) {{ :informatica:is-a:terzo_appello_2020_bike_unipi.pdf |Progetto terzo appello: bike UNIPI}} {{ :informatica:is-a:rockaway_beach.pdf |Progetto quarto appello: Rockaway Beach}} {{ :informatica:is-a:overlook_b_b.pdf | Progetto appello starordinario autunno 2020: Overlook B&B}} Ricordo che l'appello straordinario è riservato ad alcune categorie di studenti, e non si accettano studenti non regolarmente iscritti {{ :informatica:is-a:is_vi_appello_gennaio2021_fly_away.pdf |Progetto sesto appello: Fly away}} {{ :informatica:is-a:ansa.pdf |Progetto settimo appello: ANSA}} Lo studente Matteo Petrucci Corso A m.petrucci6@studenti.unipi.it cerca un gruppo con cui svolgere il progetto nel prossimo appello. Contattatelo. DETTAGLI IMPORTANTI * Un progetto sufficiente rimane tale per tutta la sessione estiva, quindi, per esempio, non è richiesto che tutti i membri di un gruppo facciano l'orale nello stesso appello. * Nella sessione estiva avete 3 occasioni di esame per quanto riguarda il progetto (se fallite per 2 volte il progetto, potete consegnarlo una terza volta), 2 per quanto riguarda l'orale (se bocciate o vi ritirate all'orale, anche se per un voto non gradito, potete ripeterlo solo un'altra volta nella sessione estiva). * Gli orali saranno individuali e verteranno sul progetto e sugli argomenti del corso. * Dopo la scadenza dell'iscrizione alla prova orale verranno stimati e poi pubblicati gli slot disponibili per fare gli orali. Gli studenti iscritti all'appello potranno prenotarsi per i singoli slot di esame. A tal fine verrà sero disponibile un file condiviso sul team dove * Se cambiate idea dovete cancellare l'iscrizione all'orale entro la scadenza della consegna del progetto, altrimenti, se non ci saranno validissimi motivi, verrà contato come occasione di esame persa (questo è necessario per motivi organizzativi). DATE IMPORTANTI: Sesto appello (inizio gennaio): Scadenza iscrizioni 03/01 ore 23:59 Pubblicazione testo progetto: 04/01 ore 9:00 Consegna progetti 08/01 ore 23:59 Orali non prima del 11/01 Settimo appello (fine gennaio): Scadenza iscrizioni 24/01 ore 23:59 Pubblicazione testo progetto: 25/1 ore 9:00 Consegna progetti 29/01 ore 23:59 Orali non prima del 01/02 DOTAZIONI INFORMATICHE NECESSARIE E REGOLE PER L'ESAME ORALE: Hardware: PC/Mac/tablet/smartphone munito di webcam e microfono che siano compatibili con il software per videoconferenze TEAMS Software: Se necessario, installare il software per videoconferenza indicato dal docente (TEAMS). Altro: Collegamento internet per consentire la videoconferenza. Divieto: E' vietato registrare le prove orali PER IL CORSO A: Team orali: "aula" CorsoA: Esami IS, codice pubblicato in nota nel portale Valutami e sul team delle lezioni. In tale team troverete il file iscrizioneSlotEOrali_NesimoAppello_CorsoA, per iscrivervi alle singole date (questo non vi esime dall'iscrizione sul sito valutami). ATTENZIONE: controllate dopo 5 minuti che non sappiamo come Teams gestisca accessi concorrenti ** Per quanto riguarda la prova orale, tenete a portata di mano foglio, penna e una copia (cartacea o elettronica) del vostro progetto e del progetto di midterm (se lo avete svolto e consegnato).** PER IL CORSO B: Team orali: "aula" ricevimento & esami ingegneria del software B, codice pubblicato in nota nel portale Valutami e sul team delle lezioni (non per farvi fare la caccia al tesoro, ma non qui perché didawiki non è protetto in lettura da credenziali e il codice dà accesso diretto). In tale team troverete il file iscrizioneSlotEOrali_NesimoAppello, per iscrivervi alle singole date (questo non vi esime dall'iscrizione sul sito valutami). ATTENZIONE: controllate dopo 5 minuti che non sappiamo come Teams gestisca accessi concorrenti ==== Materiale didattico, in parte disponibile on line ==== - 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 [[https://link.springer.com/book/10.1007%2F978-3-319-12742-2 |questa pagina]]. - {{:informatica:is-a:architetture14.pdf|Dispensa di architettura e progettazione di dettaglio}}. - {{:informatica:is-a:dispensatesting2014.pdf|Dispensa sulla verifica}} - 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 ==== Materiale di riferimento/approfondimento, disponibile on line ==== - Durante il corso useremo Visual Paradigm (editor UML), E' disponibile free la Community Edition: https://www.visual-paradigm.com/download/community.jsp - Articolo [[https://spectrum.ieee.org/aerospace/aviation/how-the-boeing-737-max-disaster-looks-to-a-software-developer | How the Boeing 737 Max Disaster Looks to a Software Developer]] - [[http://ima.udg.edu/~sellares/EINF-ES2/uml2_diagrams.pdf|Riassunto di UML 2.0]] in 33 pagine illustrate, tutto quello che avreste sempre voluto sapere su UML e non avete mai osato chiedere. - {{ :informatica:is-a:dispensaesercizitesti.pdf |Testi di alcuni casi di studio per le esercitazioni}} - Handbook of Software Engineering, a cura di Sungdeok Cha, Richard N. Taylor, Kyochul Kang, Springer, 2019, Disponibile per gli studenti di unipi [[https://link.springer.com/content/pdf/10.1007%2F978-3-030-00262-6.pdf|alla pagina]]