Skip to main content
Log in

Investigation of relationship between object-oriented metrics and change proneness

  • Original Article
  • Published:
International Journal of Machine Learning and Cybernetics Aims and scope Submit manuscript

Abstract

Software is the heartbeat of modern day technology. In order to keep up with the pace of modern day expansion, change in any software is inevitable. Defects and enhancements are the two main reasons for a software change. The aim of this paper is to study the relationship between object oriented metrics and change proneness. Software prediction models based on these results can help us identify change prone classes of a software which would lead to more rigorous testing and better results. In the previous research, the use of machine learning methods for predicting faulty classes was found. However till date no study determines the effectiveness of machine learning methods for predicting change prone classes. Statistical and machine learning methods are two different techniques for software quality prediction. We evaluate and compare the performance of these machine learning methods with statistical method (logistic regression). The results are based on three chosen open source software, written in java language. The performance of the predicted models was evaluated using receiver operating characteristic analysis. The study shows that machine learning methods are comparable to regression techniques. Testing based on change proneness of a software leads to better quality by targeting the most change prone classes. Thus, the developed models can be used to reduce the probability of defect occurrence and we commit ourselves to better maintenance.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

References

  1. Li W, Henry S, Kafura D, Schulman R (1995) Measuring object-oriented design. J Object Oriented Program 8(4):48–55

    Google Scholar 

  2. Chidamber SR, Kemerer CF (1994) A metrics suite for object oriented design. IEEE Trans Softw Eng 20(6):476–493

    Article  Google Scholar 

  3. Lorenz M, Kidd J (1994) Object-oriented software metrics. In: Prentice Hall object-oriented series. Prentice Hall, Englewood Cliffs

  4. Henderson-sellers B (1996) Object-oriented metrics. In: Measures of complexity. Prentice Hall, New Jersey

  5. Aggarwal KK, Singh Y, Kaur A, Malhotra R (2006) Empirical study of object-oriented metrics. J Object Technol 5(8):149–173

    Article  Google Scholar 

  6. Li W, Henry S (1993) Object oriented metrics that predict maintainability. J Syst Softw 23:111–122

    Article  Google Scholar 

  7. Briand L, Wust J, Lounis H (2001) Replicated case studies for investigating quality factors in object oriented designs. Empir Softw Eng Int J 6:11–58

    Article  MATH  Google Scholar 

  8. Basili VR, Briand LC, Melo WL (1996) A validation of object-oriented design metrics as quality indicators. IEEE Trans Softw Eng 22(10):751–761

    Article  Google Scholar 

  9. Aggarwal KK, Singh Y, Kaur A, Malhotra R (2009) Empirical analysis for investigating the effect of object-oriented metrics on fault proneness: a replicated case study. Softw Process Improv Pract 16(1):39–62

    Article  Google Scholar 

  10. Arisholn E, Briand LC (2006) Predicting fault prone components in a Java legacy system. In: Proceeding of 2006 ACM/IEEE international symposium on empirical software engineering, pp 8–17

  11. Briand L, Wust J, Daly J, Porter DV (2000) Exploring the relationships between design measures and software quality in object-oriented systems. J Syst Softw 51(3):245–273

    Article  Google Scholar 

  12. Singh Y, Kaur A, Malhotra R (2010) Empirical validation of object-oriented metrics for predicting fault proneness. Softw Qual J 18(1):3–35

    Article  Google Scholar 

  13. Chidamber SR, Darcy DP, Kemerer CF (1998) Managerial use of metrics for object-oriented software: an exploratory analysis. IEEE Trans Softw Eng 24(8):629–639

    Article  Google Scholar 

  14. Cartwright M, Shepperd M (2000) An empirical investigation of an object-oriented software system. IEEE Trans Softw Eng 26(8):786–796

    Article  Google Scholar 

  15. Aggarwal KK, Singh Y (2007) Software engineering, 2nd edn. New Age International Publishers, Delhi

  16. Parnas DL (2001) Some software engineering principles. In: Software fundamentals: collected papers by David L Parnas, pp 257–266

  17. Han AR, Jeon S, Bae D, Hong J (2008) Behavioral dependency measurement for change proneness prediction in UML 2.0 design models, in computer software and applications 32nd annual IEEE international

  18. D’Ambros M, Lanza M, Robbes R (2009) On the relationship between change coupling and software defects in 16th working conference on reverse engineering, pp 135–144

  19. Sharafat AR, Tavildari L (2007) Change prediction in object oriented software systems: a probabilistic approach in 11th European conference on software maintenance and reengineering

  20. Chaumum MA, Kabaili H, Keller RK, Lustman F (1999) A change impact model for changeability assessment in object oriented software systems in third european conference on software maintenance and reengineering, pp 130

  21. Zhou Y, Leung H, Xu B (2009) Examining the potentially confounding effect of class size on the associations between object oriented metrics and change proneness. IEEE Trans Softw Eng 35(5):607–623

    Google Scholar 

  22. Bieman J, Straw G, Wang H, Munger PW, Alexander RT (2003) Design patterns and change proneness: an examination of five evolving systems. In: The proceeding of 9th international software metrics symposium

  23. Tsantalis N, Chatzigeorgiou A, Stephanides G (2005) Predicting the probability of change in object oriented systems. IEEE Trans Softw Eng 31(7):601–614

    Article  Google Scholar 

  24. Hosmer D, Lemeshow S (1989) Applied logistic regression. Wiley, New York

  25. Bashir Musa A (2012) Comparative study on classification performance between support vector machine and logistic regression. Int J Mach Learn Cyber. doi:10.1007/s13042-012-0068-x

  26. Sidorov G, Koeppen M, Cruz-Corts N (2011) Recent advances in machine learning techniques and applications. Int J Mach Learn Cyber 2(3):123–124

    Article  Google Scholar 

  27. Hall MA (2000) Correlation-based feature selection for discrete and numeric class machine learning. In: Proceeding of the seventeenth international conference on machine learning, pp 359–366

  28. Michalak K, Kwasnicka H (2006) Correlation-based feature selection strategy in neural classification. In: Sixth international conference on intelligent systems design and applications, vol 1, pp 741–746

  29. Breiman L (1996) Bagging predictors. Mach Learn 24:123–140

    MathSciNet  MATH  Google Scholar 

  30. Bengio S (2006) Statistical machine learning from data ensembles. IDIAP Research Institute, Martigny, January 27

  31. Breiman L (2001) Random forests. Mach Learn 45(1):5–32

    Article  MATH  Google Scholar 

  32. Biau G, Devroye L, Lugosi G (2008) Consistency of random forests and other averaging classifiers. J Mach Learn Res 9:2015–2033

    Google Scholar 

  33. Livingston F (2005) Implementation of Breiman’s random forest machine learning algorithm. Mach Learn J ECE591Q

  34. Haykin S (2004) Neural networks: a comprehensive foundation, 2nd edn. Pearson Education, Delhi

  35. El Emam K, Benlarbi S, Goel N, Rai SN (1999) A validation of object-oriented metrics. In: Technical report ERB-1063, NRC

  36. Stone M (1974) Cross-validatory choice and assessment of statistical predictions. J R Stat Soc Ser A 36:111–114

    MATH  Google Scholar 

  37. Koru AG, Tian J (2005) Comparing high-change modules and modules with the highest measurement values in two large-scale open-source products. IEEE Trans Softw Eng 31(8):625–642

    Article  Google Scholar 

  38. Briand L, Daly J, Wust J (1998) A unified framework for cohesion measurement in object-oriented systems. Empir Softw Eng 3(1):65–117

    Article  Google Scholar 

  39. Briand L, Daly J, Wust J (1999) A unified framework for coupling measurement in object-oriented systems. IEEE Trans Softw Eng 25(1):91–121

    Article  Google Scholar 

  40. Briand L, Wust J, Lounis H (2001) Replicated case studies for investigating quality factors in object-oriented designs. Empir Softw Eng Int J 6(1):11–58

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ruchika Malhotra.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Malhotra, R., Khanna, M. Investigation of relationship between object-oriented metrics and change proneness. Int. J. Mach. Learn. & Cyber. 4, 273–286 (2013). https://doi.org/10.1007/s13042-012-0095-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s13042-012-0095-7

Keywords

Navigation