| INGEGNERIA DEL SOFTWARE II
(obiettivi)
OBIETTIVI FORMATIVI: L'insegnamento si propone di fornire le nozioni avanzate di ingegneria del software. Nello specifico, gli obiettivi formativi riguardano: o Metriche di processo e di prodotto o Come fare una presentazione o Testing: Integration Testing, Test Generation, Test Adequacy: Control an Data Flow, Test Adequacy: Mutation, Regression Testing o Machine Learning: terminologia, installazione di weka, utilizzo tramite GUI e API, rumore, selezione delle features, sampling, cost-sensitive calssification, metriche e tecniche di valutazione.
CONOSCENZA E CAPACITÀ DI COMPRENSIONE: Al termine del corso lo studente avrà acquisito i concetti fondamentali sulla qualità dei sistemi software con particolare riguardo alle tematiche di misurazione, testing e machine learning.
CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE: Al termine del corso lo studente avrà acquisito le metodologie per lo sviluppo di sistemi software di alta qualità.
AUTONOMIA DI GIUDIZIO: Al termine del corso lo studente sarà in grado di giudicare autonomamente la qualità dei sistemi software.
ABILITÀ COMUNICATIVE: Al termine del corso lo studente avrà acquisito padronanza della terminologia relativa alla qualità dei sistemi software.
CAPACITÀ DI APPRENDIMENTO: Al termine del corso lo studente avrà acquisito la capacità di intraprendere in autonomia ulteriori approfondimenti su argomenti attinenti la qualità dei sistemi software, e di utilizzare le conoscenze e metodologie imparate per affrontare nuovi problemi.
|
Canale Unico
|
Mutua da
|
8039920 INGEGNERIA DEL SOFTWARE II in Ingegneria Informatica LM-32 NESSUNA CANALIZZAZIONE DE ANGELIS GUGLIELMO, FALESSI DAVIDE
(programma)
• Introduzione al corso, ai progetti, alla valutaizone etc. • Introduction to SVN and GitHub + ML for SE • TD and SonarCloud • Software Testing – Intro and General Concepts • Measuring metrics in Git/JIRA • Software Testing - Test Automation e Continuos Testing • SZZ- Proportion and Snoring • "Software Testing – Maven, GitHub and CI Frameworks: Set-up • and Configurations" • Milestone 2: Building the dataset • Software Testing - Domain Partitioning for Test Generation - Part 1 • The promises and perils of mining GitHub • Introduction to ML: terminology • Software Testing - Domain Partitioning for Test Generation - Part 2 • Function Point (Dr. Buglione) • Software Testing – Unit and Integration Testing: Concepts • Using the WEKA GUI • "Accuracy Metrics & Comparing classifiers accuracy + Ven • Software Testing – Unit and Integration Testing: MVN plugins • Milestone 3: Using the WEKA API • Software Testing - Adequacy of the Tests: Control Flow Coverage Criteria and frameworks (Sonar, Jacoco, or possible alternatives as Cobertura or EMMA) • Feature Selection • Software Testing - Adequacy of the Tests: Data Flow Coverage Criteria and frameworks (BA-DUA) • Sampling • Cost sensitive classifier • "Milestone 4: On the combined effect of sampling and feature • selection techniques on classifiers accuracy" • Metriche, Misure e GQM+ • Software Testing - Adequacy of the Tests: Mutation • CMMI • Decision making techniques • "Software Testing - Adequacy of the Tests: Mutation Testing • Framework (PIT or muJava, the first one is integrated with Maven)" • Cost estimation + planning poker
 nessuno
|
|
Date di inizio e termine delle attività didattiche
|
- |
|
Modalità di erogazione
|
Tradizionale
|
|
Modalità di frequenza
|
Non obbligatoria
|
|
Metodi di valutazione
|
Prova orale
Valutazione di un progetto
|
|