= Sviluppo software in gruppi di lavoro complessi = == Gli obiettivi del corso == Il corso (6CFU) presenta gli aspetti più organizzativi dello sviluppo software, ma mira a formare figure professionali che contribuiscono allo sviluppo, più che alla pura gestione dei progetti. Verranno trattati i seguenti argomenti: 1. Cenni ai modelli organizzativi di sviluppo (cattedrale, bazaar, kibbutz, gruppi di lavoro "agili") 1. Il supporto fornito dai tool di configuration management e versioning 1. Continuous integration & delivery 1. !DevOps 1. Documentazione e specifica mirata al lavoro collaborativo (Design By Contract) === Modalità d'esame === L'esame consiste in una prova in laboratorio e una prova orale. [[PageOutline]] == A.A. 2016/17 == * [https://calendar.google.com/calendar/embed?src=im3m7e84t10gqkl7dmqcjbole4%40group.calendar.google.com&ctz=Europe/Rome Calendario lezioni ed esami] * [http://easystaff.divsi.unimi.it/EasyCourse//Orario/Dipartimento_di_Informatica_-_Milano/2016-2017/98/Docenti/MongaMattia_16197.html Orario ufficiale] Le registrazioni sono fornite '''a uso esclusivo degli studenti del corso''' e possono essere utilizzate solo per lo studio personale. Per accedere occorre usare la username ''studente'', la password è il titolo del primo capitolo di "The Mythical Man-Month". === 1. 28 settembre 2016 (Beta) === ==== Introduzione * [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo00.pdf Slide] -- [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo00-handout.pdf Slide (versione per la stampa)] * [https://mmonga.typeform.com/to/jEE7zo Questionario] * [https://www.computer.org/web/swebok/v3 Riferimento per la terminologia dell'ingegneria del software] * [https://archive.org/details/mythicalmanmonth00fred F. Brooks, The Mythical Man-Month] ('''lettura obbligatoria''') === 2. 29 settembre 2016 (Sigma) === ==== Cattedrali, bazaar, kibbutz * [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo01.pdf Slide] -- [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo01-handout.pdf Slide (versione per la stampa)] * [http://homes.di.unimi.it/~sisop/lucidi1617/video/svigruppo01.ogg Registrazione (124MB, OGG/Vorbis)] * [http://www.jus.uio.no/sisu/the_cathedral_and_the_bazaar.eric_s_raymond/portrait.a5.pdf E. Raymond, The Cathedral and the Bazaar] ('''lettura obbligatoria''') * [https://homes.di.unimi.it/monga/lib/oss-icse04.pdf M. Monga, From bazaar to kibbutz: how freedom deals with coherence in the Debian project] === 3. 5 ottobre 2016 (Beta) === ==== Metodi agili: introduzione * [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo02.pdf Slide] -- [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo02-handout.pdf Slide (versione per la stampa)] * [http://homes.di.unimi.it/~sisop/lucidi1617/video/svigruppo02.ogg Registrazione (109MB, OGG/Vorbis)] === 4. 6 ottobre 2016 (Alfa) === ==== Metodi agili: Scrum, XP * [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo03.pdf Slide] -- [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo03-handout.pdf Slide (versione per la stampa)] * [http://homes.di.unimi.it/~sisop/lucidi1617/video/svigruppo03.ogg Registrazione (118MB, OGG/Vorbis)] === 5. 12 ottobre 2016 (Beta) === ==== Software Configuration Management * [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo04.pdf Slide] -- [http://homes.di.unimi.it/~sisop/lucidi1617/svigruppo04-handout.pdf Slide (versione per la stampa)] === 6. 13 ottobre 2016 (Alfa) === == Materiali anni precedenti == * [https://www.reddit.com/r/unimi_svigruppo/wiki/index Gruppo Reddit (Resp. prof. Carlo Bellettini, occorre iscrizione al gruppo subreddit)]