UNIVERSITÀ DEGLI STUDI DEL MOLISE Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Informatica Relatore Prof. Fausto Fasano Candidato Nicola Del Gobbo 118360 Generazione automatica delle checklist di ispezione tramite user profiling
43
Embed
Automatic generation of inspection checklist by user profiling
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
UNIVERSITÀ DEGLI STUDI DEL MOLISE
Facoltà di Scienze Matematiche, Fisiche e NaturaliCorso di Laurea in Informatica
Relatore Prof. Fausto Fasano
CandidatoNicola Del Gobbo
118360
Generazione automatica delle checklist di ispezione tramite user profiling
2Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Il processo di sviluppo software
• Attività strutturali.
• Attività di supporto (“ombrello”).
Processo di sviluppo software
Attività strutturali
Attività “ombrello” Ispezioni software
3Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Le ispezioni software
• Processo altamente rigoroso introdotto da Michael
Fagan nel 1976.
• Scopo: identificare i difetti e verificare che l’artefatto
abbia determinate caratteristiche.
4Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Una nuova idea: la Pre Ispezione
Creazione dell’artefatto
softwarePre Ispezione
Ispezione dell’artefatto
software
5Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Le fasi della Pre Ispezione
Data Collection Profiling Selection Checklist
GenerationLight
Inspection
6Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Pre Ispezione: Data Collection
Data Collection Profiling Selection Checklist
GenerationLight
Inspection
7Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Pre Ispezione: Profiling
Data Collection Profiling Selection Checklist
GenerationLight
Inspection
8Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Pre Ispezione: Selection
Data Collection Profiling Selection Checklist
GenerationLight
Inspection
9Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Pre Ispezione: Checklist Generation
Data Collection Profiling Selection Checklist
GenerationLight
Inspection
10Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Pre Ispezione: Light Inspection
Data Collection Profiling Selection Checklist
GenerationLight
Inspection
11Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
EPit: un tool per il processo di Pre Ispezione
• Deve supportare in pieno tutte le fasi della Pre Ispezione.
• Nell’ambito delle ispezioni si occupa del code inspection.
• Artefatto: codice sorgente di tipo Java.
• EPit (Eclipse Pre Inspection Tool) plug-in dell’IDE Eclipse.
12Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Profilo di un programmatore
Numero di errori presente
Tipo di errore
Layout
Bugs generati
13Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Data Mining: una visione generale sul processo
Dati grezzi Dati aggregati e puliti
Dati trasformati
Classificazione e validazione
14Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Learning model scelti(1)
• Problema di classificazione.
• Principio guida: “Simplicity First”.
• Sperimentazioni.
Naïve Bayes Decision tree Bayesian network
15Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
Learning model scelti(2)
Risultati della tenfold cross-validation
Risultati della threefold cross-validation
16Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
EPit: data mining al lavoro(1)
Version Control System
Bug Track System
Software Inspection System
Elenco di risorse (codice sorgente) e bug associati
CVS – Git – SVN
Bugzilla – JIRA
SmartBear
17Generazione automatica delle checklist di ispezione tramite user profiling – Nicola Del Gobbo
EPit: data mining al lavoro(2)
Elenco di risorse (codice sorgente) e bug associati