1. bookVolume 46 (2021): Issue 2 (June 2021)
Journal Details
License
Format
Journal
First Published
24 Oct 2012
Publication timeframe
4 times per year
Languages
English
access type Open Access

A Statistical Evaluation of The Depth of Inheritance Tree Metric for Open-Source Applications Developed in Java

Published Online: 17 Jun 2021
Page range: 159 - 172
Received: 14 Jul 2020
Accepted: 10 Jan 2021
Journal Details
License
Format
Journal
First Published
24 Oct 2012
Publication timeframe
4 times per year
Languages
English
Abstract

The Depth of Inheritance Tree (DIT) metric, along with other ones, is used for estimating some quality indicators of software systems, including open-source applications (apps). In cases involving multiple inheritances, at a class level, the DIT metric is the maximum length from the node to the root of the tree. At an application (app) level, this metric defines the corresponding average length per class. It is known, at a class level, a DIT value between 2 and 5 is good. At an app level, similar recommended values for the DIT metric are not known. To find the recommended values for the DIT mean of an app we have proposed to use the confidence and prediction intervals. A DIT mean value of an app from the confidence interval is good since this interval indicates how reliable the estimate is for the DIT mean values of all apps used for estimating the interval. A DIT mean value higher than an upper bound of prediction interval may indicate that some classes have a large number of the inheritance levels from the object hierarchy top. What constitutes greater app design complexity as more classes are involved. We have estimated the confidence and prediction intervals of the DIT mean using normalizing transformations for the data sample from 101 open-source apps developed in Java hosted on GitHub for the 0.05 significance level.

Keywords

[1] Barkmann, H., Lincke, R., Lowe, W., Quantitative evaluation of software quality metrics in open-source projects, in: Proceedings of the 2009 International Conference on Advanced Information Networking and Applications Workshops, Bradford, UK, 2009, 1067–1072. https://doi.org/10.1109/WAINA.2009.190 Search in Google Scholar

[2] Bouktif, S., Sahraoui, H., Ahmed, F., Predicting stability of open-source software systems using combination of Bayesian classifiers, ACM Transactions on Management Information Systems, 5, 1, Article 3, 2014, 1-26. https://doi.org/10.1145/2555596 Search in Google Scholar

[3] Bousquet, L.d., Shaheen, M.R., Relation between depth of inheritance tree and number of methods to test, in: Proceedings of the 1st International Conference on Software Testing, Verification, and Validation, Lillehammer, Norway, 2008, 161-170. https://doi.org/10.1109/ICST.2008.34 Search in Google Scholar

[4] Box, G.E.P., Cox, D.R., An analysis of transformations. Journal of the Royal Statistical Society. Series B (Methodological), 26, 2, 1964, 211-252. Search in Google Scholar

[5] Chidamber, S.R., Kemerer, C.F., A metrics suite for object oriented design. IEEE Transactions on Software Engineering, 20, 6, 1994, 476-493. http://dx.doi.org/10.1109/32.295895 Search in Google Scholar

[6] Depth of Inheritance Tree, https://www.cachequality.com/docs/metrics/depth-inheritance-tree, last accessed 2020/04/16. Search in Google Scholar

[7] Elahi, E., Kanwal, S., Asif, A.N., A new ensemble approach for software fault prediction, in: Proceedings of the 17th International Bhurban Conference on Applied Sciences and Technology (IBCAST), Islamabad, Pakistan, 2020, 407-412. https://doi.org/10.1109/IBCAST47879.2020.9044596 Search in Google Scholar

[8] Foucault, M., Teyton, C., Lo, D., Blanc, X., Falleri, J.R., On the usefulness of ownership metrics in open-source software projects, Information and Software Technology, 64, 2015, 102-112. https://doi.org/10.1016/j.infsof.2015.01.013 Search in Google Scholar

[9] Freedman, D., Pisani, R., Purves, R., Statistics. 4th edn. Wiley, 2007. Search in Google Scholar

[10] Grubbs, F., Procedures for detecting outlying observations in samples, Technometrics, 11, 1, 1969, 1-21. Search in Google Scholar

[11] Johnson, R.A., Wichern, D.W., Applied multivariate statistical analysis, Pearson Prentice Hall, 2007. Search in Google Scholar

[12] Kendall, M.G., Stuart, A., The advanced theory of statistics. Vol. 1, Distribution Theory. 2nd edn., Charles Griffin & Company Limited, London, 1963. Search in Google Scholar

[13] Makkar, G., Chhabra, J.K., Challa, R.K., Object oriented inheritance metric-reusability perspective, in: Proceedings of the International Conference on Computing, Electronics and Electrical Technologies (ICCEET), Kumaracoil, India, 2012, 852-859. https://doi.org/10.1109/ICCEET.2012.6203815 Search in Google Scholar

[14] Mishra, D., New Inheritance Complexity Metrics for Object-Oriented Software Systems: An Evaluation with Weyuker’s Properties, Computing and Informatics, 30, 2, 2011, 267-293. Search in Google Scholar

[15] Molnar AJ., Neamţu A., Motogna S., Evaluation of software product quality metrics, in: Damiani E., Spanoudakis G., Maciaszek L. (eds.), Evaluation of Novel Approaches to Software Engineering. ENASE 2019. Communications in Computer and Information Science, vol. 1172, Springer, Cham, 2020, 163-187. https://doi.org/10.1007/978-3-030-40223-5_8 Search in Google Scholar

[16] Prykhodko, S.B., Statistical anomaly detection techniques based on normalizing transformations for non-Gaussian data, in: Proceedings of the International Conference on Computational Intelligence (Results, Problems and Perspectives), Kyiv-Cherkasy, Ukraine, 2015, 286-287. Search in Google Scholar

[17] Prykhodko, S., Prykhodko, N., Makarova, L., Pugachenko, K., Detecting outliers in multivariate non-Gaussian data on the basis of normalizing transformations, in: Proceedings of the 2017 IEEE First Ukraine Conference on Electrical and Computer Engineering (UKRCON), Kyiv, Ukraine, 2017, 846-849. https://doi.org/10.1109/UKRCON.2017.8100366 Search in Google Scholar

[18] Prykhodko, N., Prykhodko, S., Vorona, M., The non-linear regression model to estimate the part of NPLS in the whole loan portfolio of Ukrainian banks, in: Proceedings of the 2018 IEEE First International Conference on System Analysis & Intelligent Computing (SAIC), Kyiv, Ukraine, 2018, 261-265. https://doi.org/10.1109/SAIC.2018.8516899 Search in Google Scholar

[19] Rathore, S.S., Kumar, S., A study on software fault prediction techniques, Artificial Intelligence Review, 51, 2, 2019, 255-327. https://doi.org/10.1007/s10462-017-9563-5 Search in Google Scholar

[20] Shaheen, M.R., Bousquet, L.d., Is depth of inheritance tree a good cost prediction for branch coverage testing? in: Proceedings of the First International Conference on Advances in System Testing and Validation Lifecycle, Porto, Portugal, 2009, 42-47. https://doi.org/10.1109/VALID.2009.11 Search in Google Scholar

[21] Shatnawi, R., Empirical study of fault prediction for open-source systems using the Chidamber and Kemerer metrics, IET Software, 8, 3, 2014, 113-119. http://dx.doi.org/10.1049/iet-sen.2013.0008 Search in Google Scholar

Recommended articles from Trend MD

Plan your remote conference with Sciendo