Software Defect Classification: A Comparative Study of Rough-Neuro-fuzzy Hybrid Approaches with Linear and Non-linear SVMs

  • Rajen Bhatt
  • Sheela Ramanna
  • James F. Peters
Part of the Studies in Computational Intelligence book series (SCI, volume 174)


This chapter is an extension of our earlier work in combining and comparing rough hybrid approaches with neuro-fuzzy and partial decision trees in classifying software defect data. The extension includes a comparison of our earlier results with linear and non-linear support vector machines (SVMs) in classifying defects. We compare SVM classification results with partial decision trees, neuro-fuzzy decision trees(NFDT), LEM2 algorithm based on rough sets, rough-neuro-fuzzy decision trees(R-NFDT), and fuzzy-rough classification trees(FRCT). The analyses of the results include statistical tests for classification accuracy. The experiments were aimed at not only comparing classification accuracy, but also collecting other useful software quality indicators such as number of rules, number of attributes (metrics) and the type of metrics (design vs. code level). The contribution of this chapter is a comprehensive comparative study of several computational intelligence methods in classifying software defect data. The different methods also point to the type of metrics data that ought to be collected and whether the rules generated by these methods can be easily interpreted.


Classification fuzzy-rough classification trees neuro-fuzzy decision trees rough sets software defects support vector machines 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bhatt, R.B., Gopal, M.: Neuro-fuzzy decision trees. International Journal of Neural Systems 16(1), 63–78 (2006)CrossRefGoogle Scholar
  2. 2.
    Bhatt, R.B.: Fuzzy-Rough Approach to Pattern Classification- Hybrid Algorithms and Optimization, Ph.D. Dissertation, Electrical Engineering Department, Indian Institute of Technology Delhi, India (2006)Google Scholar
  3. 3.
    Bhatt, R.B., Gopal, M.: On the Extension of Functional Dependency Degree from Crisp to Fuzzy Partitions. Pattern Recognition Letters 27(5), 487–491 (2006)CrossRefGoogle Scholar
  4. 4.
    Bhatt, R.B., Gopal, M.: Induction of Weighted and Interpretable Fuzzy Classification Rules for Medical Informatics. International Journal of Systemics, Cybernetics, and Informatics 3(1), 20–26 (2006)Google Scholar
  5. 5.
    Bezdek, J.C.: Pattern Recognition with Fuzzy Objective Function Algorithms. Plenum, New York (1981)zbMATHGoogle Scholar
  6. 6.
    Burges, C.J.: A Tutorial on Support Vector Machines for Pattern Recognition. Data Mining and Knowledge Discovery 2(2), 955–974 (1998)CrossRefGoogle Scholar
  7. 7.
    Chidamber, S.R., Kemerer, F.C.: A metrics suite for object-oriented design. IEEE Trans. Soft. Eng. 20(6), 476–493 (1994)CrossRefGoogle Scholar
  8. 8.
    Dick, S., Meeks, A., Last, M., Bunke, H., Kandel, A.: Data mining in software metrics databases. Fuzzy Sets and Systems 145, 81–110 (2004)CrossRefMathSciNetGoogle Scholar
  9. 9.
    Dubois, D., Prade, H.: Rough Fuzzy Sets and Fuzzy Rough Sets. Internation Journal of General Systems 17(2-3), 191–209 (1990)zbMATHCrossRefGoogle Scholar
  10. 10.
    Halstead, M.H.: Elements of Software Science. Elsevier, New York (1977)zbMATHGoogle Scholar
  11. 11.
    Hogg, R.V., Tanis, E.A.: Probability and Statistical Inference. Macmillan Publishing Co., Inc., New York (1977)zbMATHGoogle Scholar
  12. 12.
    Hsu, C.W., Lin, C.J.: A Comparison on methods for multi-class support vector methods, Technical report, Department of Computer Science and Information Engineering, National Taiwan University, Taipei, Taiwan (2001)Google Scholar
  13. 13.
    Khoshgoftaar, T.M., Allen, E.B.: Neural networks for software quality prediction. In: Pedrycz, W., Peters, J.F. (eds.) Computational Intelligence in Software Engineering, pp. 33–63. World Scientific, River Edge (1998)Google Scholar
  14. 14.
    MATLAB User’s Guide. The Mathworks, Inc., Natick, MA 01760 (1994-2007)Google Scholar
  15. 15.
    McCabe, T.: A complexity measure. IEEE Trans. on Software Engineering SE 2(4), 308–320 (1976)CrossRefMathSciNetGoogle Scholar
  16. 16.
    Nguyen, H.S., Nguyen, S.H.: Discretization methods in data mining. In: Polkowski, L., Skowron, A. (eds.) Rough Sets in Knowledge Discovery, vol. 1, pp. 451–482. Physica-Verlag, Berlin (1998a)Google Scholar
  17. 17.
    Pawlak, Z.: Rough sets. International J. Comp. Information Science 11(3), 341–356 (1982)zbMATHCrossRefMathSciNetGoogle Scholar
  18. 18.
    Peters, J.F., Ramanna, S.: Towards a software change classification system: A rough set approach. Software Quality Journal 11, 121–147 (2003)CrossRefGoogle Scholar
  19. 19.
    Peters, J.F., Pedrycz, W.: Software Engineering: An Engineering Approach. John Wiley and Sons, New York (2000)Google Scholar
  20. 20.
    Ramanna, S., Bhatt, R., Biernot, P.: A rough-hybrid approach to software defect classification. In: An, A., Stefanowski, J., Ramanna, S., Butz, C.J., Pedrycz, W., Wang, G. (eds.) RSFDGrC 2007. LNCS, vol. 4482, pp. 79–86. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  21. 21.
    Ramanna, S., Bhatt, R.: Software defect classification: A comparative study with rough hybrid approaches. In: Kryszkiewicz, M., Peters, J.F., Rybinski, H., Skowron, A. (eds.) RSEISP 2007. LNCS, vol. 4585, pp. 630–638. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  22. 22.
    Safavian, S.R., Landgrebe, D.: A survey of decision tree classifier methodology. IEEE Transactions on Systems, Man and Cybernetics 21(3), 660–674 (1991)CrossRefMathSciNetGoogle Scholar
  23. 23.
    Quinlan, J.R.: Induction of decision trees. Machine Learning 1(1), 81–106 (1986)Google Scholar
  24. 24.
    Quinlan, J.R.: Decision trees and decision making. IEEE Transactions on Systems, Man and Cybernetics 20(2), 339–346 (1990)CrossRefGoogle Scholar
  25. 25.
    Quinlan, J.R.: C.4.5 Programs for machine learning. Morgan Kauffmann, San Mateo (1993)Google Scholar
  26. 26.
    Tsang, E.C.C., Yeung, D.S., Lee, J.W.T., Huang, D.M., Wang, X.Z.: Refinement of generated fuzzy production rules by using a fuzzy neural network. IEEE Trans. on Transactions on Systems, Man and Cybernetics 34(1), 409–418 (2004)CrossRefGoogle Scholar
  27. 27.
    Gryzmala-Busse, J.W.: A New Version of the Rule Induction System LERS. Fundamenta Informaticae 31(1), 27–39 (1997)Google Scholar
  28. 28.
    Wang, X.Z., Yeung, D.S., Tsang, E.C.C.: A comparative study on heuristic algorithms for generating fuzzy decision trees. IEEE Trans. on Transactions on Systems, Man and Cybernetics 31, 215–226 (2001)CrossRefGoogle Scholar
  29. 29.
    Yuan, X., Khoshgoftaar, T.M., Allen, E.B., Ganesan, K.: An application of fuzzy clustering to software quality prediction. In: Proc. 3rd IEEE Symp. on Application-Specific Software Engineering Technology, pp. 85–90 (2000)Google Scholar
  30. 30.
    Yuan, Y., Shaw, M.J.: Induction of fuzzy decision trees. Fuzzy Sets and Systems 69, 125–139 (1995)CrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Rajen Bhatt
    • 1
  • Sheela Ramanna
    • 2
  • James F. Peters
    • 3
  1. 1.Samsung India Software CenterNoidaIndia
  2. 2.Department of Applied Computer ScienceUniversity of WinnipegWinnipegCanada
  3. 3.Computational Intelligence Laboratory Electrical and Computer Engineering DepartmentUniversity of ManitobaWinnipegCanada

Personalised recommendations