skip to main content
10.1145/1414004.1414038acmconferencesArticle/Chapter ViewAbstractPublication PagesesemConference Proceedingsconference-collections
research-article

Iterative identification of fault-prone binaries using in-process metrics

Published: 09 October 2008 Publication History

Abstract

Code churn, the amount of code change taking place within a software unit over time, has been correlated with fault-proneness in software systems. We investigate the use of code churn and static metrics collected at regular time intervals during the development cycle to predict faults in an iterative, in-process manner. We collected 159 churn and structure metrics from six, four-month snapshots of a 1 million LOC Microsoft product. The number of software faults fixed during each period is recorded per binary module. Using stepwise logistic regression, we create a prediction model to identify fault-prone binaries using three parameters: code churn (the number of new and changed blocks); class Fan In and class Fan Out (normalized by lines of code). The iteratively-built model is 80.0% accurate at predicting fault-prone and non-fault-prone binaries. These fault-prediction models have the advantage of allowing the engineers to observe how their fault-prediction profile evolves over time.

References

[1]
Alfred V. Aho, Ravi Sethi, and J. D. Ullman, Compilers Principles, Techniques, and Tools. Reading, MA: Addison-Wesley, 1986.
[2]
V. Basili, Briand, L., Melo, W., "A Validation of Object Oriented Design Metrics as Quality Indicators," IEEE Transactions on Software Engineering, vol. Vol. 22, pp. 751--761, 1996.
[3]
L. C. Briand, Wuest, J., Daly, J. W., Porter, D. V., "Exploring the Relationship between Design Measures and Software Quality in Object Oriented Systems," Journal of Systems and Software, vol. Vol. 51, pp. 245--273, 2000.
[4]
L. C. Briand, Wuest, J., Ikonomovski, S., Lounis, H., "Investigating quality factors in object-oriented designs: an industrial case study," in ICSE, 1999, pp. 345--354.
[5]
S. R. Chidamber, Kemerer, C. F., "A Metrics Suite for Object Oriented Design," IEEE Transactions on Software Engineering, vol. 20, pp. 476--493, 1994.
[6]
K. El Emam, S. Benlarbi, N. Goel, and S. N. Rai, "The Confounding Effect of Class Size on the Validity of Object-Oriented Metrics," IEEE Transactions on Software Engineering, vol. 27, pp. 630--650, July 2001.
[7]
T. L. Graves, Karr, A. F., Marron, J. S., Siy, H., "Predicting Fault Incidence Using Software Change History," IEEE Transactions on Software Engineering, vol. 26, pp. 653--661, 2000.
[8]
J. E. Jackson, A User's Guide to Principal Components. New York: Wiley, 1991.
[9]
A. Mockus, Zhang, P., Li, P., "Drivers for customer perceived software quality," in International Conference on Software Engineering (ICSE 05), St. Louis, MO, 2005, pp. 225--233.
[10]
N. Nagappan, Ball, T., "Use of Relative Code Churn Measures to Predict System Defect Density," in International Conference on Software Engineering (ICSE), St. Louis, MO, 2005, pp. 284--292.
[11]
N. Nagappan, Ball, T., Murphy, B., "Using Historical In-Process and Product Metrics for Early Estimation of Software Failures," in International Symposium on Software Reliability Engineering, 2006, pp. 62--74.
[12]
M. C. Ohlsson, von Mayrhauser, A., McGuire, B., Wohlin, C., "Code Decay Analysis of Legacy Software through Successive Releases," in IEEE Aerospace Conference, 1999, pp. 69--81.
[13]
T. J. Ostrand, Weyuker, E. J, Bell, R. M., "Where the Bugs Are," in the 2004 ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA), 2004, pp. 86--96.
[14]
R. Subramanyam, Krishnan, M. S., "Empirical Analysis of CK Metrics for Object-Oriented Design Complexity: Implications for Software Defects," IEEE Transactions on Software Engineering, vol. Vol. 29, pp. 297--310, 2003.
[15]
M.-H. Tang, Kao, M.-H., Chen, M.-H., "An empirical study on object-oriented metrics," in Sixth International Software Metrics Symposium, 1999, pp. 242--249.
[16]
M. A. Vouk, Tai, K. C., "Multi-Phase Coverage- and Risk-Based Software Reliability Modeling," in CASCON '93, 1993, pp. 513--523.

Cited By

View all
  • (2024)The untold impact of learning approaches on software fault-proneness predictions: an analysis of temporal aspectsEmpirical Software Engineering10.1007/s10664-024-10454-829:4Online publication date: 8-Jun-2024
  • (2023)Аналіз проблеми застосування методів машинного навчання для оцінювання та прогнозування дефектів програмного забезпеченняScientific Bulletin of UNFU10.36930/4033031633:3(110-116)Online publication date: 25-May-2023
  • (2022)Cross-Project Defect Prediction: A Literature ReviewIEEE Access10.1109/ACCESS.2022.322118410(118697-118717)Online publication date: 2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ESEM '08: Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement
October 2008
374 pages
ISBN:9781595939715
DOI:10.1145/1414004
  • General Chair:
  • Dieter Rombach,
  • Program Chairs:
  • Sebastian Elbaum,
  • Jürgen Münch
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 October 2008

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. code churn
  2. fault prediction
  3. regression
  4. statistical models

Qualifiers

  • Research-article

Conference

ESEM '08
Sponsor:

Acceptance Rates

Overall Acceptance Rate 130 of 594 submissions, 22%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)The untold impact of learning approaches on software fault-proneness predictions: an analysis of temporal aspectsEmpirical Software Engineering10.1007/s10664-024-10454-829:4Online publication date: 8-Jun-2024
  • (2023)Аналіз проблеми застосування методів машинного навчання для оцінювання та прогнозування дефектів програмного забезпеченняScientific Bulletin of UNFU10.36930/4033031633:3(110-116)Online publication date: 25-May-2023
  • (2022)Cross-Project Defect Prediction: A Literature ReviewIEEE Access10.1109/ACCESS.2022.322118410(118697-118717)Online publication date: 2022
  • (2021)Software Fault-Proneness Analysis based on Composite Developer-Module NetworksIEEE Access10.1109/ACCESS.2021.31284389(155314-155334)Online publication date: 2021
  • (2019)Predicting pull request completion time: a case study on large scale cloud servicesProceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3338906.3340457(874-882)Online publication date: 12-Aug-2019
  • (2018)Building Defect Prediction Models in PracticeComputer Systems and Software Engineering10.4018/978-1-5225-3923-0.ch014(324-350)Online publication date: 2018
  • (2018)Exploring the relationship of a file's history and its fault-pronenessInformation and Software Technology10.1016/j.infsof.2009.11.01052:5(539-558)Online publication date: 29-Dec-2018
  • (2018)Which process metrics can significantly improve defect prediction models? An empirical studySoftware Quality Journal10.1007/s11219-014-9241-723:3(393-422)Online publication date: 24-Dec-2018
  • (2014)Building Defect Prediction Models in PracticeHandbook of Research on Emerging Advancements and Technologies in Software Engineering10.4018/978-1-4666-6026-7.ch024(540-565)Online publication date: 2014
  • (2012)A Systematic Literature Review on Fault Prediction Performance in Software EngineeringIEEE Transactions on Software Engineering10.1109/TSE.2011.10338:6(1276-1304)Online publication date: 1-Nov-2012
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media