Laurea magistrale in Informatica per la comunicazione (Università degli Studi di Milano)

Questo insegnamento introduce le tecniche basilari per la progettazione di sistemi software complessi.

Avvisi

Data Informazione
22/12/2011 Data e ora delle prove orali di Progettazione e gestione del software di gennaio 2012
Le prove orali dell'appello di gennaio si svolgeranno presso il Dipartimento di Scienze dell'Informazione secondo il calendario seguente: giovedì 12/01, 9:30, sala riunioni secondo piano; venerdì 27/01, 9:30, aula 6.
07/10/2011 Data e ora delle prove orali di Progettazione e gestione del software di ottobre 2011
Le prove orali dell'appello di ottobre si svolgeranno presso il Dipartimento di Scienze dell'Informazione secondo il calendario seguente: mercoledì 12/10, 14:30, aula 5; lunedì 24/10, 10:30, aula 6.
06/07/2011 Sospensione del ricevimento studenti
Il ricevimento studenti su base regolare è sospeso fino al prossimo semestre. Gli studenti possono contattare il docente per un ricevimento su appuntamento.
06/07/2011 Data e ora delle prove orali di Progettazione e gestione del software di luglio 2011
Le prove orali dell'appello di luglio si svolgeranno giovedì 14/7 alle ore 10:30 presso l'aula 6 del Dipartimento di Scienze dell'Informazione.
13/06/2011 Data e ora delle prove orali di Progettazione e gestione del software di giugno 2011
Le prove orali dell'appello di giugno si svolgeranno presso il Dipartimento di Scienze dell'Informazione secondo il calendario seguente: lunedì 20 giugno, ore 10:30 aula 6; giovedì 23 giugno, ore 10:30 sala riunioni secondo piano; venerdì 24 giugno, ore 10:30, aula 6.
06/05/2011 Valutazione dell'insegnamento di Progettazione e gestione del software
Nella parte iniziale della lezione di martedì 10/05 si svolgeranno le procedure relative alla valutazione della didattica
29/03/2011 Spostamento orario lezione di Progettazione e gestione del software del 14/4
La lezione del 14/4 di Progettazione e gestione del software inizierà alle ore 13:00.
24/03/2011 Annullamento lezione di Progettazione e gestione del software
La lezione del 4/4 di Progettazione e gestione del software è annullata.
15/02/2011 Inizio del secondo semestre
A seguito della delibera del CCD di Scienze e Tecnologie Informatiche l'inizio delle lezioni è stato anticipato al 7 marzo.

Lingua

Le lezioni sono in italiano.

Orari del corso

Le lezioni si svolgeranno presso il dipartimento di Scienze dell'Informazione, secondo il seguente orario:

Giorno Ora Luogo
martedì 9:30 - 11:30 aula alfa
giovedì 12:30 - 14:30 aula beta

Eventuali variazioni rispetto al calendario pianificato verranno comunicate in aula e pubblicizzate nel paragrafo Avvisi di questa pagina.

Ricevimento studenti

Su appuntamento (via e-mail). È possibile contattare il docente tramite posta elettronica, avendo cura di leggere preventivamente la guida predisposta dal Prof. Sebastiano Vigna e di specificare chiaramente nell'oggetto del messaggio il nome dell'insegnamento e l'anno accademico. In particolare, si invitano gli studenti a usare sempre come mittente l'indirizzo fornito loro dall'Ateneo (basato cioè sul dominio studenti.unimi.it) firmando con nome, cognome e matricola e ricordando che i tempi di risposta possono variare in funzione degli impegni del docente.

Materiale didattico

La parte di ingegneria del software fa riferimento al testo: Eric J. Braude, Michael E. Bernstein, Software Engineering -- Modern Approaches, Second Edition, Wiley, 2011 (ISBN 978-0-471-69208-9).

La parte sui design pattern è basata su: Eric Freeman, Elisabeth Freeman, Head First -- Design Patterns, O'Reilly, 2004 (ISBN 0-596-00712-4).

Le trattazione su SWT è presa dai tutorial che riguardano i widget di base e i dispositori predisposti dalla University of Manitoba. I più arditi possono cimentarsi con i widget avanzati.

Gli strumenti di sviluppo introdotti sono descritti nel tutorial su JUnit, nel capitolo 2 e nel capitolo 4 (fino al paragrafo «Advanced Merging» escluso) del volume Version Control with Subversion, nonché nei tutorial Hg Init e An Introduction to the UNIX Make Utility.

Programma

Il programma riguarda gli argomenti dettagliati nel calendario delle lezioni, che corrisponde al materiale trattato sul libro di testo all'interno dei capitoli da 1 a 9.

Calendario delle lezioni

Argomento
08/03/2011 Introduzione
15/03/2011 Strategy
22/03/2011 Progettazione orientata agli oggetti e test unitari
24/03/2011 Ciclo di vita del software
29/03/2011 Singleton e simple factory
31/03/2011 Interfacce grafiche
07/04/2011 UML
12/04/2011 UML
14/04/2011 Observer
19/04/2011 Change control e version control
28/04/2011 Tool di sviluppo
03/05/2011 Factory
05/05/2011 Template method
10/05/2011 Adapter
12/05/2011 Façade e decorator
17/05/2011 Command
19/05/2011 Iterator
24/05/2011 Composite
26/05/2011 Model-View-Controller
31/05/2011 Model-View-Controller
07/06/2011 State
09/06/2011 Altri pattern
14/06/2011 Esercizi riepilogativi
16/06/2011 GWT e Model-View-Presenter

Modalità d'esame

L'esame consiste in una prova orale.

Appelli d'esame

Sessione Data
giugno 20/06/2011
luglio 14/07/2011
settembre 19/09/2011
ottobre 12/10/2011
gennaio 12/01/2012
gennaio 27/01/2012