Abstract
Software Complexity often seems to be correlated with the defects and this makes difficult to select appropriate complexity metrics that would be effective indicators of defects. The aim of this work is to analyze the relationship of different complexity metrics with the defects for three categories of software projects i.e. large, medium and small. We analyzed 18 complexity metrics and defects from 27,734 software modules of 38 software projects categorized in large, medium and small. In all categories of projects we do not find any strong positive correlation between complexity metrics and defects. However, we cluster the complexity metric values and defects in three categories as high, medium and low. Consequently we observe that for some complexity metrics high complexity results in higher defects. We called these metrics as effective indicators of defects. In the small category of projects we found LCOM as effective indicator, in the medium category of project we found WMC, CBO, RFC, CA, CE, NPM, DAM, MOA, IC, Avg CC as effective indicators of defects and for a large category of projects we found WMC, CBO, RFC, CA, NPM, AMC, Avg CC as effective indicators of defects. The difference shows that complexity metrics relation to defects also varies with the size of projects.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
References
Güneş Koru A, Tian J (2003) An empirical comparison and characterization of high defect and high complexity modules. J Syst Softw 67(3):153–163 (Sep 15)
Zhang H (2009) An investigation of the relationships between lines of code and defects. ICSM 2009. IEEE international conference on software maintenance. p 274–283
Fenton NE, Ohlsson N (2000) Quantitative analysis of faults and failures in a complex software system. Softw Eng IEEE Trans. doi: 10.1109/32.879815. 26(8):797–814
McCabe TJ (1976) A complexity measure. Softw Eng IEEE Trans. doi: 10.1109/TSE.1976.233837. SE-2(4):308–320
Chidamber SR, Kemerer CF (1994) A metrics suite for object oriented design. Softw Eng IEEE Trans. doi: 10.1109/32.295895. 20(6):476–493
Bansiya J, Davis CG (2002) A hierarchical model for object-oriented design quality assessment. Softw Eng IEEE Trans. doi: 10.1109/32.979986. 28(1):4–17
Henderson-Sellers B (1996) Object-oriented metrics, measures of complexity. Prentice Hall, NJ
Martin R OO Design quality metrics: an analysis of dependencies, presented at the Workshop Pragmatic and Theoretical Directions in Object-Oriented Software Metrics, OOPSLA’94
Chidamber SR, Darcy DP, Kemerer CF (1998) Managerial use of metrics for object-oriented software: an exploratory analysis. Softw Eng IEEE Trans. doi: 10.1109/32.707698. 24(8):629–639
Basili VR, Briand LC, Melo WL (1996) A validation of object-oriented design metrics as quality indicators. Softw Eng IEEE Trans. doi: 10.1109/32.544352. 22(10):751–761
Subramanyam R, Krishnan MS (2003) Empirical analysis of CK metrics for object-oriented design complexity: implications for software defects. Softw Eng IEEE Trans. doi: 10.1109/TSE.2003.1191795. 29(4):297–310
Gyimothy T, Ferenc R, Siket I (2005) Empirical validation of object-oriented metrics on open source software for fault prediction. Softw Eng IEEE Trans. doi: 10.1109/TSE.2005.112. 31(10):897–910
English M, Exton C, Rigon I, Cleary B (2009) Fault detection and prediction in an open-source software project. In: Proceedings of the 5th international conference on predictor models in software engineering. Vancouver, British Columbia, Canada: ACM, p 1–11
Ping Yu, Systa T, Muller H (2002) Predicting fault-proneness using OO metrics. An industrial case study. In: Proceedings of software maintenance and reengineering, 2002. Sixth European conference on, p 99–107
Olague HM, Etzkorn LH, Gholston S, Quattlebaum S (2007) Empirical validation of three software metrics suites to predict fault-proneness of object-oriented classes developed using highly iterative or agile software development processes. Softw Eng IEEE Trans. doi: 10.1109/TSE.2007.1015. 33(6):402–19
Nagappan N, Ball T, Zeller A (2006) Mining metrics to predict component failures. In: Proceedings of the 28th international conference on software engineering. Shanghai, China: ACM, p 452–461
Catal C, Diri B, Ozumut B (2007) An artificial immune system approach for fault prediction in object-oriented software. In: 2nd International Conference on dependability of computer systems. DepCoS-RELCOMEX’07, p 238–245
Tang MH, Kao MH, Chen MH (1999) An empirical study on object-oriented metrics. In: Proceedings of sixth international software metrics symposium, p 242–249
Boetticher G, Menzies T, Ostrand T (2007) PROMISE repository of empirical software engineering data [Internet]. Available from: http://promisedata.org/ repository, West Virginia University, Department of Computer Science
Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslen A (2000) Experimentation in software engineering: an introduction. Norwell, Massachusetts. Kluwer Academic Publishers, Dordrecht, USA
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Shah, S.M.A., Morisio, M. (2013). Complexity Metrics Significance for Defects: An Empirical View. In: Lu, W., Cai, G., Liu, W., Xing, W. (eds) Proceedings of the 2012 International Conference on Information Technology and Software Engineering. Lecture Notes in Electrical Engineering, vol 212. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-34531-9_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-34531-9_4
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-34530-2
Online ISBN: 978-3-642-34531-9
eBook Packages: EngineeringEngineering (R0)