Advertisement

Increasing the Accuracy of Software Fault Prediction Using Majority Ranking Fuzzy Clustering

  • Golnoush AbaeiEmail author
  • Ali Selamat
Part of the Studies in Computational Intelligence book series (SCI, volume 569)

Abstract

Although many machine-learning and statistical techniques have been proposed widely for defining fault prone modules during software fault prediction, but this area have yet to be explored as still there is a room for stable and consistent model with high accuracy. In this paper, a new method is proposed to increase the accuracy of fault prediction based on fuzzy clustering and majority ranking. In the proposed method, the effect of irrelevant and inconsistent modules on fault prediction is decreased by designing a new framework, in which the entire project’s modules are clustered. The obtained results showed that fuzzy clustering could decrease the negative effect of irrelevant modules on accuracy of estimations. We used eight data sets from NASA and Turkish white-goods software to evaluate our results. Performance evaluation in terms of false positive rate, false negative rate, and overall error showed the superiority of our model compared to other predicting strategies. Our proposed majority ranking fuzzy clustering approach showed between 3% to 18% and 1% to 4% improvement in false negative rate and overall error respectively compared to other available proposed models (ACF and ACN) in at least half of the testing cases. The results show that our systems can be used to guide testing effort by prioritizing the module’s faults in order to improve the quality of software development and software testing in a limited time and budget.

Keywords

Software fault prediction Fuzzy clustering False negative rate (FNR) False positive rate (FPR) 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
  2. 2.
    Hall, T., Beecham, S., Bowes, D., Gray, D., Counsell, S.: A systematic literature review on fault prediction performance in software engineering. IEEE Trans. Softw. Eng. 38(6) (2011)Google Scholar
  3. 3.
    Catal, C., Sevim, U., Diri, B.: Clustering and metrics thresholds based software fault prediction of unlabeled program modules. In: Sixth International Conference onInformation Technology: New Generations, ITNG 2009, pp. 199–204 (2009)Google Scholar
  4. 4.
    Zadeh, L.A.: Fuzzy sets. J. Information and Control. 8, 338–353 (1965)CrossRefzbMATHMathSciNetGoogle Scholar
  5. 5.
    Catal, C.: Software fault prediction: A literature review and current trends. J. Expert Syst. Appl. 38(4), 4626–4636 (2011)CrossRefGoogle Scholar
  6. 6.
    Catal, C., Diri, B.: A systematic review of software fault prediction. J. Expert Syst. Appl. 36, 7346–7354 (2009)CrossRefGoogle Scholar
  7. 7.
    Evett, M., Khoshgoftar, T., Chien, P.D., Allen, E.: GP-based software quality prediction. In: Proceedings of the Third Annual Conference Genetic Programming, pp. 60–65 (1998)Google Scholar
  8. 8.
    Koprinska, I., Poon, J., Clark, J., Chan, J.: Learning to classify e-mail. Inf. Sci 177, 2167–2187 (2007)CrossRefGoogle Scholar
  9. 9.
    Thwin, M.M.T., Quah, T.S.: Application of neural networks for software quality prediction using object-oriented metrics. J. Syst. Softw. 76, 147–156 (2005)CrossRefGoogle Scholar
  10. 10.
    Menzies, T., Greenwald, J., Frank, A.: Data mining static codeattributes to learn defect predictors. IEEE Trans. Softw. Eng. 33(1), 2–13 (2007)CrossRefGoogle Scholar
  11. 11.
    El Emam, K., Benlarbi, S., Goel, N., Rai, S.: Comparing case-based reasoning classifiers for predicting high risk software components. J. Syst. Softw. 55(3), 301–320 (2001)CrossRefGoogle Scholar
  12. 12.
    Yuan, X., Khoshgoftaar, T.M., Allen, E.B., Ganesan, K.: An application of fuzzy clustering to software quality prediction. In: Proceedings of the Third IEEE Symposium on Application-Specific Systems and Software Engineering Technology. IEEE Computer Society, Washington, DC (2000)Google Scholar
  13. 13.
    Catal, C., Diri, B.: Investigating the effect of dataset size, metrics sets, and feature selection techniques on software fault prediction problem. Inf. Sci. 179(8), 1040–1058 (2009)CrossRefGoogle Scholar
  14. 14.
    Catal, C., Diri, B.: Software fault prediction with object-oriented metrics based artificial immune recognition system. In: Münch, J., Abrahamsson, P. (eds.) PROFES 2007. LNCS, vol. 4589, pp. 300–314. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  15. 15.
    Catal, C., Diri, B.: Software defect prediction using artificial immune recognition system. In: Proceedings of the 25th Conference on IASTED International Multi-Conference: Software Engineering, pp. 285–290 (2007)Google Scholar
  16. 16.
    Zhang, H., Zhang, X.: Comments on data mining static code attributes to learn defect predictors. IEEE Trans. Softw. Eng. 33(9), 635–636 (2007)CrossRefzbMATHGoogle Scholar
  17. 17.
    Menzies, T., Dekhtyar, A., Di Stefano, J., Greenwald, J.: Problems with precision: a response to comments on data mining static code attributes to learn defect predictors. IEEE Trans. Softw. Eng. 33(9), 637–640 (2007)CrossRefGoogle Scholar
  18. 18.
    Mahaweerawat, A., Sophasathit, P., Lursinsap, C.: Software Fault Prediction Using Fuzzy Clustering and Radial-Basis Function Network. In: Proceedings of the International Conference on Intelligent Technologies, pp. 304–313. InTech/VJFuzzy, Vietnam (2002)Google Scholar
  19. 19.
    Mahaweerawat, A., Sophatsathit, P., Lursinsap, C.: Adaptive self-organizing map clustering for software fault prediction. In: Fourth International Joint Conference on Computer Science and Software Engineering, KhonKaen, Thailand, pp. 35–41 (2007)Google Scholar
  20. 20.
    Zhong, S., Khoshgoftaar, T.M., Seliya, N.: Unsupervised Learning for Expert-Based Software Quality Estimation. In: HASE, pp. 149–155 (2004)Google Scholar
  21. 21.
    Zhong, S., Khoshgoftaar, T.M., Seliya, N.: Analyzing software measurement data with clustering techniques. IEEE Intell. Syst. 19, 20–27 (2004)CrossRefGoogle Scholar
  22. 22.
    Yuan, X., Khoshgoftaar, T.M., Allen, E.B., Ganesan, K.: An application of fuzzy clustering to software quality prediction. In: Proceedings of 3rd IEEE Symposium onApplication-Specific Systems and Software Engineering Technology, pp. 85–90 (2000)Google Scholar
  23. 23.
    Alan, O., Catal, C.: Thresholds based outlier detection approach for mining class outliers:An empirical case study on software measurement datasets. J. Expert Syst. Appl. 38, 3440–3445 (2011)CrossRefGoogle Scholar
  24. 24.
    Rodriguez, D., Ruiz, R., Riquelme, J.C., Harrison, R.: A study of subgroup discovery approaches for defect prediction. Inf. Softw. Technol. 55(10), 1810–1822 (2013)CrossRefGoogle Scholar
  25. 25.
    Dunn, J.C.: A fuzzy relative of the ISODATA process and its use in detecting compact well-separated clusters, pp. 32–57 (1973)Google Scholar
  26. 26.
    Bezdec, J.C.: Pattern recognition with fuzzy objective functionalgorithms. Plenum Press, New York (1981)CrossRefGoogle Scholar
  27. 27.
    Promise Software Engineering Repository, http://promisedata.googlecode.com/svn/trunk/defect (retrieved August 12, 2012)
  28. 28.
    I. C. Group. Integrated Software Metrics, Inc. (ISM), http://innovawv.org/success/ism.asp
  29. 29.
    Abaei, G., Selamat, A.: A survey on software fault detection based on different prediction approaches. Vietnam J. Comput. Sci., 1–17 (2013)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Software Engineering Research Group, Faculty of ComputingUniversity Technology Malaysia (UTM)JohorMalaysia
  2. 2.UTM-IRDA Digital Media Centre, K-Economy Research Alliance UTM & Software Engineering Research Group, Faculty of ComputingUniversity Technology Malaysia (UTM)JohorMalaysia

Personalised recommendations