Cognitive Weighted Polymorphism Factor: A Comprehension Augmented Complexity Metric

Polymorphism is one of the main pillars of objectoriented paradigm. It induces hidden forms of class dependencies which may impact software quality, resulting in higher cost factor for comprehending, debugging, testing, and maintaining the software. In this paper, a new cognitive complexity metric called Cognitive Weighted Polymorphism Factor (CWPF) is proposed. Apart from the software structural complexity, it includes the cognitive complexity on the basis of type. The cognitive weights are calibrated based on 27 empirical studies with 120 persons. A case study and experimentation of the new software metric shows positive results. Further, a comparative study is made and the correlation test has proved that CWPF complexity metric is a better, more comprehensive, and more realistic indicator of the software complexity than Abreu’s Polymorphism Factor (PF) complexity metric.




References:
null[1] T. G. Mayer, T. Hall, “Measuring OO systems: a critical analysis of the
MOOD metrics,” Tools 29, (Procs. Technology of OO Languages &
Systems, Europe’ 99), R. Mitchell, A. C. Wills, J. Bosch, B. Meyer
(Eds.): Los Alamitos, Ca., USA, IEEE Computer Society, pp. 108–117,
1999.
[2] S. Benlarbi, and W. L. Melo, “Polymorphism measures for early risk
prediction,” IEEE Software Engineering, 1999. Proceedings of the 1999
International Conference, pp. 334-344, 1999.
[3] C. Pons, L. Olsina, and M. Prieto, “A formal mechanism for assessing
polymorphism in object-oriented systems,” In Quality Software, 2000.
Proceedings. First Asia-Pacific Conference on, pp. 53-62. IEEE, 2000.
[4] F. B. Abreu, and W. L. Melo, “Evaluating the impact of object-oriented
design on software quality,” Proceedings of the 3rd International
Software Metrics Symposium (METRICS'96), IEEE, Berlin, Germany,
March, 1996.
[5] S. R. Chidamber, C. F. Kemerer, “Towards a metrics suite for objectoriented
design,” Object-Oriented Programming Systems, Languages
and Applications (OOPSLA), vol. 26, pp. 197–211, 1991.
[6] L. Wei, and H. Sallie, “Object-oriented metrics that predict
maintainability,” Journal of systems and software, vol. 23, no. 2, pp.
111-122, 1993.
[7] F. B. Abreu, and R. Carapuça., “Object-oriented software engineering:
Measuring and controlling the development process,” Proceedings of the
4th international conference on software quality. vol. 186, pp. 1-8, 1994.
[8] M. Lorenz, and J. Kidd, “Object oriented software metrics,” Prentice
Hall Object-Oriented Series, Englewood Cliffs, N.J., USA, 1994.
[9] L. H. Rosenberg, and L. E. Hyatt, “Software quality metrics for objectoriented
environments,” Crosstalk journal, vol. 10, no. 4, pp. 1-16, 1997.
[10] J. Bansiya, and C. G. Davis, “A hierarchical model for object-oriented
design quality assessment,” IEEE Transactions on Software
Engineering,” vol. 28, no. 1, pp. 4-17, 2002.
[11] D. Wu, L. Chen, Y. Zhou, and B. Xu. “A metrics-based comparative
study on object-oriented programming languages,” 2015.
[12] Dufour, Bruno, Karel Driesen, Laurie Hendren, and Clark Verbrugge.
“Dynamic metrics for Java,” In ACM SIGPLAN Notices, vol. 38, no.
11, pp. 149-168. ACM, 2003.
[13] P. S. Sandhu, and G. Singh, “Dynamic metrics for polymorphism in
object oriented systems,” World Academy of Science, Engineering and
Technology, vol. 2, pp. 03-27, 2008.
[14] Y. Wang, and J. Shao, “Measurement of the cognitive functional
complexity of software,” Proc. Second IEEE Int. Conf. Cognitive
Informatics (ICCI’03), pp. 1-6, 2003.
[15] A. Aloysius, and L. Arockiam, “Cognitive weighted response for a class:
A new metric for measuring cognitive complexity of object oriented
systems,” International Journal of Advanced Research in Computer
Science, vol. 3, no. 4, 2012.
[16] A. Aloysisus, and L. Arockiam, “Coupling complexity metric: A
cognitive approach,” International Journal of Information Technology
and Computer Science, vol. 4, no. 9, pp. 29-35, 2012,
[17] F. B. Abreu et al, “The Design of Eiffel Programs: Quantitative
Evaluation Using the MOOD Metrics,” Proceedings of TOOLS'96,
California, Jul. 1996.
[18] N. E. Fenton, and J. Bieman, “Software metrics: A rigorous and
practical approach,” 3rd edition. CRC Press, ISBN: 9781439838228, pp.
54, November 2014.
[19] F. Thamburaj, “Validation of cognitive weighted method hiding factor
complexity metric,” in International Conference on Advanced
Computing (ICAC 2015), International Journal of Applied Engineering
Research (IJAER), accepted for publication.
[20] F. B. Abreu, M. Goulao, and R. Estevers, “Toward the design quality
evaluation of object-oriented software systems,” Proceedings of the 5th
International Conference on Software Quality, Austin, Texas, USA, pp.
44-57. 1995.