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

被引:2
|
作者
Prykhodko, Sergiy [1 ]
Prykhodko, Natalia [2 ]
Smykodub, Tetyana [1 ]
机构
[1] Admiral Makarov Natl Univ Shipbldg, Dept Software Automated Syst, Heroes Ukraine Ave 9, UA-54025 Mykolaiv, Ukraine
[2] Admiral Makarov Natl Univ Shipbldg, Finance Dept, Heroes Ukraine Ave 9, UA-54025 Mykolaiv, Ukraine
关键词
statistical evaluation; software metric; depth of inheritance tree; open-source application; !text type='Java']Java[!/text; SYSTEMS;
D O I
10.2478/fcds-2021-0011
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
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.
引用
收藏
页码:159 / 172
页数:14
相关论文
共 50 条
  • [1] A Joint Statistical Estimation of the RFC and CBO Metrics for Open-Source Applications Developed in Java']Java
    Prykhodko, Sergiy
    Prykhodko, Natalia
    Smykodub, Tetiana
    [J]. 2022 IEEE 17TH INTERNATIONAL CONFERENCE ON COMPUTER SCIENCES AND INFORMATION TECHNOLOGIES (CSIT), 2022, : 442 - 445
  • [2] Source Code Features and their Dependencies: An Aggregative Statistical Analysis on Open-Source Java']Java Software Systems
    Toosi, Farshad Ghassemi
    [J]. APPLIED COMPUTER SYSTEMS, 2023, 28 (02) : 221 - 231
  • [3] mjCoAP: An Open-Source Lightweight Java']Java CoAP Library for Internet of Things Applications
    Cirani, Simone
    Picone, Marco
    Veltri, Luca
    [J]. INTEROPERABILITY AND OPEN-SOURCE SOLUTIONS FOR THE INTERNET OF THINGS, 2015, 9001 : 118 - 133
  • [4] On the Nature of Code Cloning in Open-Source Java']Java Projects
    Golubev, Yaroslav
    Bryksin, Timofey
    [J]. 2021 IEEE 15TH INTERNATIONAL WORKSHOP ON SOFTWARE CLONES, IWSC 2021, 2021, : 22 - 28
  • [5] An Open-Source Java']Java Platform for Automated Reaction Mapping
    Crabtree, John D.
    Mehta, Dinesh P.
    Kouri, Tina M.
    [J]. JOURNAL OF CHEMICAL INFORMATION AND MODELING, 2010, 50 (09) : 1751 - 1756
  • [6] Analyzing Conflict Predictors in Open-Source Java']Java Projects
    Accioly, Paola
    Borba, Paulo
    Silva, Leuson
    Cavalcanti, Guilherme
    [J]. 2018 IEEE/ACM 15TH INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR), 2018, : 576 - 586
  • [7] SPMF: A Java']Java Open-Source Pattern Mining Library
    Fournier-Viger, Philippe
    Gomariz, Antonio
    Gueniche, Ted
    Soltani, Azadeh
    Wu, Cheng-Wei
    Tseng, Vincent S.
    [J]. JOURNAL OF MACHINE LEARNING RESEARCH, 2014, 15 : 3389 - 3393
  • [8] Tracking Null Checks in Open-Source Java']Java Systems
    Osman, Haidar
    Leuenberger, Manuel
    Lungu, Mircea
    Nierstrasz, Oscar
    [J]. 2016 IEEE 23RD INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), VOL 1, 2016, : 304 - 313
  • [9] WEKA-Experiences with a Java']Java Open-Source Project
    Bouckaert, Remco R.
    Frank, Eibe
    Hall, Mark A.
    Holmes, Geoffrey
    Pfahringer, Bernhard
    Reutemann, Peter
    Witten, Ian H.
    [J]. JOURNAL OF MACHINE LEARNING RESEARCH, 2010, 11 : 2533 - 2541
  • [10] An Empirical Study of "Removed" Classes in Java']Java Open-Source Systems
    Mubarak, Asma
    Counsell, Steve
    Hierons, Robert M.
    [J]. ADVANCES TECHNIQUES IN COMPUTING SCIENCES AND SOFTWARE ENGINEERING, 2010, : 99 - 104