SlideShare a Scribd company logo
A DEFECT PREDICTION MODEL BASED ON THE 
RELATIONSHIPS BETWEEN DEVELOPERS AND 
CHANGED FILES 
University of Salerno 
26th September 2014 
Candidate: Dario Di Nucci 
Advisor: Andrea De Lucia
Outline 
1. Motivation 
2. Related work 
3. A new metric for defect prediction based on the 
relationships between developers and files 
4. Case study: empirical evaluation of the prediction 
model 
5. Case study: combination of prediction models 
6. Conclusion and future works
Software Evolution and Defect Prediction
50% of 
development 
costs 
B. Beizer. - Software Testing Techniques (2nd ed.). 
Van Nostrand Reinhold Co., New York, NY, USA, 1990
G. Myers - The Art of Software Testing 
Wiley. ISBN 978-0-471-46912-4 (2004)
Knowing which software components contain defects 
could be crucial
Defect prediction process
There are a lot of prediction metrics 
Based on the 
state of the 
project 
V. R. Basili, L. C. Briand, and W. L. Melo 
A validation of object-oriented design metrics as 
quality indicators 
IEEE Transactions on Software Engineering, 22 (10): 
751 – 761, 1996. 
Based on the 
history of the 
project 
A. Bernstein, J. Ekanayake, and M. Pinzger 
“Improving defect prediction using temporal features 
and non linear models,” 
Proceedings of IWPSE 2007, 2007, pp. 11–18.
There are a lot of prediction metrics 
No one considers 
developers! 
V. R. Basili, L. C. Briand, and W. L. Melo 
A validation of object-oriented design metrics as 
quality indicators 
IEEE Transactions on Software Engineering, 22 (10): 
751 – 761, 1996. 
A. Bernstein, J. Ekanayake, and M. Pinzger 
“Improving defect prediction using temporal features 
and non linear models,” 
Proceedings of IWPSE 2007, 2007, pp. 11–18.
Also the best developer could not make a good job 
when working on different tasks at the same time
Introducing Developer Based Changes Model 
A new model for defect prediction based on the 
relationships between developers and files
Developer tree construction
Two metrics for analyzing the developer 
confusion 
Developer Structural Confusion 
Developer Semantical Confusion
A new metric for file complexity based on 
developers confusion 
Structural File Complexity 
Semantical File Complexity
DBCM Process
DBCM Process
DBCM Process
DBCM Process
DBCM Process
DBCM Process
Classifier training & test set 
The system evolution processes are self-regulating with the 
distribution of product and process measures close to normal 
Lehman, M. M., “On Understanding Laws, Evolution, and Conservation in the Large- 
Program Life Cycle” - Journal of Systems and Software (1980)
Classifier training & test set 
How long should be 
a period?
Classifier training & test set 
How long should be 
a period? 
3 Months 
Ahmed E. Hassan 
Predicting faults using the complexity of code changes. 
ICSE 2009: 78 - 88
Classifier training & test set 
Which classifier to use?
Classifier training & test set 
Decision Table 
Majority 
Which classifier to use?
Empirical Evaluation
Case study design 
Apache Ant 
Apache Cassandra 
Apache JMeter 
Apache Lenya 
Apache Log4j 
Apache Poi 
Apache Tomcat 7 
Apache Xerces-J 
Even if the systems are of the same 
ecosystem, they have different size 
and different history
Case study design 
RQ1: What is the accuracy of the prediction made by 
DBCM? 
RQ2: How does DBCM compared with techniques based 
on number of changes?
Case study design
Case study design 
We selected as competitive approach the BCCM proposed 
by Hassan 
Higher the number of changes applied to a component, 
higher is the probability that the component is buggy 
Ahmed E. Hassan 
Predicting faults using the complexity of code changes. 
ICSE 2009: 78 - 88
Results 
DBCM and BCCM 
seems to capture the 
same phenomenal
Principal Component Analysis
DBCM & BCCM: A Combined Approach 
RQ3: Is it possible to combine the two approaches in order to increase 
the prediction accuracy?
DBCM & BCCM: A Combined Approach 
RQ3: Is it possible to combine the two approaches in order to increase 
the prediction accuracy? 
“Big Bang” 
Combination
DBCM & BCCM: A Combined Approach 
RQ3: Is it possible to combine the two approaches in order to increase 
the prediction accuracy? 
“Big Bang” 
Combination 
Selection Algorithm
DBCM & BCCM: A Combined Approach 
Step 1: Identification of the characteristics of the periods 
influencing the accuracy of the models 
numOfChanges < 0.05 : DBCM 
numOfChanges >= 0.05 
| numOfCommittors >= 3 
| averageCommitSize < 0.35 : BCCM 
| averageCommitSize >= 0.35 : DBCM 
numOfCommittors < 3 : BCCM
DBCM & BCCM: A Combined Approach 
Step 2: Applying the models using the selection algorithm
DBCM & BCCM: A Combined Approach 
Step 2: Applying the models using the selection algorithm 
+5%
Summarizing
Summarizing
Summarizing
Summarizing
Summarizing
Summarizing
Summarizing
Summarizing
Summarizing
Summarizing 
?

More Related Content

What's hot

Software Product Measurement and Analysis in a Continuous Integration Environ...
Software Product Measurement and Analysis in a Continuous Integration Environ...Software Product Measurement and Analysis in a Continuous Integration Environ...
Software Product Measurement and Analysis in a Continuous Integration Environ...
Gabriel Moreira
 
ProDebt's Lessons Learned from Planning Technical Debt Strategically
ProDebt's Lessons Learned from Planning Technical Debt StrategicallyProDebt's Lessons Learned from Planning Technical Debt Strategically
ProDebt's Lessons Learned from Planning Technical Debt Strategically
QAware GmbH
 
The Impact of Software Complexity on Cost and Quality - A Comparative Analysi...
The Impact of Software Complexity on Cost and Quality - A Comparative Analysi...The Impact of Software Complexity on Cost and Quality - A Comparative Analysi...
The Impact of Software Complexity on Cost and Quality - A Comparative Analysi...
ijseajournal
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
Roy Antony Arnold G
 
Software engineering-quiz
Software engineering-quizSoftware engineering-quiz
Software engineering-quiz
Dr. C.V. Suresh Babu
 
Review on cost estimation technque for web application [part 1]
Review on cost estimation technque for web application [part 1]Review on cost estimation technque for web application [part 1]
Review on cost estimation technque for web application [part 1]
Sayed Mohsin Reza
 
factors
 factors factors
factors
Zahid Mahmood
 
A Study of the Quality-Impacting Practices of Modern Code Review at Sony Mobile
A Study of the Quality-Impacting Practices of Modern Code Review at Sony MobileA Study of the Quality-Impacting Practices of Modern Code Review at Sony Mobile
A Study of the Quality-Impacting Practices of Modern Code Review at Sony Mobile
SAIL_QU
 
Ijcatr04051006
Ijcatr04051006Ijcatr04051006
Ijcatr04051006
Editor IJCATR
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?
Denys Zaiats
 
Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3
Gurpreet singh
 
D0423022028
D0423022028D0423022028
D0423022028
ijceronline
 
SCHEDULING AND INSPECTION PLANNING IN SOFTWARE DEVELOPMENT PROJECTS USING MUL...
SCHEDULING AND INSPECTION PLANNING IN SOFTWARE DEVELOPMENT PROJECTS USING MUL...SCHEDULING AND INSPECTION PLANNING IN SOFTWARE DEVELOPMENT PROJECTS USING MUL...
SCHEDULING AND INSPECTION PLANNING IN SOFTWARE DEVELOPMENT PROJECTS USING MUL...
ijseajournal
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
Roy Antony Arnold G
 
Web Engineering - Web Effort Estimation
Web Engineering - Web Effort EstimationWeb Engineering - Web Effort Estimation
Web Engineering - Web Effort Estimation
Nosheen Qamar
 
Importance of Testing in SDLC
Importance of Testing in SDLCImportance of Testing in SDLC
Importance of Testing in SDLC
IJEACS
 
software metrics(process,project,product)
software metrics(process,project,product)software metrics(process,project,product)
software metrics(process,project,product)
Amisha Narsingani
 
Software Testing and Quality Assurance unit1
Software Testing and Quality Assurance  unit1Software Testing and Quality Assurance  unit1
Software Testing and Quality Assurance unit1
Bhagyashree Dhakulkar
 

What's hot (20)

Software Product Measurement and Analysis in a Continuous Integration Environ...
Software Product Measurement and Analysis in a Continuous Integration Environ...Software Product Measurement and Analysis in a Continuous Integration Environ...
Software Product Measurement and Analysis in a Continuous Integration Environ...
 
ProDebt's Lessons Learned from Planning Technical Debt Strategically
ProDebt's Lessons Learned from Planning Technical Debt StrategicallyProDebt's Lessons Learned from Planning Technical Debt Strategically
ProDebt's Lessons Learned from Planning Technical Debt Strategically
 
The Impact of Software Complexity on Cost and Quality - A Comparative Analysi...
The Impact of Software Complexity on Cost and Quality - A Comparative Analysi...The Impact of Software Complexity on Cost and Quality - A Comparative Analysi...
The Impact of Software Complexity on Cost and Quality - A Comparative Analysi...
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
 
Software engineering-quiz
Software engineering-quizSoftware engineering-quiz
Software engineering-quiz
 
Review on cost estimation technque for web application [part 1]
Review on cost estimation technque for web application [part 1]Review on cost estimation technque for web application [part 1]
Review on cost estimation technque for web application [part 1]
 
factors
 factors factors
factors
 
A Study of the Quality-Impacting Practices of Modern Code Review at Sony Mobile
A Study of the Quality-Impacting Practices of Modern Code Review at Sony MobileA Study of the Quality-Impacting Practices of Modern Code Review at Sony Mobile
A Study of the Quality-Impacting Practices of Modern Code Review at Sony Mobile
 
Ijcatr04051006
Ijcatr04051006Ijcatr04051006
Ijcatr04051006
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?
 
Software quality
Software qualitySoftware quality
Software quality
 
Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3
 
D0423022028
D0423022028D0423022028
D0423022028
 
SCHEDULING AND INSPECTION PLANNING IN SOFTWARE DEVELOPMENT PROJECTS USING MUL...
SCHEDULING AND INSPECTION PLANNING IN SOFTWARE DEVELOPMENT PROJECTS USING MUL...SCHEDULING AND INSPECTION PLANNING IN SOFTWARE DEVELOPMENT PROJECTS USING MUL...
SCHEDULING AND INSPECTION PLANNING IN SOFTWARE DEVELOPMENT PROJECTS USING MUL...
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
 
Defect Age
Defect  AgeDefect  Age
Defect Age
 
Web Engineering - Web Effort Estimation
Web Engineering - Web Effort EstimationWeb Engineering - Web Effort Estimation
Web Engineering - Web Effort Estimation
 
Importance of Testing in SDLC
Importance of Testing in SDLCImportance of Testing in SDLC
Importance of Testing in SDLC
 
software metrics(process,project,product)
software metrics(process,project,product)software metrics(process,project,product)
software metrics(process,project,product)
 
Software Testing and Quality Assurance unit1
Software Testing and Quality Assurance  unit1Software Testing and Quality Assurance  unit1
Software Testing and Quality Assurance unit1
 

Viewers also liked

A false digital alibi on mac os x
A false digital alibi on mac os xA false digital alibi on mac os x
A false digital alibi on mac os x
Vrije Universiteit Brussel
 
Landfill
LandfillLandfill
GSOC 2013 - Un nuovo look and feel per Java basato su GTK+ 3
GSOC 2013 - Un nuovo look and feel per Java basato su GTK+ 3GSOC 2013 - Un nuovo look and feel per Java basato su GTK+ 3
GSOC 2013 - Un nuovo look and feel per Java basato su GTK+ 3
D'Eugenio Elisa
 
Hypervolume-based search for test case prioritization - ssbse 2015
Hypervolume-based search for test case prioritization - ssbse 2015Hypervolume-based search for test case prioritization - ssbse 2015
Hypervolume-based search for test case prioritization - ssbse 2015
Vrije Universiteit Brussel
 
Next! Navigator
Next! NavigatorNext! Navigator
Jointly owned companies as instruments of local government
Jointly owned companies as instruments of local governmentJointly owned companies as instruments of local government
Jointly owned companies as instruments of local government
Vrije Universiteit Brussel
 
Next!
Next!Next!
Tpea project, utilizzo sensori per monitorare temperatura e umidità da remoto
Tpea project, utilizzo sensori per monitorare temperatura e umidità da remotoTpea project, utilizzo sensori per monitorare temperatura e umidità da remoto
Tpea project, utilizzo sensori per monitorare temperatura e umidità da remotoVrije Universiteit Brussel
 
Gnome Maps: free software services for a new desktop experience
Gnome Maps: free software services for a new desktop experienceGnome Maps: free software services for a new desktop experience
Gnome Maps: free software services for a new desktop experience
Vrije Universiteit Brussel
 
La diffusione
La diffusioneLa diffusione
Applicazioni di modelli matematici alla ricerca semantica
Applicazioni di modelli matematici alla ricerca semanticaApplicazioni di modelli matematici alla ricerca semantica
Applicazioni di modelli matematici alla ricerca semantica
Vrije Universiteit Brussel
 
Lightweight Detection of Android-specific Code Smells: the aDoctor Project
Lightweight Detection of Android-specific Code Smells: the aDoctor ProjectLightweight Detection of Android-specific Code Smells: the aDoctor Project
Lightweight Detection of Android-specific Code Smells: the aDoctor Project
Vrije Universiteit Brussel
 
Search-based testing of procedural programs:iterative single-target or multi-...
Search-based testing of procedural programs:iterative single-target or multi-...Search-based testing of procedural programs:iterative single-target or multi-...
Search-based testing of procedural programs:iterative single-target or multi-...
Vrije Universiteit Brussel
 
Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?
Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?
Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?
Vrije Universiteit Brussel
 
Evoluzione della normazione ISO
Evoluzione della normazione ISOEvoluzione della normazione ISO
Evoluzione della normazione ISO
D'Eugenio Elisa
 
People management
People managementPeople management
People management
Vrije Universiteit Brussel
 

Viewers also liked (16)

A false digital alibi on mac os x
A false digital alibi on mac os xA false digital alibi on mac os x
A false digital alibi on mac os x
 
Landfill
LandfillLandfill
Landfill
 
GSOC 2013 - Un nuovo look and feel per Java basato su GTK+ 3
GSOC 2013 - Un nuovo look and feel per Java basato su GTK+ 3GSOC 2013 - Un nuovo look and feel per Java basato su GTK+ 3
GSOC 2013 - Un nuovo look and feel per Java basato su GTK+ 3
 
Hypervolume-based search for test case prioritization - ssbse 2015
Hypervolume-based search for test case prioritization - ssbse 2015Hypervolume-based search for test case prioritization - ssbse 2015
Hypervolume-based search for test case prioritization - ssbse 2015
 
Next! Navigator
Next! NavigatorNext! Navigator
Next! Navigator
 
Jointly owned companies as instruments of local government
Jointly owned companies as instruments of local governmentJointly owned companies as instruments of local government
Jointly owned companies as instruments of local government
 
Next!
Next!Next!
Next!
 
Tpea project, utilizzo sensori per monitorare temperatura e umidità da remoto
Tpea project, utilizzo sensori per monitorare temperatura e umidità da remotoTpea project, utilizzo sensori per monitorare temperatura e umidità da remoto
Tpea project, utilizzo sensori per monitorare temperatura e umidità da remoto
 
Gnome Maps: free software services for a new desktop experience
Gnome Maps: free software services for a new desktop experienceGnome Maps: free software services for a new desktop experience
Gnome Maps: free software services for a new desktop experience
 
La diffusione
La diffusioneLa diffusione
La diffusione
 
Applicazioni di modelli matematici alla ricerca semantica
Applicazioni di modelli matematici alla ricerca semanticaApplicazioni di modelli matematici alla ricerca semantica
Applicazioni di modelli matematici alla ricerca semantica
 
Lightweight Detection of Android-specific Code Smells: the aDoctor Project
Lightweight Detection of Android-specific Code Smells: the aDoctor ProjectLightweight Detection of Android-specific Code Smells: the aDoctor Project
Lightweight Detection of Android-specific Code Smells: the aDoctor Project
 
Search-based testing of procedural programs:iterative single-target or multi-...
Search-based testing of procedural programs:iterative single-target or multi-...Search-based testing of procedural programs:iterative single-target or multi-...
Search-based testing of procedural programs:iterative single-target or multi-...
 
Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?
Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?
Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable?
 
Evoluzione della normazione ISO
Evoluzione della normazione ISOEvoluzione della normazione ISO
Evoluzione della normazione ISO
 
People management
People managementPeople management
People management
 

Similar to A defect prediction model based on the relationships between developers and changed files

Class quality evaluation using class quality
Class quality evaluation using class qualityClass quality evaluation using class quality
Class quality evaluation using class qualityIAEME Publication
 
Class quality evaluation using class quality scorecards
Class quality evaluation using class quality scorecardsClass quality evaluation using class quality scorecards
Class quality evaluation using class quality scorecardsIAEME Publication
 
A simplified predictive framework for cost evaluation to fault assessment usi...
A simplified predictive framework for cost evaluation to fault assessment usi...A simplified predictive framework for cost evaluation to fault assessment usi...
A simplified predictive framework for cost evaluation to fault assessment usi...
IJECEIAES
 
Adopting code reviews for agile software development
Adopting code reviews for agile software developmentAdopting code reviews for agile software development
Adopting code reviews for agile software development
mariobernhart
 
A Hybrid Approach to Expert and Model Based Effort Estimation
A Hybrid Approach to Expert and Model Based Effort Estimation  A Hybrid Approach to Expert and Model Based Effort Estimation
A Hybrid Approach to Expert and Model Based Effort Estimation
CS, NcState
 
2cee Master Cocomo20071
2cee Master Cocomo200712cee Master Cocomo20071
2cee Master Cocomo20071
CS, NcState
 
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
Martin Pinzger
 
Changeability Evaluation Model for Object Oriented Software
Changeability Evaluation Model for Object Oriented SoftwareChangeability Evaluation Model for Object Oriented Software
Changeability Evaluation Model for Object Oriented Software
AIRCC Publishing Corporation
 
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARECHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
AIRCC Publishing Corporation
 
Survey on Software Data Reduction Techniques Accomplishing Bug Triage
Survey on Software Data Reduction Techniques Accomplishing Bug TriageSurvey on Software Data Reduction Techniques Accomplishing Bug Triage
Survey on Software Data Reduction Techniques Accomplishing Bug Triage
IRJET Journal
 
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseContributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
Waqas Tariq
 
PM3 ARTICALS
PM3 ARTICALSPM3 ARTICALS
PM3 ARTICALSra na
 
Bug Triage: An Automated Process
Bug Triage: An Automated ProcessBug Triage: An Automated Process
Bug Triage: An Automated Process
IRJET Journal
 
Determination of Software Release Instant of Three-Tier Client Server Softwar...
Determination of Software Release Instant of Three-Tier Client Server Softwar...Determination of Software Release Instant of Three-Tier Client Server Softwar...
Determination of Software Release Instant of Three-Tier Client Server Softwar...
Waqas Tariq
 
TOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUES
TOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUESTOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUES
TOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUES
ijaia
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD Editor
 
Implementation of reducing features to improve code change based bug predicti...
Implementation of reducing features to improve code change based bug predicti...Implementation of reducing features to improve code change based bug predicti...
Implementation of reducing features to improve code change based bug predicti...
eSAT Journals
 
Software Defect Prediction Using Radial Basis and Probabilistic Neural Networks
Software Defect Prediction Using Radial Basis and Probabilistic Neural NetworksSoftware Defect Prediction Using Radial Basis and Probabilistic Neural Networks
Software Defect Prediction Using Radial Basis and Probabilistic Neural Networks
Editor IJCATR
 
A Hierarchical Feature Set optimization for effective code change based Defec...
A Hierarchical Feature Set optimization for effective code change based Defec...A Hierarchical Feature Set optimization for effective code change based Defec...
A Hierarchical Feature Set optimization for effective code change based Defec...
IOSR Journals
 
J034057065
J034057065J034057065
J034057065
ijceronline
 

Similar to A defect prediction model based on the relationships between developers and changed files (20)

Class quality evaluation using class quality
Class quality evaluation using class qualityClass quality evaluation using class quality
Class quality evaluation using class quality
 
Class quality evaluation using class quality scorecards
Class quality evaluation using class quality scorecardsClass quality evaluation using class quality scorecards
Class quality evaluation using class quality scorecards
 
A simplified predictive framework for cost evaluation to fault assessment usi...
A simplified predictive framework for cost evaluation to fault assessment usi...A simplified predictive framework for cost evaluation to fault assessment usi...
A simplified predictive framework for cost evaluation to fault assessment usi...
 
Adopting code reviews for agile software development
Adopting code reviews for agile software developmentAdopting code reviews for agile software development
Adopting code reviews for agile software development
 
A Hybrid Approach to Expert and Model Based Effort Estimation
A Hybrid Approach to Expert and Model Based Effort Estimation  A Hybrid Approach to Expert and Model Based Effort Estimation
A Hybrid Approach to Expert and Model Based Effort Estimation
 
2cee Master Cocomo20071
2cee Master Cocomo200712cee Master Cocomo20071
2cee Master Cocomo20071
 
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
 
Changeability Evaluation Model for Object Oriented Software
Changeability Evaluation Model for Object Oriented SoftwareChangeability Evaluation Model for Object Oriented Software
Changeability Evaluation Model for Object Oriented Software
 
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARECHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
 
Survey on Software Data Reduction Techniques Accomplishing Bug Triage
Survey on Software Data Reduction Techniques Accomplishing Bug TriageSurvey on Software Data Reduction Techniques Accomplishing Bug Triage
Survey on Software Data Reduction Techniques Accomplishing Bug Triage
 
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseContributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
 
PM3 ARTICALS
PM3 ARTICALSPM3 ARTICALS
PM3 ARTICALS
 
Bug Triage: An Automated Process
Bug Triage: An Automated ProcessBug Triage: An Automated Process
Bug Triage: An Automated Process
 
Determination of Software Release Instant of Three-Tier Client Server Softwar...
Determination of Software Release Instant of Three-Tier Client Server Softwar...Determination of Software Release Instant of Three-Tier Client Server Softwar...
Determination of Software Release Instant of Three-Tier Client Server Softwar...
 
TOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUES
TOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUESTOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUES
TOWARDS PREDICTING SOFTWARE DEFECTS WITH CLUSTERING TECHNIQUES
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
 
Implementation of reducing features to improve code change based bug predicti...
Implementation of reducing features to improve code change based bug predicti...Implementation of reducing features to improve code change based bug predicti...
Implementation of reducing features to improve code change based bug predicti...
 
Software Defect Prediction Using Radial Basis and Probabilistic Neural Networks
Software Defect Prediction Using Radial Basis and Probabilistic Neural NetworksSoftware Defect Prediction Using Radial Basis and Probabilistic Neural Networks
Software Defect Prediction Using Radial Basis and Probabilistic Neural Networks
 
A Hierarchical Feature Set optimization for effective code change based Defec...
A Hierarchical Feature Set optimization for effective code change based Defec...A Hierarchical Feature Set optimization for effective code change based Defec...
A Hierarchical Feature Set optimization for effective code change based Defec...
 
J034057065
J034057065J034057065
J034057065
 

Recently uploaded

一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
ydteq
 
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
awadeshbabu
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
Dr Ramhari Poudyal
 
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
ssuser7dcef0
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
bank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdfbank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdf
Divyam548318
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
obonagu
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
ChristineTorrepenida1
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
manasideore6
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
Victor Morales
 
PPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testingPPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testing
anoopmanoharan2
 
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
zwunae
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
nooriasukmaningtyas
 
14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
SyedAbiiAzazi1
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
Amil Baba Dawood bangali
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
aqil azizi
 
Swimming pool mechanical components design.pptx
Swimming pool  mechanical components design.pptxSwimming pool  mechanical components design.pptx
Swimming pool mechanical components design.pptx
yokeleetan1
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
insn4465
 

Recently uploaded (20)

一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
 
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
[JPP-1] - (JEE 3.0) - Kinematics 1D - 14th May..pdf
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
 
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
bank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdfbank management system in java and mysql report1.pdf
bank management system in java and mysql report1.pdf
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
 
PPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testingPPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testing
 
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单专业办理
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
 
14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application14 Template Contractual Notice - EOT Application
14 Template Contractual Notice - EOT Application
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
 
Swimming pool mechanical components design.pptx
Swimming pool  mechanical components design.pptxSwimming pool  mechanical components design.pptx
Swimming pool mechanical components design.pptx
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
 

A defect prediction model based on the relationships between developers and changed files

  • 1. A DEFECT PREDICTION MODEL BASED ON THE RELATIONSHIPS BETWEEN DEVELOPERS AND CHANGED FILES University of Salerno 26th September 2014 Candidate: Dario Di Nucci Advisor: Andrea De Lucia
  • 2. Outline 1. Motivation 2. Related work 3. A new metric for defect prediction based on the relationships between developers and files 4. Case study: empirical evaluation of the prediction model 5. Case study: combination of prediction models 6. Conclusion and future works
  • 3. Software Evolution and Defect Prediction
  • 4.
  • 5. 50% of development costs B. Beizer. - Software Testing Techniques (2nd ed.). Van Nostrand Reinhold Co., New York, NY, USA, 1990
  • 6. G. Myers - The Art of Software Testing Wiley. ISBN 978-0-471-46912-4 (2004)
  • 7. Knowing which software components contain defects could be crucial
  • 9. There are a lot of prediction metrics Based on the state of the project V. R. Basili, L. C. Briand, and W. L. Melo A validation of object-oriented design metrics as quality indicators IEEE Transactions on Software Engineering, 22 (10): 751 – 761, 1996. Based on the history of the project A. Bernstein, J. Ekanayake, and M. Pinzger “Improving defect prediction using temporal features and non linear models,” Proceedings of IWPSE 2007, 2007, pp. 11–18.
  • 10. There are a lot of prediction metrics No one considers developers! V. R. Basili, L. C. Briand, and W. L. Melo A validation of object-oriented design metrics as quality indicators IEEE Transactions on Software Engineering, 22 (10): 751 – 761, 1996. A. Bernstein, J. Ekanayake, and M. Pinzger “Improving defect prediction using temporal features and non linear models,” Proceedings of IWPSE 2007, 2007, pp. 11–18.
  • 11. Also the best developer could not make a good job when working on different tasks at the same time
  • 12. Introducing Developer Based Changes Model A new model for defect prediction based on the relationships between developers and files
  • 14. Two metrics for analyzing the developer confusion Developer Structural Confusion Developer Semantical Confusion
  • 15. A new metric for file complexity based on developers confusion Structural File Complexity Semantical File Complexity
  • 22. Classifier training & test set The system evolution processes are self-regulating with the distribution of product and process measures close to normal Lehman, M. M., “On Understanding Laws, Evolution, and Conservation in the Large- Program Life Cycle” - Journal of Systems and Software (1980)
  • 23. Classifier training & test set How long should be a period?
  • 24. Classifier training & test set How long should be a period? 3 Months Ahmed E. Hassan Predicting faults using the complexity of code changes. ICSE 2009: 78 - 88
  • 25. Classifier training & test set Which classifier to use?
  • 26. Classifier training & test set Decision Table Majority Which classifier to use?
  • 28. Case study design Apache Ant Apache Cassandra Apache JMeter Apache Lenya Apache Log4j Apache Poi Apache Tomcat 7 Apache Xerces-J Even if the systems are of the same ecosystem, they have different size and different history
  • 29. Case study design RQ1: What is the accuracy of the prediction made by DBCM? RQ2: How does DBCM compared with techniques based on number of changes?
  • 31. Case study design We selected as competitive approach the BCCM proposed by Hassan Higher the number of changes applied to a component, higher is the probability that the component is buggy Ahmed E. Hassan Predicting faults using the complexity of code changes. ICSE 2009: 78 - 88
  • 32. Results DBCM and BCCM seems to capture the same phenomenal
  • 34. DBCM & BCCM: A Combined Approach RQ3: Is it possible to combine the two approaches in order to increase the prediction accuracy?
  • 35. DBCM & BCCM: A Combined Approach RQ3: Is it possible to combine the two approaches in order to increase the prediction accuracy? “Big Bang” Combination
  • 36. DBCM & BCCM: A Combined Approach RQ3: Is it possible to combine the two approaches in order to increase the prediction accuracy? “Big Bang” Combination Selection Algorithm
  • 37. DBCM & BCCM: A Combined Approach Step 1: Identification of the characteristics of the periods influencing the accuracy of the models numOfChanges < 0.05 : DBCM numOfChanges >= 0.05 | numOfCommittors >= 3 | averageCommitSize < 0.35 : BCCM | averageCommitSize >= 0.35 : DBCM numOfCommittors < 3 : BCCM
  • 38. DBCM & BCCM: A Combined Approach Step 2: Applying the models using the selection algorithm
  • 39. DBCM & BCCM: A Combined Approach Step 2: Applying the models using the selection algorithm +5%