Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/2486788.2486840acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

It's not a bug, it's a feature: how misclassification impacts bug prediction

Published: 18 May 2013 Publication History

Abstract

In a manual examination of more than 7,000 issue reports from the bug databases of five open-source projects, we found 33.8% of all bug reports to be misclassified---that is, rather than referring to a code fix, they resulted in a new feature, an update to documentation, or an internal refactoring. This misclassification introduces bias in bug prediction models, confusing bugs and features: On average, 39% of files marked as defective actually never had a bug. We discuss the impact of this misclassification on earlier studies and recommend manual data validation for future studies.

References

[1]
G. Antoniol, K. Ayari, M. Di Penta, F. Khomh, and Y.-G. Guéhéneuc, “Is it a bug or an enhancement? A text-based approach to classify change requests,” in Proceedings of the 2008 conference of the center for advanced studies on collaborative research: meeting of minds. ACM, 2008, pp. 23:304–23:318.
[2]
T. Zimmermann, R. Premraj, and A. Zeller, “Predicting defects for Eclipse,” in Proceedings of the Third International Workshop on Predictor Models in Software Engineering. IEEE Computer Society, 2007, pp. 9–.
[3]
M. Fischer, M. Pinzger, and H. Gall, “Populating a release history database from version control and bug tracking systems,” in Proceedings of the International Conference on Software Maintenance. IEEE Computer Society, 2003, pp. 23–32.
[4]
D. ˇ Cubrani´c, G. C. Murphy, J. Singer, and K. S. Booth, “Hipikat: A project memory for software development,” IEEE Trans. Softw. Eng., vol. 31, no. 6, pp. 446–465, Jun. 2005.
[5]
J. Śliwerski, T. Zimmermann, and A. Zeller, “When do changes induce fixes?” in Proceedings of the 2005 international workshop on Mining software repositories. ACM, 2005, pp. 1–5.
[6]
S. Kim, T. Zimmermann, E. J. Whitehead Jr., and A. Zeller, “Predicting faults from cached history,” in Proceedings of the 29th international conference on Software Engineering. IEEE Computer Society, 2007, pp. 489–498.
[7]
R. Premraj and K. Herzig, “Network versus code metrics to predict defects: A replication study,” in Proceedings of the 2011 International Symposium on Empirical Software Engineering and Measurement. IEEE Computer Society, 2011, pp. 215–224.
[8]
N. Nagappan, A. Zeller, T. Zimmermann, K. Herzig, and B. Murphy, “Change bursts as defect predictors,” in Proceedings of the 2010 IEEE 21st International Symposium on Software Reliability Engineering. IEEE Computer Society, 2010, pp. 309–318.
[9]
A. Schröter, T. Zimmermann, and A. Zeller, “Predicting component failures at design time,” in Proceedings of the 2006 ACM/IEEE international symposium on Empirical software engineering. ACM, 2006, pp. 18–27.
[10]
T. Zimmermann and N. Nagappan, “Predicting defects using network analysis on dependency graphs,” in Proceedings of the 30th international conference on Software engineering. ACM, 2008, pp. 531–540.
[11]
V. Dallmeier and T. Zimmermann, “Extraction of bug localization benchmarks from history,” in Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering. ACM, 2007, pp. 433–436.
[12]
S. Kim, E. J. Whitehead, Jr., and Y. Zhang, “Classifying software changes: Clean or buggy?” IEEE Trans. Softw. Eng., vol. 34, no. 2, pp. 181–196, Mar. 2008.
[13]
P. Hooimeijer and W. Weimer, “Modeling bug report quality,” in Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering. ACM, 2007, pp. 34–43.
[14]
N. Bettenburg, S. Just, A. Schröter, C. Weiß, R. Premraj, and T. Zimmermann, “Quality of bug reports in eclipse,” in Proceedings of the 2007 OOPSLA workshop on eclipse technology eXchange. ACM, 2007, pp. 21–25.
[15]
N. Bettenburg, S. Just, A. Schröter, C. Weiss, R. Premraj, and T. Zimmermann, “What makes a good bug report?” in Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering. ACM, 2008, pp. 308–318.
[16]
P. J. Guo, T. Zimmermann, N. Nagappan, and B. Murphy, “Characterizing and predicting which bugs get fixed: an empirical study of microsoft windows,” in Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1. ACM, 2010, pp. 495–504.
[17]
P. Runeson, M. Alexandersson, and O. Nyholm, “Detection of duplicate defect reports using natural language processing,” in Proceedings of the 29th international conference on Software Engineering. IEEE Computer Society, 2007, pp. 499–510.
[18]
X. Wang, L. Zhang, T. Xie, J. Anvik, and J. Sun, “An approach to detecting duplicate bug reports using natural language and execution information,” in Proceedings of the 30th international conference on Software engineering, 2008, pp. 461–470.
[19]
C. Weiss, R. Premraj, T. Zimmermann, and A. Zeller, “How long will it take to fix this bug?” in Proceedings of the Fourth International Workshop on Mining Software Repositories. Washington, DC, USA: IEEE Computer Society, 2007, pp. 1–.
[20]
J. J. Amor, G. Robles, and J. M. Gonzalez-Barahona, “Effort estimation by characterizing developer activity,” in Proceedings of the 2006 international workshop on Economics driven software engineering research. ACM, 2006, pp. 3–6.
[21]
H. Zeng and D. Rine, “Estimation of software defects fix effort using neural networks,” in Proceedings of the 28th Annual International Computer Software and Applications Conference - Workshops and Fast Abstracts - Volume 02. IEEE Computer Society, 2004, pp. 20–21.
[22]
E. Giger, M. Pinzger, and H. Gall, “Predicting the fix time of bugs,” in Proceedings of the 2nd International Workshop on Recommendation Systems for Software Engineering. ACM, 2010, pp. 52–56.
[23]
D. ˇ Cubrani´c, “Automatic bug triage using text categorization,” in In SEKE 2004: Proceedings of the Sixteenth International Conference on Software Engineering & Knowledge Engineering. KSI Press, 2004, pp. 92––97.
[24]
J. Anvik and G. C. Murphy, “Reducing the effort of bug report triage: Recommenders for development-oriented decisions,” ACM Trans. Softw. Eng. Methodol., vol. 20, no. 3, pp. 10:1–10:35, aug 2011.
[25]
J. Anvik, L. Hiew, and G. C. Murphy, “Who should fix this bug?” in Proceedings of the 28th international conference on Software engineering. ACM, 2006, pp. 361–370.
[26]
P. J. Guo, T. Zimmermann, N. Nagappan, and B. Murphy, ““Not my bug!” and other reasons for software bug report reassignments,” in Proceedings of the ACM 2011 conference on Computer supported cooperative work. ACM, 2011, pp. 395–404.
[27]
D. ˇ Cubrani´c and G. C. Murphy, “Hipikat: recommending pertinent software development artifacts,” in Proceedings of the 25th International Conference on Software Engineering. IEEE Computer Society, 2003, pp. 408–418.
[28]
A. Mockus, “Missing data in software engineering,” Guide to Advanced Empirical Software Engineering, pp. 185–200, 2008.
[29]
G. A. Liebchen and M. Shepperd, “Data sets and data quality in software engineering,” in Proceedings of the 4th international workshop on Predictor models in software engineering. ACM, 2008, pp. 39–44.
[30]
T. H. D. Nguyen, B. Adams, and A. E. Hassan, “A case study of bias in bug-fix datasets,” in Proceedings of the 2010 17th Working Conference on Reverse Engineering. IEEE Computer Society, 2010, pp. 259–268.
[31]
C. Bird, A. Bachmann, E. Aune, J. Duffy, A. Bernstein, V. Filkov, and P. Devanbu, “Fair and balanced?: bias in bug-fix datasets,” in Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering. ACM, 2009, pp. 121–130.
[32]
A. Bachmann, C. Bird, F. Rahman, P. Devanbu, and A. Bernstein, “The missing links: bugs and bug-fix commits,” in Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering. ACM, 2010, pp. 97–106.
[33]
T. H. Nguyen, B. Adams, and A. E. Hassan, “A Case Study of Bias in Bug-Fix Datasets,” in 2010 17th Working Conference on Reverse Engineering. IEEE Computer Society, 2010, pp. 259–268.
[34]
C. Bird, A. Bachmann, F. Rahman, and A. Bernstein, “Linkster: enabling efficient manual inspection and annotation of mined data,” in Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering. ACM, 2010, pp. 369–370.
[35]
R. Wu, H. Zhang, S. Kim, and S.-C. Cheung, “Relink: recovering links between bugs and changes,” in Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering. ACM, 2011, pp. 15–25.
[36]
S. Kim, H. Zhang, R. Wu, and L. Gong, “Dealing with noise in defect prediction,” in Proceeding of the 33rd international conference on Software engineering - ICSE ’11. New York, New York, USA: ACM Press, 2011, p. 481.

Cited By

View all
  • (2024)A Meta-Study of Software-Change IntentionsACM Computing Surveys10.1145/366148456:12(1-41)Online publication date: 25-Apr-2024
  • (2021)How Empirical Research Supports Tool DevelopmentProceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1145/3475716.3484488(1-3)Online publication date: 11-Oct-2021
  • (2021)The Impact of Dormant Defects on Defect Prediction: A Study of 19 Apache ProjectsACM Transactions on Software Engineering and Methodology10.1145/346789531:1(1-26)Online publication date: 28-Sep-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '13: Proceedings of the 2013 International Conference on Software Engineering
May 2013
1561 pages
ISBN:9781467330763

Sponsors

Publisher

IEEE Press

Publication History

Published: 18 May 2013

Check for updates

Qualifiers

  • Research-article

Conference

ICSE '13
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)1
Reflects downloads up to 13 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)A Meta-Study of Software-Change IntentionsACM Computing Surveys10.1145/366148456:12(1-41)Online publication date: 25-Apr-2024
  • (2021)How Empirical Research Supports Tool DevelopmentProceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1145/3475716.3484488(1-3)Online publication date: 11-Oct-2021
  • (2021)The Impact of Dormant Defects on Defect Prediction: A Study of 19 Apache ProjectsACM Transactions on Software Engineering and Methodology10.1145/346789531:1(1-26)Online publication date: 28-Sep-2021
  • (2021)Mining software repositories with a collaborative heuristic repositoryProceedings of the 43rd International Conference on Software Engineering: New Ideas and Emerging Results10.1109/ICSE-NIER52604.2021.00030(106-110)Online publication date: 25-May-2021
  • (2021)Software ticks need no specificationsProceedings of the 43rd International Conference on Software Engineering: New Ideas and Emerging Results10.1109/ICSE-NIER52604.2021.00021(61-65)Online publication date: 25-May-2021
  • (2020)An Empirical Study on Regular Expression BugsProceedings of the 17th International Conference on Mining Software Repositories10.1145/3379597.3387464(103-113)Online publication date: 29-Jun-2020
  • (2020)The SmartSHARK ecosystem for software repository miningProceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Companion Proceedings10.1145/3377812.3382139(25-28)Online publication date: 27-Jun-2020
  • (2020)Detection of hidden feature requests from massive chat messages via deep siamese networkProceedings of the ACM/IEEE 42nd International Conference on Software Engineering10.1145/3377811.3380356(641-653)Online publication date: 27-Jun-2020
  • (2020)A deep multitask learning approach for requirements discovery and annotation from open forumProceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering10.1145/3324884.3416627(336-348)Online publication date: 21-Dec-2020
  • (2019)An Empirical Study on Learning Bug-Fixing Patches in the Wild via Neural Machine TranslationACM Transactions on Software Engineering and Methodology10.1145/334054428:4(1-29)Online publication date: 2-Sep-2019
  • 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