Corso Vittorio Emanuele II, 39 - Roma 0669207671

Ingegneria Informatica/Information and communication technologies engineering (with Helwan University) (Anno Accademico 2008-2009)

Ingegneria del Software


CFU: 5
Lingua contenuti:Inglese
Descrizione dell'insegnamento
L’ingegneria del software è un insieme di principi, tecniche e attività organizzate in un processo in cui un gruppo di tecnici sviluppano software che dovrà essere disponibile in piu’ versioni e configurazioni. Questo corso caratterizza l’ingegneria del software come disciplina, discute l’organizzazione di un processo di sviluppo e presenta principi, tecniche e attività fondamentali.
Prerequisiti
Conoscenza dei principi della programmazione e di uno o più linguaggi di programmazione. Esperienza pratica di sviluppo di semplici programmi e conoscenza di semplici ambienti di supporto allo sviluppo di software. Conoscenze informatiche di base.
Scopi
Introdurre lo studente ai principi e alle tecniche di ingegneria del software e metterlo in grado di affrontare il lavoro in un gruppo di sviluppo. Comprendere l’organizzazione di un processo di sviluppo software e i principali elementi del processo: gestione delle versioni, analisi e specifica dei requisiti, progetto e codifica, verifica e convalida.
Contenuti
Il processo di sviluppo del software: qualità del software, principi dell'ingegneria del software, il ciclo di vita e i processi agili. Il controllo di versioni e configurazioni. Analisi e specifica dei requisiti: specifiche e dominio, approcci informali e formali alla specifica. Progetto del software: design pattern e alcune classi di pattern principali. Attività di convalida e verifica: il processo di qualità, test funzionale, test combinatorio, test basato su modelli, test strutturale, ispezione di codice.
Testi
Carlo Ghezzi, Mehdi Jazayeri, Dino Mandrioli, Fundamentals of Software Engineering, Second Edition,2002 Paerson Ed. ISBN 0-13-305699-6. Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software. 1995, Addison-Wesley. ISBN 0-201-63361-2. Mauro Pezzè and Michal Young, Software Testing and Analysis: Process, Principles, and Techniques, 2008, John Wiley & Sons, ISBN-13: 978-0471455936
Esercitazioni
Gli studenti svolgeranno un progetto contestualmente allo svolgimento del corso. L’attività di progetto consisterà nell’applicazioni dei metodi e tecniche presentate nel corso ad un caso di studio concordato con i docenti. Le esercitazioni consisteranno nella verifica e discussione del materiale prodotto durante lo svolgimento del corso. A completamento delle discussioni possono essere forniti dal tutor esercizi addizionali da svolgere.
Docente/Tutor Responsabile insegnamento
Massimo Poncino
Docenti video
Prof. Mauro Pezzè - Università di Milano (Milano - Italy)
Elenco delle lezioni
    •  Lezione n. 1: Introduction  Vai alla lezione
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio
    •  Lezione n. 8: ArchiDesign I  Vai alla lezione
Marco Torchiano
Marco Torchiano
Marco Torchiano
Marco Torchiano
Marco Torchiano
Marco Torchiano
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio
    •  Lezione n. 19: System test  Vai alla lezione
Maurizio Morisio
Maurizio Morisio
    •  Lezione n. 21: PM - I  Vai alla lezione
Maurizio Morisio
    •  Lezione n. 22: PM - II  Vai alla lezione
Maurizio Morisio
    •  Lezione n. 23: PM - III  Vai alla lezione
Maurizio Morisio
Maurizio Morisio
Maurizio Morisio