Cognitive complexity as a quantifier of version to version Java']Java-based source code change: An empirical probe

被引:4
|
作者
Kaur, Loveleen [1 ]
Mishra, Ashutosh [1 ]
机构
[1] Thapar Inst Engn & Technol, Dept Comp Sci & Engn, Patiala, Punjab, India
关键词
Cognitive complexity; Software change; Software metrics; Logistic regression analysis; Machine learning; OBJECT-ORIENTED METRICS; CHANGE-PRONE CLASSES; SUITE;
D O I
10.1016/j.infsof.2018.09.002
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context It has been often argued that it is challenging to modify code fragments from existing software that contains files that are difficult to comprehend. Since systematic software maintenance includes an extensive human activity, cognitive complexity is one of the intrinsic factors that could potentially contribute to or impede an efficient software maintenance practice, the empirical validation of which remains vastly unaddressed. Objective: This study conducts an experimental analysis in which the software developer's level of difficulty in comprehending the software: the cognitive complexity, is theoretically computed and empirically evaluated for estimating its relevance to actual software change. Method: For multiple successive releases of two Java-based software projects, where the source code of a previous release has been substantively used in a novel release, we calculate the change results and the values of the cognitive complexity for each of the version's source code Java files. We construct eight datasets and build predictive models using statistical analysis and machine learning techniques. Results: The pragmatic comparative examination of the estimated cognitive complexity against prevailing metrics of software change and software complexity clearly validates the cognitive complexity metric as a noteworthy measure of version to version source code change.
引用
收藏
页码:31 / 48
页数:18
相关论文
共 50 条
  • [1] JANIS 4: An Improved Version of the NEA Java']Java-based Nuclear Data Information System
    Soppera, N.
    Bossant, M.
    Dupont, E.
    NUCLEAR DATA SHEETS, 2014, 120 : 294 - 296
  • [2] JANIS-2: An improved version of the NEA Java']Java-based nuclear data information system
    Soppera, N
    Henriksson, H
    Nouri, A
    Nagel, P
    Dupont, E
    INTERNATIONAL CONFERENCE ON NUCLEAR DATA FOR SCIENCE AND TECHNOLOGY, PTS 1 AND 2, 2005, 769 : 557 - 560
  • [3] SECURITY RISKS IN JAVA']JAVA-BASED MOBILE CODE SYSTEMS
    Binder, Walter
    Roth, Volker
    SCALABLE COMPUTING-PRACTICE AND EXPERIENCE, 2006, 7 (04): : 1 - 11
  • [4] ASSESSING COGNITIVE COMPLEXITY IN JAVA']JAVA-BASED OBJECT-ORIENTED SYSTEMS: METRICS AND TOOL SUPPORT
    Crasso, Marco
    Mateos, Cristian
    Zunino, Alejandro
    Misra, Sanjay
    Polvorin, Pablo
    COMPUTING AND INFORMATICS, 2016, 35 (03) : 497 - 527
  • [5] An Empirical Analysis of Build Failures in the Continuous Integration Workflows of Java']Java-Based Open-Source Software
    Rausch, Thomas
    Hummer, Waldemar
    Leitner, Philipp
    Schulte, Stefan
    2017 IEEE/ACM 14TH INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR 2017), 2017, : 345 - 355
  • [6] Version 3.0 of code Java']Java for 3D simulation of the CCA model
    Zhang, Kebo
    Zuo, Junsen
    Dou, Yifeng
    Li, Chao
    Xiong, Hailing
    COMPUTER PHYSICS COMMUNICATIONS, 2016, 207 : 547 - 548
  • [7] A new version of code Java']Java for 3D simulation of the CCA model
    Zhang, Kebo
    Xiong, Hailing
    Li, Chao
    COMPUTER PHYSICS COMMUNICATIONS, 2016, 204 : 214 - 215
  • [8] Version 4.0 of code Java']Java for 3D simulation of the CCA model
    Fan, Linyu
    Liao, Jianwei
    Zuo, Junsen
    Zhang, Kebo
    Li, Chao
    Xiong, Hailing
    COMPUTER PHYSICS COMMUNICATIONS, 2018, 228 : 290 - 292
  • [9] An empirical comparison of four Java']Java-based regression test selection techniques
    Shin, Min Kyung
    Ghosh, Sudipto
    Vijayasarathy, Leo R.
    JOURNAL OF SYSTEMS AND SOFTWARE, 2022, 186
  • [10] Java source code change prediction based on design change analysis
    Tan, Xiang-Chen
    Feng, Tie
    Luo, Shu-Tong
    Li, Da-Li
    Jilin Daxue Xuebao (Gongxueban)/Journal of Jilin University (Engineering and Technology Edition), 2008, 38 (03): : 685 - 689