INFORMATICA SPERIMENTALE Titolare del Corso Prof. Giovanni

INFORMATICA SPERIMENTALE
Titolare del Corso Prof. Giovanni Cantone, DISP
Corso integrativo Dr. Ing. Davide Falessi, PhD, DISP
Laboratorio Dott. Gianfranco Pesce, CCD (attività svolta a titolo volontario). Ing.
Alessandro D’Angio, Studente interno (attività svolta a titolo volontario). Ing. Stefano
Scarrone, Studente interno (attività svolta a titolo volontario).
Obiettivi del corso
Il corso si propone di fornire concetti, metodi, processi e tecniche sperimentali per
l’informatica e, in particolare, per l’ingegneria del software. Applicare il tutto a oggetti
(metodi, processi, tecnologie) già considerati in corsi precedenti, nonché al caso delle
tecnologie software a supporto dell’automazione e la reingegnerizzazione di processi
aziendali, preliminarmente introdotte. Oltre a lezioni, seminari ed esercitazioni in classe, il
corso prevede attività obbligatorie da svolgersi in laboratorio.
PROGRAMMA
Strategie empiriche. “Survey”, Casi di studio, Esperimenti controllati: empirismo e
paradigma sperimentale nel contesto dell’informatica e, in particolare, dell’ingegneria del
software. Misure software. Concetto di misura. Scale. Misure dirette e indirette. Misure
oggettive e soggettive. Approcci alla definizione di modelli di misura per il software. La
tecnica “Goal-Question-Metrics” (GQM). Ciclo di vita di un modello di misura. Il processo
sperimentale. Variabili, fattori, trattamenti, oggetti (caso semplice, processi caratteristici,
progetto pilota, progetti effettivi) e soggetti di un esperimento software. Le fasi di una
sperimentazione: Definizione – Pianificazione – Sviluppo - Analisi e interpretazione Presentazione e diffusione dei risultati. Richiami di Teoria dei fenomeni aleatori. Il ruolo
della statistica nella progettazione degli esperimenti e nell’analisi e interpretazione dei dati
sperimentali. Fondamenti di statistica descrittiva. Distribuzioni e loro tipi. Test statistici e
loro ambito di applicazione. Strumenti. Sperimentazione, apprendimento e relative
organizzazioni. Cicli di sperimentazione e “feedback”. La “Experience Factory” da
architettura per il “Quality Improvement Paradigm” a “Learning organization”. Laboratorio.
Requisiti equivalenti.
Pre-requisiti Statistica 2, Architettura, analisi, progettazione del software.
Modalità d'esame Presentazione fino ai test statistici e discussione dei risultati degli
esperimenti sviluppati dall’insieme degli studenti.
Testi Consigliati
• C. Wohlin, P. Runeson, M. Höst, M. C. Ohlsson, B. Regnell, and A. Wesslen,
“Experimental Software Engineering”, Kluwer Academics Publishers, Kluwer A. P., 2001
(//Springer 2005).
• G. Cantone, “Informatica Sperimentale”, Trasparenze, gennaio 2007,
http://www.uniroma2.it/didattica/ISP0607
• G. Cantone, P. Donzelli, G. Pesce, “Misure software: teoria, modelli e ciclo di vita”, in
Misure Software: Esperienze e Ricerche, Ed. Gufpi-Isma, Franco Angeli, 2006,
http://www.francoangeli.it/Ricerca/Scheda_Libro.asp?ID=13815&Tipo=Libro
Per consultazione:
• R. Conradi, A.I. Wang (eds), "Empirical methods and Studies in Software Engineering Experiences from ESERNET", Lecture Notes in Computer Science LNCS 2765, Springer
Verlag, Berlin Germany, 2003.
• N. Juristo, A. M. Moreno, “Basics of Software Engineering Experimentation”, Kluwer A.
P., 2001 (//Springer 2005).
• A. Endres, H.D. Rombach, "A Handbook of Software and Systems Engineering: Empirical
Observations, Laws and Theories", Harlow-Pearson Addison Wesley 2003.
• D. C. Montgomery, “Progettazione e analisi di esperimenti”, McGraw-Hill, 2005.
• G. Galati, G. Pavan, “Teoria dei fenomeni aleatori”, Vol. unico, TexMat, 2006.
• AA. VV., “Experimental Eng. Papers”, http://www.iese.fhg.de/network/ISERN/pub/