SlideShare uma empresa Scribd logo
1 de 54
Baixar para ler offline
Gerardo	
  
Canfora	
  
Andrea	
  De	
  
Lucia	
  
Massimiliano	
  
Di	
  Penta	
  
Rocco	
  
Oliveto	
  
Annibale
Panichella
Sebas<ano	
  
Panichella	
  
Multi-Objective Cross-Project
Defect Prediction
Bugs are everywhere…
Software Testing
Practical Constraints
Sofwtare
Quality
Money
Time
Defect Prediction
Spent more resources
on components most
likely to fail
Indicators of defects
Cached history
information
Kim	
  at	
  al.	
  
	
  ICSE	
  2007	
  
Change Metrics
Moset	
  at	
  al.	
  
	
  ICSE	
  2008.	
  
A metrics suite for
object oriented
design Chidamber	
  
at	
  al.	
  
TSE	
  	
  	
  1994	
  
Defect Prediction Methodology
Predic<ng	
  
Model	
  
	
  Project	
  
	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Defect Prediction Methodology
Predic<ng	
  
Model	
  
	
  Project	
  
	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Within Project
Defect Prediction Methodology
Predic<ng	
  
Model	
  
	
  Project	
  
	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Within Project
Issue: Size of the
Training Set
Defect Prediction Methodology
Predic<ng	
  
Model	
  
	
  Project	
  
	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Predic<ng	
  
Model	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Within Project
Issue: Size of the
Training Set
	
  Past	
  Projects	
  
	
  New	
  Project	
  
 Project	
  B	
  
	
  Project	
  A	
  
Defect Prediction Methodology
Predic<ng	
  
Model	
  
	
  Project	
  
	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Predic<ng	
  
Model	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Within Project
Cross-Project
Issue: Size of the
Training Set
 Project	
  B	
  
	
  Project	
  A	
  
Defect Prediction Methodology
Predic<ng	
  
Model	
  
	
  Project	
  
	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Predic<ng	
  
Model	
  
Test	
  Set	
  
Training	
  Set	
  
Defect
Prone
Class1 YES
Class2 YES
Class3 NO
… YES
ClassN …
Within Project
Cross-Project
Issue: Size of the
Training Set
Issue: The predicting
accuracy can be lower
Cost Effectiveness
1)  Cross-project does not
necessarily works worse than
within-project
2)  Better precision (accuracy)
does not mirror less
inspection cost
3)  Traditional predicting model:
logistic regression
Recaling the “imprecision” of Cross-
project Defect Prediction, Rahman	
   at	
   al.	
  
FSE	
  2012	
  
Cost Effectiveness: example
Class	
  A	
   Class	
  B	
   Class	
  C	
   Class	
  D	
  
Cost Effectiveness: example
Predicting model 1
Class	
  A	
   Class	
  B	
   Class	
  A	
   Class	
  C	
   Class	
  D	
  
100
LOC
10,000
LOC
100
LOC
100
LOC
100
LOC
Predicting model 2
Class	
  A	
   Class	
  B	
   Class	
  C	
   Class	
  D	
  
Cost Effectiveness: example
Predicting model 1
Class	
  A	
   Class	
  B	
   Class	
  A	
   Class	
  C	
   Class	
  D	
  
BUG	
  
BUG	
  
100
LOC
10,000
LOC
100
LOC
100
LOC
100
LOC
Predicting model 2
Class	
  A	
   Class	
  B	
   Class	
  C	
   Class	
  D	
  
Cost Effectiveness: example
Predicting model 1
Class	
  A	
   Class	
  B	
   Class	
  A	
   Class	
  C	
   Class	
  D	
  
BUG	
  
BUG	
  
100
LOC
10,000
LOC
100
LOC
100
LOC
100
LOC
Precision	
  =	
  50	
  %	
  
Cost	
  =10,100	
  LOC	
  
Predicting model 2
Class	
  A	
   Class	
  B	
   Class	
  C	
   Class	
  D	
  
Cost Effectiveness: an example
Predicting model 1
Class	
  A	
   Class	
  B	
   Class	
  A	
   Class	
  C	
   Class	
  D	
  
BUG	
  
BUG	
  
100
LOC
10,000
LOC
100
LOC
100
LOC
100
LOC
Precision	
  =	
  50	
  %	
  
Cost	
  =10,100	
  LOC	
  
Predicting model 2
Precision	
  =	
  33	
  %	
  
Cost	
  =	
  300	
  LOC	
  
Class	
  A	
   Class	
  B	
   Class	
  C	
   Class	
  D	
  
Class	
  A	
   Class	
  B	
   Class	
  C	
   Class	
  D	
  
Cost Effectiveness: an example
Predicting model 1
Class	
  A	
   Class	
  B	
   Class	
  A	
   Class	
  C	
   Class	
  D	
  
BUG	
  
BUG	
  
100
LOC
10,000
LOC
100
LOC
100
LOC
100
LOC
Predicting model 2
Precision does not mirrorthe inspection cost
All the existing predicting models work
on precision and not on cost
We need COST oriented models
Mul+-­‐objec+ve	
  	
  
Logis+c	
  Regression	
  
Building Predicting Model on Training Set
Training	
  Set	
  
P1 P2 …
Class1 m11 m12 …
Class2 m21 m22 …
Class3 m31 m32 …
Class4 … … …
… … … …
Logis<c	
  
Regression	
  
Pred.
C1 1
C2 1
C3 0
C4 1
… 0
Building Predicting Model on Training Set
Training	
  Set	
  
Logis<c	
  
Regression	
  
Pred.
C1 1
C2 1
C3 0
C4 1
… 0
Actual Val
C1 1
C2 0
C3 1
C4 1
… 0
P1 P2 …
Class1 m11 m12 …
Class2 m21 m22 …
Class3 m31 m32 …
Class4 … … …
… … … …
Building Predicting Model on Training Set
Training	
  Set	
  
Logis<c	
  
Regression	
  
Pred.
C1 1
C2 1
C3 0
C4 1
… 0
Actual Val
C1 1
C2 0
C3 1
C4 1
… 0
Comparison
P1 P2 …
Class1 m11 m12 …
Class2 m21 m22 …
Class3 m31 m32 …
Class4 … … …
… … … …
Building Predicting Model on Training Set
Training	
  Set	
  
Logis<c	
  
Regression	
  
Pred.
C1 1
C2 1
C3 0
C4 1
… 0
Actual Val
C1 1
C2 0
C3 1
C4 1
… 0
Comparison
P1 P2 …
Class1 m11 m12 …
Class2 m21 m22 …
Class3 m31 m32 …
Class4 … … …
… … … …
GOAL: minimazing the
predicting error
(PRECISION)
Building Predicting Model on Training Set
Training	
  Set	
  
Logis<c	
  
Regression	
  
Pred.
C1 1
C2 1
C3 0
C4 1
… 0
Actual Val
C1 1
C2 0
C3 1
C4 1
… 0
Comparison
P1 P2 …
Class1 m11 m12 …
Class2 m21 m22 …
Class3 m31 m32 …
Class4 … … …
… … … …
GOAL: minimazing the
predicting error
(PRECISION)
Multi-objective Logistic Regression
Pred.
1
0
…
1
0
LOC
100
95
…
110
10
*	
   =	
  
Cost
100
0
…
110
0
Ispection Cost = 210 LOC
Multi-objective Logistic Regression
Pred.
1
0
…
1
0
LOC
100
95
…
110
10
*	
   =	
  
Cost
100
0
…
110
0
Ispection Cost = 210 LOC
Pred.
1
0
…
1
0
Actual
Values
1
1
…
1
0
*	
   =	
  
#Bug
1
0
…
1
0
Effectiveness = 2 defects
Multi-objective Logistic Regression
⎪
⎩
⎪
⎨
⎧
⋅=
⋅=
∑
∑
i
ii
i
i
i
ActualPredessEffectiven
CostPredCostIspectionmin
max
Pred.
1
0
…
1
0
LOC
100
95
…
110
10
*	
   =	
  
Cost
100
0
…
110
0
Ispection Cost = 210 LOC
Pred.
1
0
…
1
0
Actual
Values
1
1
…
1
0
*	
   =	
  
#Bug
1
0
…
1
0
Effectiveness = 2 defects
Multi-objective Logistic Regression
⎪
⎩
⎪
⎨
⎧
⋅=
⋅=
∑
∑
i
ii
i
i
i
ActualedessEffectiven
CostPredCostIspection
Pr
min
max
Pred.
1
0
…
1
0
LOC
100
95
…
110
10
*	
   =	
  
Cost
100
0
…
110
0
Ispection Cost = 210 LOC
Pred.
1
0
…
1
0
Actual
Values
1
1
…
1
0
*	
   =	
  
#Bug
1
0
…
1
0
Effectiveness = 2 defects
a + b mi1 + c mi2 + …
Multi-objective Genetic Algorithm
⎪
⎩
⎪
⎨
⎧
⋅=
⋅=
∑
∑
i
ii
i
i
i
ActualedessEffectiven
CostPredCostIspection
Pr
min
max
.
1 e
e
Pred
+
=
a + b mi1 + c mi2 + …
Chromosome 	
  	
  	
  	
  (a, b,c , …)
Fitness Function
Multiple objectives are
optimized using Pareto
efficient approaches
Multi-objective Genetic Algorithm
Pareto Optimality: all solutionsthat are not dominated by anyother solutions form the Paretooptimal set.
Multiple otpimal solutions (models)
can be found
Cost
Effectiveness
The frontier allows to make a
well-informed decision that
balances the trade-offs
between the two objectives
Empirical Evaluation
Research Questions
RQ1: How does the multi-objective (MO)prediction perform,
compared to single-objective (SO) prediction
Research Questions
RQ1: How does the multi-objective (MO)prediction perform,
compared to single-objective (SO) prediction
Cross-project MO vs. cross-project SO
vs. within project SO
Research Questions
RQ2: How does the proposed approach perform, comparedto the local prediction approach by Menzie et al. ?
RQ1: How does the multi-objective (MO)prediction perform,
compared to single-objective (SO) prediction
Cross-project MO vs. cross-project SO
vs. within project SO
Research Questions
RQ2: How does the proposed approach perform, comparedto the local prediction approach by Menzie et al. ?
RQ1: How does the multi-objective (MO)prediction perform,
compared to single-objective (SO) prediction
Cross-project MO vs. cross-project SO
vs. within project SO
Cross-project MO vs. Local Prediction
Experiment outline
• 10 java projects from PROMISE datasetü 	
  different	
  sizes	
  
ü 	
  different	
  context	
  applica<on	
  
• 10 java projects from PROMISE datasetü 	
  different	
  sizes	
  
ü 	
  different	
  context	
  applica<on	
  
Experiment outline
• Cross-projects defect prediction:
ü Training	
  model	
  on	
  nine	
  projects	
  and	
  test	
  on	
  the	
  remaining	
  one	
  	
  
(10	
  <mes)	
  
RQ1	
  
• 10 java projects from PROMISE datasetü 	
  different	
  sizes	
  
ü 	
  different	
  context	
  applica<on	
  
Experiment outline
• Cross-projects defect prediction:
ü Training	
  model	
  on	
  nine	
  projects	
  and	
  test	
  on	
  the	
  remaining	
  one	
  	
  
(10	
  <mes)	
  
• Within project defect prediction:
ü 	
  10	
  cross-­‐folder	
  valida<on	
  
RQ1	
  
RQ1	
  
• 10 java projects from PROMISE datasetü 	
  different	
  sizes	
  
ü 	
  different	
  context	
  applica<on	
  
Experiment outline
• Cross-projects defect prediction:
ü Training	
  model	
  on	
  nine	
  projects	
  and	
  test	
  on	
  the	
  remaining	
  one	
  	
  
(10	
  <mes)	
  
• Within project defect prediction:
ü 	
  10	
  cross-­‐folder	
  valida<on	
  
• Local prediction:
ü 	
  	
  K-­‐means	
  clustering	
  algorithm	
  
ü 	
  Silhoue]e	
  Coefficient	
  
RQ1	
  
RQ1	
  
RQ2	
  
Results
Results
Log4jjEdit
Cross-project MO vs. Cross-project SO
0	
  
50	
  
100	
  
150	
  
200	
  
250	
  
300	
  
KLOC	
  
Cross-­‐project	
  SO	
   Cross	
  project	
  MO	
  
Cross-project MO vs. Cross-project SO
0	
  
50	
  
100	
  
150	
  
200	
  
250	
  
300	
  
KLOC	
  
Cross-­‐project	
  SO	
   Cross	
  project	
  MO	
  
The proposed multi-objective model
Outperform the single-objective one
Cross-project MO vs. Within-project SO
0	
  
50	
  
100	
  
150	
  
200	
  
250	
  
300	
  
350	
  
KLOC	
  
Within	
  project	
  SO	
   Cross	
  project	
  MO	
  
Cross-project MO vs. Within-project SO
0	
  
10	
  
20	
  
30	
  
40	
  
50	
  
60	
  
70	
  
80	
  
90	
  
100	
  
Precision	
  
Within	
  project	
  SO	
   Cross	
  project	
  MO	
  
Cross-project MO vs. Within-project SO
0	
  
10	
  
20	
  
30	
  
40	
  
50	
  
60	
  
70	
  
80	
  
90	
  
100	
  
Precision	
  
Within	
  project	
  SO	
   Cross	
  project	
  MO	
  
Cross-project prediction is worse than within-project
prediction in terms of PRECISION
Cross-project MO vs. Within-project SO
0	
  
10	
  
20	
  
30	
  
40	
  
50	
  
60	
  
70	
  
80	
  
90	
  
100	
  
Precision	
  
Within	
  project	
  SO	
   Cross	
  project	
  MO	
  
Cross-project prediction is worse than within-project
prediction in terms of PRECISION
But it is better than within-project predictors in term
of COST-EFFECTIVENESS
0	
  
50	
  
100	
  
150	
  
200	
  
250	
  
300	
  
KLOC	
  
Local	
  Predic<on	
   Cross	
  project	
  MO	
  
Cross-project MO vs. Local Prediction
0	
  
50	
  
100	
  
150	
  
200	
  
250	
  
300	
  
KLOC	
  
Local	
  Predic<on	
   Cross	
  project	
  MO	
  
Cross-project MO vs. Local Prediction
The multi-objective predictor outperforms the local
predictor.
Conclusions
Conclusions
Conclusions
Conclusions

Mais conteúdo relacionado

Mais procurados

A Survey on Automatic Software Evolution Techniques
A Survey on Automatic Software Evolution TechniquesA Survey on Automatic Software Evolution Techniques
A Survey on Automatic Software Evolution Techniques
Sung Kim
 
Finding latent code errors via machine learning over program ...
Finding latent code errors via machine learning over program ...Finding latent code errors via machine learning over program ...
Finding latent code errors via machine learning over program ...
butest
 
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Sung Kim
 
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
Ali Ouni
 
REMI: Defect Prediction for Efficient API Testing (

ESEC/FSE 2015, Industria...
REMI: Defect Prediction for Efficient API Testing (

ESEC/FSE 2015, Industria...REMI: Defect Prediction for Efficient API Testing (

ESEC/FSE 2015, Industria...
REMI: Defect Prediction for Efficient API Testing (

ESEC/FSE 2015, Industria...
Sung Kim
 
Final Exam Solutions Fall02
Final Exam Solutions Fall02Final Exam Solutions Fall02
Final Exam Solutions Fall02
Radu_Negulescu
 

Mais procurados (20)

A Survey on Automatic Software Evolution Techniques
A Survey on Automatic Software Evolution TechniquesA Survey on Automatic Software Evolution Techniques
A Survey on Automatic Software Evolution Techniques
 
Personalized Defect Prediction
Personalized Defect PredictionPersonalized Defect Prediction
Personalized Defect Prediction
 
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
 
Survey on Software Defect Prediction
Survey on Software Defect PredictionSurvey on Software Defect Prediction
Survey on Software Defect Prediction
 
Dissertation Defense
Dissertation DefenseDissertation Defense
Dissertation Defense
 
Finding latent code errors via machine learning over program ...
Finding latent code errors via machine learning over program ...Finding latent code errors via machine learning over program ...
Finding latent code errors via machine learning over program ...
 
Test Automation Maturity: A Self-Assessment Tool
Test Automation Maturity: A Self-Assessment ToolTest Automation Maturity: A Self-Assessment Tool
Test Automation Maturity: A Self-Assessment Tool
 
A Tale of Experiments on Bug Prediction
A Tale of Experiments on Bug PredictionA Tale of Experiments on Bug Prediction
A Tale of Experiments on Bug Prediction
 
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
 
Code coverage
Code coverageCode coverage
Code coverage
 
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
A Multi-Objective Refactoring Approach to Introduce Design Patterns and Fix A...
 
Specification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete ProgramsSpecification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete Programs
 
Analyzing Changes in Software Systems From ChangeDistiller to FMDiff
Analyzing Changes in Software Systems From ChangeDistiller to FMDiffAnalyzing Changes in Software Systems From ChangeDistiller to FMDiff
Analyzing Changes in Software Systems From ChangeDistiller to FMDiff
 
Transfer defect learning
Transfer defect learningTransfer defect learning
Transfer defect learning
 
Software testing: an introduction - 2017
Software testing: an introduction - 2017Software testing: an introduction - 2017
Software testing: an introduction - 2017
 
Software testing lab manual
Software testing lab manualSoftware testing lab manual
Software testing lab manual
 
REMI: Defect Prediction for Efficient API Testing (

ESEC/FSE 2015, Industria...
REMI: Defect Prediction for Efficient API Testing (

ESEC/FSE 2015, Industria...REMI: Defect Prediction for Efficient API Testing (

ESEC/FSE 2015, Industria...
REMI: Defect Prediction for Efficient API Testing (

ESEC/FSE 2015, Industria...
 
Final Exam Solutions Fall02
Final Exam Solutions Fall02Final Exam Solutions Fall02
Final Exam Solutions Fall02
 
Block 1 ms-034 unit-1
Block 1 ms-034 unit-1Block 1 ms-034 unit-1
Block 1 ms-034 unit-1
 
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...
 

Destaque (20)

Year 2014!
Year 2014!Year 2014!
Year 2014!
 
Agm gip icx
Agm   gip icxAgm   gip icx
Agm gip icx
 
The skeletal system
The skeletal systemThe skeletal system
The skeletal system
 
¿Por dónde se va?
¿Por dónde se va?¿Por dónde se va?
¿Por dónde se va?
 
The renaissance l cong review
The renaissance l cong reviewThe renaissance l cong review
The renaissance l cong review
 
State of national affairs
State of national affairsState of national affairs
State of national affairs
 
Best TM Award Application
Best TM Award ApplicationBest TM Award Application
Best TM Award Application
 
Fmp pitch
Fmp pitchFmp pitch
Fmp pitch
 
Com.epost.psf.sd
Com.epost.psf.sdCom.epost.psf.sd
Com.epost.psf.sd
 
O gcdp agm 2013
O gcdp agm 2013O gcdp agm 2013
O gcdp agm 2013
 
Bd er '13 august lcong review
Bd   er '13 august lcong reviewBd   er '13 august lcong review
Bd er '13 august lcong review
 
Trajectory
TrajectoryTrajectory
Trajectory
 
Mengenal jarkom
Mengenal jarkomMengenal jarkom
Mengenal jarkom
 
10 pertanyaan yang menyadarkan
10 pertanyaan yang menyadarkan10 pertanyaan yang menyadarkan
10 pertanyaan yang menyadarkan
 
GIS- How to Look for people
GIS- How to Look for peopleGIS- How to Look for people
GIS- How to Look for people
 
Evening plen presentation
Evening plen  presentationEvening plen  presentation
Evening plen presentation
 
Jeroen Kraan - CV in brief
Jeroen Kraan - CV in briefJeroen Kraan - CV in brief
Jeroen Kraan - CV in brief
 
¿Cómo eres? Part 2
¿Cómo eres? Part 2¿Cómo eres? Part 2
¿Cómo eres? Part 2
 
LinkedIn Publisher Offerings - InShare (April 2013)
LinkedIn Publisher Offerings - InShare (April 2013)LinkedIn Publisher Offerings - InShare (April 2013)
LinkedIn Publisher Offerings - InShare (April 2013)
 
Tutorial 5
Tutorial 5Tutorial 5
Tutorial 5
 

Semelhante a Multi-Objective Cross-Project Defect Prediction

Final Exam Questions Fall03
Final Exam Questions Fall03Final Exam Questions Fall03
Final Exam Questions Fall03
Radu_Negulescu
 
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
Ali Ouni
 
Software testing ari force institute of tech.
Software testing ari force institute of tech.Software testing ari force institute of tech.
Software testing ari force institute of tech.
Sanjith Ml
 
A Validation of Object-Oriented Design Metrics as Quality Indicators
A Validation of Object-Oriented Design Metrics as Quality IndicatorsA Validation of Object-Oriented Design Metrics as Quality Indicators
A Validation of Object-Oriented Design Metrics as Quality Indicators
vie_dels
 
PF_MAO_2010_Souam
PF_MAO_2010_SouamPF_MAO_2010_Souam
PF_MAO_2010_Souam
MDO_Lab
 

Semelhante a Multi-Objective Cross-Project Defect Prediction (20)

Multi-Objective Cross-Project Defect Prediction
Multi-Objective Cross-Project Defect PredictionMulti-Objective Cross-Project Defect Prediction
Multi-Objective Cross-Project Defect Prediction
 
16May_ICSE_MIP_APR_2023.pptx
16May_ICSE_MIP_APR_2023.pptx16May_ICSE_MIP_APR_2023.pptx
16May_ICSE_MIP_APR_2023.pptx
 
COCOMO methods for software size estimation
COCOMO methods for software size estimationCOCOMO methods for software size estimation
COCOMO methods for software size estimation
 
Cost estimation using cocomo model
Cost estimation using cocomo modelCost estimation using cocomo model
Cost estimation using cocomo model
 
Final Exam Questions Fall03
Final Exam Questions Fall03Final Exam Questions Fall03
Final Exam Questions Fall03
 
22316-2019-Summer-model-answer-paper.pdf
22316-2019-Summer-model-answer-paper.pdf22316-2019-Summer-model-answer-paper.pdf
22316-2019-Summer-model-answer-paper.pdf
 
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...The Use of Development History in Software Refactoring Using a Multi-Objectiv...
The Use of Development History in Software Refactoring Using a Multi-Objectiv...
 
Model-Driven Optimization: Generating Smart Mutation Operators for Multi-Obj...
 Model-Driven Optimization: Generating Smart Mutation Operators for Multi-Obj... Model-Driven Optimization: Generating Smart Mutation Operators for Multi-Obj...
Model-Driven Optimization: Generating Smart Mutation Operators for Multi-Obj...
 
OOAD - Ch.09 - Software Project Estimation.pptx
OOAD - Ch.09 - Software Project Estimation.pptxOOAD - Ch.09 - Software Project Estimation.pptx
OOAD - Ch.09 - Software Project Estimation.pptx
 
DO-178C OOT supplement: A user's perspective
DO-178C OOT supplement: A user's perspectiveDO-178C OOT supplement: A user's perspective
DO-178C OOT supplement: A user's perspective
 
COCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. MohiteCOCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. Mohite
 
Software testing ari force institute of tech.
Software testing ari force institute of tech.Software testing ari force institute of tech.
Software testing ari force institute of tech.
 
A Validation of Object-Oriented Design Metrics as Quality Indicators
A Validation of Object-Oriented Design Metrics as Quality IndicatorsA Validation of Object-Oriented Design Metrics as Quality Indicators
A Validation of Object-Oriented Design Metrics as Quality Indicators
 
Certification Study Group - Professional ML Engineer Session 3 (Machine Learn...
Certification Study Group - Professional ML Engineer Session 3 (Machine Learn...Certification Study Group - Professional ML Engineer Session 3 (Machine Learn...
Certification Study Group - Professional ML Engineer Session 3 (Machine Learn...
 
Mb 106 quantitative techniques 1
Mb 106 quantitative techniques 1Mb 106 quantitative techniques 1
Mb 106 quantitative techniques 1
 
modeling.ppt
modeling.pptmodeling.ppt
modeling.ppt
 
Leveraging the Option Value of Unconventional Resource Projects
Leveraging the Option Value of Unconventional Resource ProjectsLeveraging the Option Value of Unconventional Resource Projects
Leveraging the Option Value of Unconventional Resource Projects
 
PF_MAO_2010_Souam
PF_MAO_2010_SouamPF_MAO_2010_Souam
PF_MAO_2010_Souam
 
“Robust Object Detection Under Dataset Shifts,” a Presentation from Arm
“Robust Object Detection Under Dataset Shifts,” a Presentation from Arm“Robust Object Detection Under Dataset Shifts,” a Presentation from Arm
“Robust Object Detection Under Dataset Shifts,” a Presentation from Arm
 
1sqa25.pptx
1sqa25.pptx1sqa25.pptx
1sqa25.pptx
 

Mais de Sebastiano Panichella

Search-based Software Testing (SBST) '22
Search-based Software Testing (SBST) '22Search-based Software Testing (SBST) '22
Search-based Software Testing (SBST) '22
Sebastiano Panichella
 
NLBSE’22: Tool Competition
NLBSE’22: Tool CompetitionNLBSE’22: Tool Competition
NLBSE’22: Tool Competition
Sebastiano Panichella
 

Mais de Sebastiano Panichella (20)

The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software Engineering
 
Diversity-guided Search Exploration for Self-driving Cars Test Generation thr...
Diversity-guided Search Exploration for Self-driving Cars Test Generation thr...Diversity-guided Search Exploration for Self-driving Cars Test Generation thr...
Diversity-guided Search Exploration for Self-driving Cars Test Generation thr...
 
SBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation Track
 
SBFT Tool Competition 2024 - CPS-UAV Test Case Generation Track
SBFT Tool Competition 2024 - CPS-UAV Test Case Generation TrackSBFT Tool Competition 2024 - CPS-UAV Test Case Generation Track
SBFT Tool Competition 2024 - CPS-UAV Test Case Generation Track
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
 
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective ...
Testing with Fewer Resources:  Toward Adaptive Approaches for Cost-effective ...Testing with Fewer Resources:  Toward Adaptive Approaches for Cost-effective ...
Testing with Fewer Resources: Toward Adaptive Approaches for Cost-effective ...
 
COSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical SystemsCOSMOS: DevOps for Complex Cyber-physical Systems
COSMOS: DevOps for Complex Cyber-physical Systems
 
Testing and Development Challenges for Complex Cyber-Physical Systems: Insigh...
Testing and Development Challenges for Complex Cyber-Physical Systems: Insigh...Testing and Development Challenges for Complex Cyber-Physical Systems: Insigh...
Testing and Development Challenges for Complex Cyber-Physical Systems: Insigh...
 
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
An Empirical Characterization of Software Bugs in Open-Source Cyber-Physical ...
 
Automated Identification and Qualitative Characterization of Safety Concerns ...
Automated Identification and Qualitative Characterization of Safety Concerns ...Automated Identification and Qualitative Characterization of Safety Concerns ...
Automated Identification and Qualitative Characterization of Safety Concerns ...
 
The 2nd Intl. Workshop on NL-based Software Engineering
The 2nd Intl. Workshop on NL-based Software EngineeringThe 2nd Intl. Workshop on NL-based Software Engineering
The 2nd Intl. Workshop on NL-based Software Engineering
 
The 16th Intl. Workshop on Search-Based and Fuzz Testing
The 16th Intl. Workshop on Search-Based and Fuzz TestingThe 16th Intl. Workshop on Search-Based and Fuzz Testing
The 16th Intl. Workshop on Search-Based and Fuzz Testing
 
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...
Simulation-based Test Case Generation for Unmanned Aerial Vehicles in the Nei...
 
Exposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play AppsExposed! A case study on the vulnerability-proneness of Google Play Apps
Exposed! A case study on the vulnerability-proneness of Google Play Apps
 
Search-based Software Testing (SBST) '22
Search-based Software Testing (SBST) '22Search-based Software Testing (SBST) '22
Search-based Software Testing (SBST) '22
 
NL-based Software Engineering (NLBSE) '22
NL-based Software Engineering (NLBSE) '22NL-based Software Engineering (NLBSE) '22
NL-based Software Engineering (NLBSE) '22
 
NLBSE’22: Tool Competition
NLBSE’22: Tool CompetitionNLBSE’22: Tool Competition
NLBSE’22: Tool Competition
 
"An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.
 "An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.  "An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.
"An NLP-based Tool for Software Artifacts Analysis" at @ICSME2021.
 
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...An Empirical Investigation of Relevant Changes and Automation Needs in Modern...
An Empirical Investigation of Relevant Changes and Automation Needs in Modern...
 
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
 

Último

Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
ZurliaSoop
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
David Celestin
 
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven CuriosityUnlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Hung Le
 

Último (20)

Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar Training
 
Introduction to Artificial intelligence.
Introduction to Artificial intelligence.Introduction to Artificial intelligence.
Introduction to Artificial intelligence.
 
History of Morena Moshoeshoe birth death
History of Morena Moshoeshoe birth deathHistory of Morena Moshoeshoe birth death
History of Morena Moshoeshoe birth death
 
Lions New Portal from Narsimha Raju Dichpally 320D.pptx
Lions New Portal from Narsimha Raju Dichpally 320D.pptxLions New Portal from Narsimha Raju Dichpally 320D.pptx
Lions New Portal from Narsimha Raju Dichpally 320D.pptx
 
lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.
 
ICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdfICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdf
 
LITTLE ABOUT LESOTHO FROM THE TIME MOSHOESHOE THE FIRST WAS BORN
LITTLE ABOUT LESOTHO FROM THE TIME MOSHOESHOE THE FIRST WAS BORNLITTLE ABOUT LESOTHO FROM THE TIME MOSHOESHOE THE FIRST WAS BORN
LITTLE ABOUT LESOTHO FROM THE TIME MOSHOESHOE THE FIRST WAS BORN
 
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfSOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
 
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
Jual obat aborsi Jakarta 085657271886 Cytote pil telat bulan penggugur kandun...
 
Dreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video TreatmentDreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video Treatment
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
 
Dreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIIDreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio III
 
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven CuriosityUnlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
 
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfAWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
 
BEAUTIFUL PLACES TO VISIT IN LESOTHO.pptx
BEAUTIFUL PLACES TO VISIT IN LESOTHO.pptxBEAUTIFUL PLACES TO VISIT IN LESOTHO.pptx
BEAUTIFUL PLACES TO VISIT IN LESOTHO.pptx
 
in kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
in kuwait௹+918133066128....) @abortion pills for sale in Kuwait Cityin kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
in kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
 
Call Girls Near The Byke Suraj Plaza Mumbai »¡¡ 07506202331¡¡« R.K. Mumbai
Call Girls Near The Byke Suraj Plaza Mumbai »¡¡ 07506202331¡¡« R.K. MumbaiCall Girls Near The Byke Suraj Plaza Mumbai »¡¡ 07506202331¡¡« R.K. Mumbai
Call Girls Near The Byke Suraj Plaza Mumbai »¡¡ 07506202331¡¡« R.K. Mumbai
 
Digital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalDigital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of Drupal
 
Zone Chairperson Role and Responsibilities New updated.pptx
Zone Chairperson Role and Responsibilities New updated.pptxZone Chairperson Role and Responsibilities New updated.pptx
Zone Chairperson Role and Responsibilities New updated.pptx
 
My Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle BaileyMy Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle Bailey
 

Multi-Objective Cross-Project Defect Prediction

  • 1. Gerardo   Canfora   Andrea  De   Lucia   Massimiliano   Di  Penta   Rocco   Oliveto   Annibale Panichella Sebas<ano   Panichella   Multi-Objective Cross-Project Defect Prediction
  • 5. Defect Prediction Spent more resources on components most likely to fail
  • 6. Indicators of defects Cached history information Kim  at  al.    ICSE  2007   Change Metrics Moset  at  al.    ICSE  2008.   A metrics suite for object oriented design Chidamber   at  al.   TSE      1994  
  • 7. Defect Prediction Methodology Predic<ng   Model    Project     Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN …
  • 8. Defect Prediction Methodology Predic<ng   Model    Project     Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN … Within Project
  • 9. Defect Prediction Methodology Predic<ng   Model    Project     Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN … Within Project Issue: Size of the Training Set
  • 10. Defect Prediction Methodology Predic<ng   Model    Project     Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN … Predic<ng   Model   Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN … Within Project Issue: Size of the Training Set  Past  Projects    New  Project  
  • 11.  Project  B    Project  A   Defect Prediction Methodology Predic<ng   Model    Project     Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN … Predic<ng   Model   Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN … Within Project Cross-Project Issue: Size of the Training Set
  • 12.  Project  B    Project  A   Defect Prediction Methodology Predic<ng   Model    Project     Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN … Predic<ng   Model   Test  Set   Training  Set   Defect Prone Class1 YES Class2 YES Class3 NO … YES ClassN … Within Project Cross-Project Issue: Size of the Training Set Issue: The predicting accuracy can be lower
  • 13. Cost Effectiveness 1)  Cross-project does not necessarily works worse than within-project 2)  Better precision (accuracy) does not mirror less inspection cost 3)  Traditional predicting model: logistic regression Recaling the “imprecision” of Cross- project Defect Prediction, Rahman   at   al.   FSE  2012  
  • 14. Cost Effectiveness: example Class  A   Class  B   Class  C   Class  D  
  • 15. Cost Effectiveness: example Predicting model 1 Class  A   Class  B   Class  A   Class  C   Class  D   100 LOC 10,000 LOC 100 LOC 100 LOC 100 LOC Predicting model 2 Class  A   Class  B   Class  C   Class  D  
  • 16. Cost Effectiveness: example Predicting model 1 Class  A   Class  B   Class  A   Class  C   Class  D   BUG   BUG   100 LOC 10,000 LOC 100 LOC 100 LOC 100 LOC Predicting model 2 Class  A   Class  B   Class  C   Class  D  
  • 17. Cost Effectiveness: example Predicting model 1 Class  A   Class  B   Class  A   Class  C   Class  D   BUG   BUG   100 LOC 10,000 LOC 100 LOC 100 LOC 100 LOC Precision  =  50  %   Cost  =10,100  LOC   Predicting model 2 Class  A   Class  B   Class  C   Class  D  
  • 18. Cost Effectiveness: an example Predicting model 1 Class  A   Class  B   Class  A   Class  C   Class  D   BUG   BUG   100 LOC 10,000 LOC 100 LOC 100 LOC 100 LOC Precision  =  50  %   Cost  =10,100  LOC   Predicting model 2 Precision  =  33  %   Cost  =  300  LOC   Class  A   Class  B   Class  C   Class  D  
  • 19. Class  A   Class  B   Class  C   Class  D   Cost Effectiveness: an example Predicting model 1 Class  A   Class  B   Class  A   Class  C   Class  D   BUG   BUG   100 LOC 10,000 LOC 100 LOC 100 LOC 100 LOC Predicting model 2 Precision does not mirrorthe inspection cost All the existing predicting models work on precision and not on cost We need COST oriented models
  • 21. Building Predicting Model on Training Set Training  Set   P1 P2 … Class1 m11 m12 … Class2 m21 m22 … Class3 m31 m32 … Class4 … … … … … … … Logis<c   Regression   Pred. C1 1 C2 1 C3 0 C4 1 … 0
  • 22. Building Predicting Model on Training Set Training  Set   Logis<c   Regression   Pred. C1 1 C2 1 C3 0 C4 1 … 0 Actual Val C1 1 C2 0 C3 1 C4 1 … 0 P1 P2 … Class1 m11 m12 … Class2 m21 m22 … Class3 m31 m32 … Class4 … … … … … … …
  • 23. Building Predicting Model on Training Set Training  Set   Logis<c   Regression   Pred. C1 1 C2 1 C3 0 C4 1 … 0 Actual Val C1 1 C2 0 C3 1 C4 1 … 0 Comparison P1 P2 … Class1 m11 m12 … Class2 m21 m22 … Class3 m31 m32 … Class4 … … … … … … …
  • 24. Building Predicting Model on Training Set Training  Set   Logis<c   Regression   Pred. C1 1 C2 1 C3 0 C4 1 … 0 Actual Val C1 1 C2 0 C3 1 C4 1 … 0 Comparison P1 P2 … Class1 m11 m12 … Class2 m21 m22 … Class3 m31 m32 … Class4 … … … … … … … GOAL: minimazing the predicting error (PRECISION)
  • 25. Building Predicting Model on Training Set Training  Set   Logis<c   Regression   Pred. C1 1 C2 1 C3 0 C4 1 … 0 Actual Val C1 1 C2 0 C3 1 C4 1 … 0 Comparison P1 P2 … Class1 m11 m12 … Class2 m21 m22 … Class3 m31 m32 … Class4 … … … … … … … GOAL: minimazing the predicting error (PRECISION)
  • 26. Multi-objective Logistic Regression Pred. 1 0 … 1 0 LOC 100 95 … 110 10 *   =   Cost 100 0 … 110 0 Ispection Cost = 210 LOC
  • 27. Multi-objective Logistic Regression Pred. 1 0 … 1 0 LOC 100 95 … 110 10 *   =   Cost 100 0 … 110 0 Ispection Cost = 210 LOC Pred. 1 0 … 1 0 Actual Values 1 1 … 1 0 *   =   #Bug 1 0 … 1 0 Effectiveness = 2 defects
  • 28. Multi-objective Logistic Regression ⎪ ⎩ ⎪ ⎨ ⎧ ⋅= ⋅= ∑ ∑ i ii i i i ActualPredessEffectiven CostPredCostIspectionmin max Pred. 1 0 … 1 0 LOC 100 95 … 110 10 *   =   Cost 100 0 … 110 0 Ispection Cost = 210 LOC Pred. 1 0 … 1 0 Actual Values 1 1 … 1 0 *   =   #Bug 1 0 … 1 0 Effectiveness = 2 defects
  • 29. Multi-objective Logistic Regression ⎪ ⎩ ⎪ ⎨ ⎧ ⋅= ⋅= ∑ ∑ i ii i i i ActualedessEffectiven CostPredCostIspection Pr min max Pred. 1 0 … 1 0 LOC 100 95 … 110 10 *   =   Cost 100 0 … 110 0 Ispection Cost = 210 LOC Pred. 1 0 … 1 0 Actual Values 1 1 … 1 0 *   =   #Bug 1 0 … 1 0 Effectiveness = 2 defects
  • 30. a + b mi1 + c mi2 + … Multi-objective Genetic Algorithm ⎪ ⎩ ⎪ ⎨ ⎧ ⋅= ⋅= ∑ ∑ i ii i i i ActualedessEffectiven CostPredCostIspection Pr min max . 1 e e Pred + = a + b mi1 + c mi2 + … Chromosome        (a, b,c , …) Fitness Function Multiple objectives are optimized using Pareto efficient approaches
  • 31. Multi-objective Genetic Algorithm Pareto Optimality: all solutionsthat are not dominated by anyother solutions form the Paretooptimal set. Multiple otpimal solutions (models) can be found Cost Effectiveness The frontier allows to make a well-informed decision that balances the trade-offs between the two objectives
  • 33. Research Questions RQ1: How does the multi-objective (MO)prediction perform, compared to single-objective (SO) prediction
  • 34. Research Questions RQ1: How does the multi-objective (MO)prediction perform, compared to single-objective (SO) prediction Cross-project MO vs. cross-project SO vs. within project SO
  • 35. Research Questions RQ2: How does the proposed approach perform, comparedto the local prediction approach by Menzie et al. ? RQ1: How does the multi-objective (MO)prediction perform, compared to single-objective (SO) prediction Cross-project MO vs. cross-project SO vs. within project SO
  • 36. Research Questions RQ2: How does the proposed approach perform, comparedto the local prediction approach by Menzie et al. ? RQ1: How does the multi-objective (MO)prediction perform, compared to single-objective (SO) prediction Cross-project MO vs. cross-project SO vs. within project SO Cross-project MO vs. Local Prediction
  • 37. Experiment outline • 10 java projects from PROMISE datasetü   different  sizes   ü   different  context  applica<on  
  • 38. • 10 java projects from PROMISE datasetü   different  sizes   ü   different  context  applica<on   Experiment outline • Cross-projects defect prediction: ü Training  model  on  nine  projects  and  test  on  the  remaining  one     (10  <mes)   RQ1  
  • 39. • 10 java projects from PROMISE datasetü   different  sizes   ü   different  context  applica<on   Experiment outline • Cross-projects defect prediction: ü Training  model  on  nine  projects  and  test  on  the  remaining  one     (10  <mes)   • Within project defect prediction: ü   10  cross-­‐folder  valida<on   RQ1   RQ1  
  • 40. • 10 java projects from PROMISE datasetü   different  sizes   ü   different  context  applica<on   Experiment outline • Cross-projects defect prediction: ü Training  model  on  nine  projects  and  test  on  the  remaining  one     (10  <mes)   • Within project defect prediction: ü   10  cross-­‐folder  valida<on   • Local prediction: ü     K-­‐means  clustering  algorithm   ü   Silhoue]e  Coefficient   RQ1   RQ1   RQ2  
  • 43. Cross-project MO vs. Cross-project SO 0   50   100   150   200   250   300   KLOC   Cross-­‐project  SO   Cross  project  MO  
  • 44. Cross-project MO vs. Cross-project SO 0   50   100   150   200   250   300   KLOC   Cross-­‐project  SO   Cross  project  MO   The proposed multi-objective model Outperform the single-objective one
  • 45. Cross-project MO vs. Within-project SO 0   50   100   150   200   250   300   350   KLOC   Within  project  SO   Cross  project  MO  
  • 46. Cross-project MO vs. Within-project SO 0   10   20   30   40   50   60   70   80   90   100   Precision   Within  project  SO   Cross  project  MO  
  • 47. Cross-project MO vs. Within-project SO 0   10   20   30   40   50   60   70   80   90   100   Precision   Within  project  SO   Cross  project  MO   Cross-project prediction is worse than within-project prediction in terms of PRECISION
  • 48. Cross-project MO vs. Within-project SO 0   10   20   30   40   50   60   70   80   90   100   Precision   Within  project  SO   Cross  project  MO   Cross-project prediction is worse than within-project prediction in terms of PRECISION But it is better than within-project predictors in term of COST-EFFECTIVENESS
  • 49. 0   50   100   150   200   250   300   KLOC   Local  Predic<on   Cross  project  MO   Cross-project MO vs. Local Prediction
  • 50. 0   50   100   150   200   250   300   KLOC   Local  Predic<on   Cross  project  MO   Cross-project MO vs. Local Prediction The multi-objective predictor outperforms the local predictor.