Abstract
Identifying high cognitive complexity modules can lead to a better quality software system and can help during maintenance also. It has been found that inheritance has an impact on cognitive complexity of a software system. In this paper, two inheritance metrics based on cognitive complexity, one at class level CCI (Class Complexity due to Inheritance) and another at program level ACI (Average Complexity of a program due to Inheritance), have been proposed for object-oriented software systems. These metrics are also compared with other well known object-oriented inheritance metrics.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Basili, V.R.: Viewing maintenance as reuse oriented software development. IEEE software 7(1), 19–25 (1990)
Basili, V.R., Briand, L.C., Melo, W.L.: A validation of object-oriented design metrics as quality indicators. IEEE Transactions on Software Engineering 22(10), 751–761 (1996)
Basili, V.R., Briand, L.C., Melo, W.L.: How reuse influences productivity in object-oriented systems. Commun. ACM 39(10), 104–116 (1996)
Briand, L., Bunse, L., Daly, J., Differding, C.: An experimental comparison of the maintainability of object-oriented and structured design documents. In: Proceedings of Empirical Assessment in Software Engineering (EASE), Keele, UK (1997)
Brito, A.F., Carapuca, R.: Candidate Metrics for Object-Oriented Software within a Taxonomy Framework. Journal of System Software 26, 87–96 (1994)
Cartwright, M., Shepperd, M.: An empirical analysis of object oriented software in industry. In: Bournemouth Metrics Workshop, Bournemouth, UK (April 1996)
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Transactions on Software Engineering 20(6), 476–493 (1994)
Chiew, V., Wang, Y.: Design of a Cognitive Complexities Measurement and Analysis Tool. In: Canadian Conference on Electrical and Computer Engineering, 2006. CCECE 2006, pp. 1667–1670 (May 2006)
El-Emam, K.: Object-oriented metrics: A review of theory and practice. In: Erdogmus, H., Tanir, O. (eds.) Advances in Software Engineering, pp. 23–50. Springer, New York (2002)
Glasberg, D., El Emam, K., Melo, W., Madhavji, N.: Validating Object-Oriented Design Metrics on a Commercial Java Application. National Research Council of Canada (2000), http://www.mestradoinfo.ucb.br/Prof/wmelo/NCR_1080.pdf
Halstead Maurice, H.: Elements of Software Science (Operating and programming systems series). Elsevier Science Inc., New York (1977)
Harrison, R., Counsell, S., Nithi, R.: Experimental assessment of the effect of inheritance on the maintainability of object-oriented systems. Journal of Systems and Software 52, 173–179 (2000)
Henderson-Sellers, B.: Object Oriented Metrics: Measures of Complexity, pp. 130–132. Prentice Hall PTR, Englewood Cliffs (1996)
Klemola, T.: A cognitive model for complexity metrics. In: Proceedings of the 4th International ECOOP (2000). Workshop on Quantitative Approaches in Object-Oriented Software Engineering, CRIM (2000)
Klemola, T.: Software comprehension: theory and metrics, Masters thesis, Department of Computer Science, Concordia University, Montreal, Canada (1998)
Klemola, T., Rilling, J.: A Cognitive Complexity Metric Based on Category Learning. In: Proceedings of the 2nd IEEE international Conference on Cognitive informatics, August 18-20, 2003, p. 106 (2003)
Li, W.: Another Metric Suite for Object-Oriented Programming. Journal of Systems and Software 44, 155–162 (1998)
Li, W., Henry, S.: Object-oriented metrics that predict maintainability. Journal of Systems and Software 23(2), 111–122 (1994)
McCabe, T.J.: A Complexity Measure. IEEE Transactions on Software Engineering SE-2(4), 308–320 (1976)
Piwowarski, P.: A nesting level complexity measure. SIGPLAN Notices 17(9), 44–50 (1982)
Rilling, J., Klemola, T.: Identifying Comprehension Bottlenecks Using Program Slicing and Cognitive Complexity Metrics. In: Proceedings of the 11th IEEE international Workshop on Program Comprehension, May 10-11, 2003, p. 115 (2003)
Vivanco, R.: Use of a Genetic Algorithm to Identify Source Code Metrics Which Improves Cognitive Complexity Predictive Models. In: Proceedings of the 15th IEEE international Conference on Program Comprehension, pp. 297–300, June 26-29 (2007)
Wang, Y.: The Theoretical Framework of Cognitive Informatics. International Journal of Cognitive Informatics and Natural Intelligence 1(1), 1–27 (2007)
Wang, Y., Shao, J.: A New Measure of Software Complexity based on Cognitive Weights. Can. J. Elec. Comput. Engg. 28(2), 69–74 (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Mishra, D., Mishra, A. (2009). Object-Oriented Inheritance Metrics: Cognitive Complexity Perspective. In: Wen, P., Li, Y., Polkowski, L., Yao, Y., Tsumoto, S., Wang, G. (eds) Rough Sets and Knowledge Technology. RSKT 2009. Lecture Notes in Computer Science(), vol 5589. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02962-2_57
Download citation
DOI: https://doi.org/10.1007/978-3-642-02962-2_57
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-02961-5
Online ISBN: 978-3-642-02962-2
eBook Packages: Computer ScienceComputer Science (R0)