Mining metrics to predict component failures

@article{Nagappan2006MiningMT,
  title={Mining metrics to predict component failures},
  author={N. Nagappan and T. Ball and A. Zeller},
  journal={Proceedings of the 28th international conference on Software engineering},
  year={2006}
}
What is it that makes software fail? In an empirical study of the post-release defect history of five Microsoft software systems, we found that failure-prone software entities are statistically correlated with code complexity measures. However, there is no single set of complexity metrics that could act as a universally best defect predictor. Using principal component analysis on the code metrics, we built regression models that accurately predict the likelihood of post-release defects for new… Expand
Predicting defects in SAP Java code: An experience report
TLDR
The overall predictive power of these regression models is lower than expected; still, the resulting regression models successfully predicted 50–60% of the 20% most defect-prone components. Expand
Predicting component failures at design time
TLDR
An empirical study of 52 ECLIPSE plug-ins found that the software design as well as past failure history, can be used to build models which accurately predict failure-prone components in new programs. Expand
Using Statistical Models to Predict Software Regressions
  • A. Tarvo
  • Computer Science
  • 2008 19th International Symposium on Software Reliability Engineering (ISSRE)
  • 2008
TLDR
A statistical model for predicting software regressions is proposed that predicts risk of regression for a code change by using software metrics: type and size of the change, number of affected components, dependency metrics, developerpsilas experience and code metrics of the affected components. Expand
Building Scalable Failure-proneness Models Using Complexity Metrics for Large Scale Software Systems
  • T. Bhat, N. Nagappan
  • Computer Science
  • 2006 13th Asia Pacific Software Engineering Conference (APSEC'06)
  • 2006
TLDR
The ability of such models to estimate failure-proneness and provide feedback on the complexity metrics to help guide refactoring and the design rework effort is shown. Expand
Predicting faults using the complexity of code changes
  • A. Hassan
  • Computer Science
  • 2009 IEEE 31st International Conference on Software Engineering
  • 2009
TLDR
A case study shows that the change complexity metrics proposed are better predictors of fault potential in comparison to other well-known historical predictor of faults, i.e., prior modifications and prior faults. Expand
Change Bursts as Defect Predictors
TLDR
An empirical study on Windows Vista found that the features of change bursts have the highest predictive power for defect-prone components and significantly improve upon earlier predictors such as complexity metrics, code churn, or organizational structure. Expand
Improving the effectiveness of test suite through mining historical data
TLDR
The proposed techniques can be effective in identifying test cases that are likely to detect failures and are conducted using an industrial software product, Microsoft Dynamics AX, which contains real faults. Expand
A comparative analysis of the efficiency of change metrics and static code attributes for defect prediction
TLDR
A comparative analysis of the predictive power of two different sets of metrics for defect prediction indicates that for the Eclipse data, process metrics are more efficient defect predictors than code metrics. Expand
Predicting Defects in SAP Products: A Replicated Study
TLDR
It is found that learning and predicting was accurate at package level, but not at product level, and that to learn from past defects, one should separate the product into component clusters with similar functionality, and make separate predictions for each cluster. Expand
Where Do Bugs Come From?
  • A. Zeller
  • Computer Science
  • Electron. Notes Theor. Comput. Sci.
  • 2007
TLDR
The Eclipse bug and version databases are mined to map failures to Eclipse components and the resulting data set lists the defect density of all Eclipse components, and may help to find features that predict how defect-prone a component will be. Expand
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 27 REFERENCES
A Critique of Software Defect Prediction Models
TLDR
H holistic models for software defect prediction, using Bayesian belief networks, are recommended as alternative approaches to the single-issue models used at present and research into a theory of "software decomposition" is argued for. Expand
Exploring defect data from development and customer usage on software modules over multiple releases
  • S. Biyani, P. Santhanam
  • Engineering, Computer Science
  • Proceedings Ninth International Symposium on Software Reliability Engineering (Cat. No.98TB100257)
  • 1998
Traditional defect analyses of software modules have focused on either identifying error prone modules or predicting the number of faults in a module, based on a set of module attributes such asExpand
Use of relative code churn measures to predict system defect density
  • N. Nagappan, T. Ball
  • Computer Science
  • Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005.
  • 2005
TLDR
A technique for early prediction of system defect density using a set of relative code churn measures that relate the amount of churn to other variables such as component size and the temporal extent of churn, which shows that while absolute measures of code chum are poor predictors of defect density, these measures are highly predictive of defectdensity. Expand
Empirical Analysis of CK Metrics for Object-Oriented Design Complexity: Implications for Software Defects
TLDR
Empirical evidence is provided supporting the role of OO design complexity metrics, specifically a subset of the Chidamber and Kemerer (1991, 1994) suite (CK metrics), in determining software defects, and indicates that these metrics are significantly associated with defects. Expand
Mining version histories to guide software changes
TLDR
The ROSE prototype can correctly predict further locations to be changed and show up item coupling that is undetectable by program analysis, and can prevent errors due to incomplete changes. Expand
Predicting Fault-Prone Software Modules in Telephone Switches
TLDR
Applying the method described in this paper makes it possible to use measures at the design phase to predict the most fault-prone modules, which is a valuable complement to linear regression when prediction data is ordinal. Expand
When do changes induce fixes?
TLDR
In a first investigation of the MOZILLA and ECLIPSE history, it turns out that fix-inducing changes show distinct patterns with respect to their size and the day of week they were applied. Expand
Validation of the coupling dependency metric as a predictor of run-time failures and maintenance measures
TLDR
The coupling dependency metric is applied to four case studies and outperformed a wide variety of competing metrics in predicting run-time failures and a number of different maintenance measures, implying that coupling metrics may be good predictors of levels of interaction within a software product. Expand
Optimizing Preventive Service of Software Products
  • E. N. Adams
  • Engineering, Computer Science
  • IBM J. Res. Dev.
  • 1984
TLDR
It is found that most of the benefit to be realized by preventive service comes from removing a relatively small number of high-rate defects that are found early in the service life of the code. Expand
A Validation of Object-Oriented Design Metrics as Quality Indicators
TLDR
Several of Chidamber and Kemerer's OO metrics appear to be useful to predict class fault-proneness during the early phases of the life-cycle and are better predictors than "traditional" code metrics, which can only be collected at a later phase of the software development processes. Expand
...
1
2
3
...