Università degli studi dell'Insubria

VALUTAZIONE DELLA QUALITA' DEL SOFTWARE

A.A. di erogazione 2018/2019
Insegnamento opzionale

Laurea Magistrale in INFORMATICA
 (A.A. 2017/2018)
Anno di corso: 
2
Tipologia di insegnamento: 
Affine/Integrativa
Settore disciplinare: 
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI (ING-INF/05)
Crediti: 
6
Ciclo: 
Primo Semestre
Ore di attivita' frontale: 
48
Dettaglio ore: 
Lezione (48 ore)

Il corso illustra gli elementi concettuali e applicativi più importanti a riguardo della verifica, convalida, valutazione, stima e predizione della qualità di sistemi software. L'obiettivo primario è quello di fornire agli studenti le conoscenze necessarie alla definizione di piani di verifica, convalida e misura della qualità e alla loro introduzione in ambienti industriali. Gli studenti acquisiscono inoltre la capacità di analizzare progetti software esistenti, in modo da poterli valutare e se necessario modificare. Infine, gli studenti sviluppano la capacità di individuare i punti forti e i punti deboli delle varie proposte di tecniche di misura, valutazione e predizione delle qualità del software.
Al termine di questo corso lo studente:
- conosce i fondamenti concettuali della verifica e convalida del software;
- conosce le tecniche fondamentali di verifica e convalida del software;
- conosce i fondamenti concettuali della valutazione del software;
- conosce le misure e le tecniche di misurazione più rilevanti;
- è in grado di applicare correttamente la misurazione per valutare sistemi software e predirne le qualità.

Al termine del corso lo studente possiede le conoscenze e le capacità di comprensione necessarie per saper analizzare un sistema software dal punto di vista delle sue qualità e saper discernere le tecniche e misure concettualmente più rigorose.

Al termine del corso lo studente è in grado di applicare sia i principi generali della verifica, validazione e misura del software sia specifiche tecniche ed è inoltre in grado di introdurre programmi di misura in organizzazioni software anche complesse.

Al termine del corso lo studente ha sufficienti conoscenze per poter valutare la qualità del software e ben fondare il proprio giudizio a riguardo delle tecniche di misura esistenti, che non sono tutte né con solide basi teoriche, né di facile applicabilità, né di provata utilità pratica, e pertanto scegliere quali siano effettivamente rispondenti agli obiettivi degli specifici casi applicativi.

Al termine del corso lo studente è in grado di presentare con la corretta terminologia le caratteristiche delle misure del software e delle tecniche relative alla qualità. Inoltre è in grado di saper recepire e interpretare indicazioni provenienti dagli sviluppatori per poi poter illustrare loro in maniera compiuta un piano di misurazione e valutazione della qualità che sia rispondente alle loro richieste.

Prerequisiti: 

È richiesta la conoscenza dei prodotti e semilavorati prodotti durante la costruzione del software, che viene insegnata durante il corso delle Lauree Triennali in discipline informatiche.
È opportuna una buona conoscenza della lingua inglese scritta e parlata, che permetta la comprensione del materiale fornito dal docente, di quello disponibile in rete e dei testi di riferimento, oltre che delle lezioni, che sono tenute in inglese.

L'acquisizione delle diverse conoscenze ed abilita` attese si sviluppera` in modo parallelo lungo tutto l'insegnamento, in cui verranno trattati gli argomenti descritti nel seguito.

Introduzione alla qualità del software: lezioni 2 ore.
I modelli di qualità. Il modello di qualità ISO9126: lezioni 2 ore.
Testing e debugging: lezioni 6 ore.
Analisi e ispezione del software: lezioni 4 ore.
Teoria della Misurazione: lezioni 4 ore.
Gli approcci assiomatici: lezioni 4 ore.
Misure di prodotto: lezioni 6 ore.
I Function Points: lezioni 6 ore.
Il paradigma Goal/Question/Metric: lezioni 6 ore.
Tecniche di analisi dei dati: lezioni 8 ore.

Lezioni per 48 ore.

Modalita' di verifica dell'apprendimento: 

Il grado di apprendimento viene verificato tramite una prova scritta della durata di 2 ore e lo sviluppo di un progetto, svolto in autonomia dallo studente. Durante il corso sono previste due prove parziali il cui superamento comporta l’esonero dalla prova scritta.

Lo scopo della prova scritta (e delle prove parziali) è quello di verificare l’apprendimento e la comprensione degli elementi relativi alla valutazione delle qualità del software dal punto di vista teorico e applicato (su problemi di non elevata complessità). Le prove scritte (come le prove parziali) consistono di:

- esercizi per la verifica della comprensione e della conoscenza delle tecniche di verifica e convalida del software;
- esercizi per la verifica della comprensione e della conoscenza delle misure per i prodotti software;
- esercizi per la verifica della capacità di progettare piani di misura da utilizzare in ambienti industriali;
- domande per la verifica delle conoscenze degli aspetti più propriamente concettuali.

Lo scopo del progetto è di mettere alla prova le capacità e le conoscenze dello studente nella costruzione di modelli di stima delle qualità del software. La presentazione del progetto ha l’obiettivo di verificare le capacità comunicative sviluppate dallo studente, sia dal punto di vista tecnico e della terminologia sia dal punto di vista della capacità di saper trasmettere una visione completa e organizzata del lavoro effettuato.
Il voto della prova scritta (o delle due prove in itinere) è espresso in trentesimi, così come il voto del progetto. Il voto finale è determinato dal voto della prova scritta a cui viene applicata una variazione di al massimo tre punti derivante dalla valutazione del progetto.

Il materiale relativo agli argomenti del corso può essere trovato su

- lucidi (in inglese e in italiano) su https://elearning.uninsubria.it/

- materiale aggiuntivo su https://elearning.uninsubria.it/

- Pezzè M., Young M.: Software Testing And Analysis: Process, Principles And Techniques. Wiley 2007

- Fenton, N.E., Bieman, J., Software Metrics: A Rigorous and Practical Approach, CRC Press, 2014

- Juristo, N., Moreno, A.M., Basics of Software Engineering Experimentation, Kluwer 2001

Durante il periodo in cui si svolge il corso il docente riceve nei giorni in cui si tengono le lezioni. Al di fuori di tale periodo, su appuntamento (sandro.morasca@uninsubria.it).

clicca sulla scheda dell'attività mutataria per vedere ulteriori informazioni, quali il docente e testi descrittivi.

Cerchi il programma? Potrebbe non essere ancora stato caricato o riferirsi ad insegnamenti che verranno erogati in futuro.
Seleziona l‘anno in cui ti sei immatricolato e troverai le informazioni relative all'insegnamento del tuo piano di studio.

A.A. 2016/2017

Anno di corso: 1
Curriculum: GENERICO

A.A. 2015/2016

Anno di corso: 2
Curriculum: GENERICO