SOFTWARE QUALITY EVALUATION

A.A. di erogazione 2020/2021
Insegnamento opzionale

Laurea Magistrale in INFORMATICA
 (A.A. 2020/2021)

Docenti

L'insegnamento è condiviso, tecnicamente "mutuato" con altri corsi di laurea, consultare il dettaglio nella sezione Mutuazioni
Anno di corso: 
1
Tipologia di insegnamento: 
Caratterizzante
Settore disciplinare: 
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI (ING-INF/05)
Lingua: 
Inglese
Crediti: 
6
Ciclo: 
Primo Semestre
Ore di attivita' frontale: 
48
Dettaglio ore: 
Lezione (48 ore)

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. A tale scopo gli studenti apprendono i fondamenti concettuali e le tecniche fondamentali di verifica, convalida e misura del prodotto finale software e dei relativi semilavorati.
Al termine di questo corso lo studente sarà in grado di
1. Definire piani di verifica e convalida del software durante la sua costruzione
2. Analizzare progetti software esistenti, in modo da poterli valutare e se necessario modificare
3. Applicare correttamente la misurazione per valutare sistemi software e predirne le qualità
4. Individuare i punti forti e i punti deboli delle varie proposte di tecniche di misura, valutazione e predizione delle qualità del software
5. Presentare con la corretta terminologia le caratteristiche delle misure del software e delle tecniche relative alla qualità
6. 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.

È 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.

Le lezioni riguarderanno i seguenti argomenti:
Introduzione alla qualità del software (2 h, tutti gli obiettivi formativi).
I modelli di qualità. Il modello di qualità ISO9126 (2 h, tutti gli obiettivi formativi).
Testing e debugging (8 h, obiettivi formativi 1, 2, 5 e 6).
Analisi e ispezione del software (8 h, obiettivi formativi 1, 2, 5 e 6).
Teoria della Misurazione e approcci assiomatici (4 h, obiettivi formativi 3, 4, 5 e 6).
Misure di prodotto (6 h, obiettivi formativi 3, 4, 5 e 6).
I Function Points (4 h, obiettivi formativi 3, 4, 5 e 6).
Il paradigma Goal/Question/Metric (4 h, obiettivi formativi 3, 4, 5 e 6).
Analisi quantitativa dei dati software con l'uso ti tecniche statistiche e di machine-learning (10 h, obiettivi formativi 3, 4, 5 e 6).

Lezioni per 48 ore.

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.
L'autonomia di giudizio verrà valutata grazie alle scelte effettuate nello svolgimento dell'esame scritto e nel progetto.
Il voto della prova scritta (o delle due prove in itinere) è espresso in trentesimi. Le risposte alle domande pesano complessivamente per il 40% nella formulazione del voto dello scritto, mentre gli esercizi determinano il restante 60%.
Il voto finale, espresso in trentesimi, è 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 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).

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. 2019/2020

Anno di corso: 2
Curriculum: GENERICO

A.A. 2018/2019

Anno di corso: 1
Curriculum: GENERICO