Ingegneria del software
(nuovo ordinamento, laurea specialistica, 2° anno)
Anno Accademico 2003-2004
Docente:
Maurizio Pizzonia
Assistenza al corso:
Valter Crescenzi
Periodo: 1 dicembre 2003 - 25 gennaio 2004
Registrazione studenti (obbligatoria)
La registrazione è scaduta il 4 dicembre 2003.
Gli studenti che non si sono registrati e intendono sostenere l'esame devono
contattare il docente.
Sintesi degli obiettivi del corso
L'obiettivo del corso è di fornire competenze pratiche su metodologie e
tecnologie informatiche e di supporto al lavoro di gruppo per progetti software di
dimensioni medie e grandi.
Il corso è basato sulla partecipazione attiva degli studenti a progetti
in cui si sperimentano metodologie e tecnologie, apprese a lezione o scelte dagli studenti perché
ritenute idonee al progetto.
Particolare enfasi è data alle tecnologie e metodologie orientate agli oggetti.
Materiale didattico
- Dispense del docente (scaricabili da questo sito)
- Gli studenti dovrebbero considerare inoltre le seguenti fonti da cui molti argomenti
del corso sono tratti per approfondimenti in base alle esigenze e agli interessi personali
- C. Larman, "Applying UML and Patterns". Prentice Hall.
Ottimo approccio didattico a Unified Process, modelli, analisi, progetto, patterns.
Moltissimi riferimenti ad altre metodologie e best practices.
- www.extremeprogramming.org
Un riferimento rapido ed economico per i principali aspetti di XP.
- K. Beck, "Extreme Programming Explained". Addison-Wesley.
Una introduzione informale a eXtreme Programming.
- J. Link, P. Fröhlich, "Unit Testing in Java". Morgan Kaufmann.
Moltissimi aspetti metodologici e tecnologici relativi al testing, non solo in Java.
- P. Kruchten, "Rational Unified Process - Introduzione". Addison-Wesley.
Unified Process in dettaglio.
- M. Fowler, K. Scott, "UML Distilled". Addison-Wesley.
Descrizione dettagliata di UML con interssanti note metodologiche.
- A. Shalloway, J. R. Trott, "Design Patterns Explained". Addison-Wesley.
I principali Design Patterns spiegati con un approcio didattico interessante.
- E. Gamma, R. Helm, R. Johnson, J. Vlissides, "Design Patterns". Addison-Wesley.
Il testo di riferimento per i Design Patterns. Fornisce un catalogo di Patterns. Molto tecnico.
- M. Fowler, "Refactoring". Addison-Wesley.
Il testo di riferimento per il refactoring. Fornisce un catalogo di Patterns. Molto tecnico.
Programma delle Lezioni
Gli argomenti con i link inattivi sono
da considerarsi indicativi e potrebbero cambiare durante lo svolgimento del
corso.
-
01/12/2003 Introduzione
-
02/12/2003 Metodologie waterfall, unified process, extreme programming
-
03/12/2003 CVS, progetti proposti
-
04/12/2003 Modelli ,
requisiti e use case,
esercizi su use case,
( template per use case)
-
05/12/2003 inception e rischi,
esercizio
(templates: vision,
development case,
formati,
glossario,
iteration plan,
requirements ranking,
risk list)
-
09/12/2003 Orientazione agli oggetti e Unified Modeling Language
-
10/12/2003 Introduzione al testing
-
11/12/2003 Object oriented analysis (OOA)
-
12-16/12/2003 Object oriented design (OOD)
-
17/12/2003 Esempio di OOD
-
18/12/2003 Rapporto sui progetti, GRASP
-
19/12/2003 Tecniche di testing
-
07/01/2004 GRASP, Generalizzazione e polimorfismo
-
08/01/2004 Generalizzazione e polimorfismo, Adapter
-
09/01/2004 Decorator, Observer
-
12/01/2004 MVC, supporto in java a MVC
-
13/01/2004 Rapporto sui progetti
-
14/01/2004 Refactoring
-
15/01/2004 Rapporto sui progetti
-
16/01/2004 MVC: esempio in java, (codice) altri design patterns
-
21-22/01/2004 Rapporto sui progetti
Newsgroup del corso
Per discussioni pubbliche tra gli studenti circa gli argomenti del corso
è attivo un newsgroup. Le coordinate sono le seguenti:
NNTP server: news.dia.uniroma3.it
newsgroup: dia.corsi.swe
Il newsgroup può essere acceduto
tramite un qualsiasi news reader (come ad esempio Netscape o Outlook Exchange)
la configurazione prevede di aggiungere un nuovo "news server" e quindi di
iscriversi al newsgroup di vostro interesse. Al momento l'accesso può
avvenire sia in lettura che in scrittura da qualisasi dominio. Gli studenti
possono quindi utilizzare il newsgroup anche via modem attraverso un qualsiasi
provider.
Esami e valutazione
La valutazione è si baserà sui seguenti criteri
- contributo dato allo svolgimento del progetto
e alla discussione sui problemi prgettuali e metodologici di volta in volta
posti
- prova relativa all'applicazione delle metodologie e delle
tecniche dell'ingegneria del software rispetto a uno o più
problemi.
- Prova del 10 febbraio 2004 e soluzione
Link a software utili per il corso
Pagina del Corso di Studio in Ingegneria Informatica
Questa pagina è mantenuta da Mauruizio Pizzonia