Advertisement

Analysing Bug Prediction Capabilities of Static Code Metrics in Open Source Software

  • Javed Ferzund
  • Syed Nadeem Ahsan
  • Franz Wotawa
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5338)

Abstract

Open Source Softwares provide a rich resource of empirical research in software engineering. Static code metrics are a good indicator of software quality and maintainability. In this work we have tried to answer the question whether bug predictors obtained from one project can be applied to a different project with reasonable accuracy. Two open source projects Firefox and Apache HTTP Server (AHS) are used for this study. Static code metrics are calculated for both projects using in-house software and the bug information is obtained from bug databases of these projects. The source code files are classified as clean or buggy using the Decision tree classifier. The classifier is trained on metrics and bug data of Firefox and tested on Apache HTTP Server and vice versa. The results obtained vary with different releases of these projects and can be as good as 92 % of the files correctly classified and as poor as 68 % of the files correctly classified by the trained classifier.

Keywords

Bug predictor static code metrics open source software empirical software engineering 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    anonymous@cvs-mirror.mozilla.orgGoogle Scholar
  2. 2.
  3. 3.
  4. 4.
  5. 5.
  6. 6.
    Ahsan, S.N., Ferzund, J., Wotawa, F.: A Database for the Analysis of Program Change Patterns. In: Proceedings of the 4th International Conference on Networked Computing and Advanced Information Management, Gyeongju, Korea, September 2-4 (2008)Google Scholar
  7. 7.
    Aljahdali, S.H., Sheta, A., Rine, D.: Prediction of software reliability: a comparison between regression and neural network non-parametric models. In: ACS/IEEE International Conference on Computer Systems and Applications, June 25-29, 2001, pp. 470–473 (2001)Google Scholar
  8. 8.
    Chidamber, S.R., Kemerer, C.F.: A Metrics Suite for Object Oriented Design. IEEE Transactions on Software Engineering 20(6), 476–493 (1994)CrossRefGoogle Scholar
  9. 9.
    Fenton, N., Neil, M.: A Critique of Software Defect Prediction Models. IEEE Transactions on Software Engineering 25(5) (September 1999)Google Scholar
  10. 10.
    Ferzund, J., Ahsan, S.N., Wotawa, F.: Automated Classification of Faults in Programms using Machine Learning Techniques. In: Artificial Intelligence Techniques in Software Engineering Workshop, July 21 (2008)Google Scholar
  11. 11.
    Gyimothy, T., Ferenc, R., Siket, I.: Empirical Validation of Object-Oriented Metrics on Open Source Software for Fault Prediction. IEEE Trans. Software Eng. 31(10), 897–910 (2005)CrossRefGoogle Scholar
  12. 12.
    Koru, A.G., Liu, H.: Building effective defect-prediction models in practice. Software, IEEE 22(6), 23–29 (2005)CrossRefGoogle Scholar
  13. 13.
    Nagappan, N., Ball, T., Zeller, A.: Mining Metrics to Predict Component Failures. In: Proceedings of the 28th international conference on Software engineering, Shanghai, China (November 2005)Google Scholar
  14. 14.
    Neumann, D.E.: An Enhanced Neural Network Technique for Software Risk Analysis. IEEE Transactions on Software Engineering (September 2002)Google Scholar
  15. 15.
    Ostrand, T.J., Weyuker, E.J., Bell, R.M.: Predicting the Location and Number of Faults in Large Software Systems. IEEE Trans. Software Eng. 31(4), 340–355 (2005)CrossRefGoogle Scholar
  16. 16.
    Porter, A., Selby, R.: Empirically-guided software development using metric-based classification trees. IEEE Software 7, 46–54 (1990)CrossRefGoogle Scholar
  17. 17.
    Venkata, U.B., Challagulla, B., Bastani Farokh, B., I-Ling, Y.: Empirical Assessment of machine Learning based Software Defect Prediction Techniques. In: Proceedings of the 10th IEEE International Workshop on Object Oriented Real- Time Dependable Systems (WORDS 2005). IEEE, Los Alamitos (2005)Google Scholar
  18. 18.
    Witten, I.H., Frank, E.: Data Mining: Practical Machine Learning Tools and Techniques. Morgan Kaufmann, San Francisco (2005)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Javed Ferzund
    • 1
  • Syed Nadeem Ahsan
    • 1
  • Franz Wotawa
    • 1
  1. 1.Institute for Software TechnologyTechnische Universität GrazAustria

Personalised recommendations