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 条
  • [41] O3-DPACS: a Java']Java-based, IHE compliant open-source data and image manager and archiver
    Beltrame, M.
    Bosazzi, P.
    Poli, A.
    Inchingolo, P.
    11TH MEDITERRANEAN CONFERENCE ON MEDICAL AND BIOLOGICAL ENGINEERING AND COMPUTING 2007, VOLS 1 AND 2, 2007, 16 (1-2): : 732 - +
  • [42] Connection Between Version Control Operations and Quality Change of the Source Code
    Farago, Csaba
    Hegedus, Peter
    Vegh, Adam Zoltan
    Ferenc, Rudolf
    ACTA CYBERNETICA, 2014, 21 (04): : 585 - 607
  • [43] Model-based Static Source Code Analysis of Java']Java Programs with Applications to Android Security
    Lu, Zheng
    Mukhopadhyay, Supratik
    2012 IEEE 36TH ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC), 2012, : 322 - 327
  • [44] Java']Java Source Code Static Check Eclipse Plug-in Based on Common Design Pattern
    Zhang Haotian
    Liu Shu
    2013 FOURTH WORLD CONGRESS ON SOFTWARE ENGINEERING (WCSE), 2013, : 165 - 170
  • [45] Extracting and studying the Logging-Code-Issue- Introducing changes in Java-based large-scale open source software systems
    Boyuan Chen
    Zhen Ming (Jack) Jiang
    Empirical Software Engineering, 2019, 24 : 2285 - 2322
  • [46] Code Complexity Impact of Widgets Accessibility Implementation in Java']JavaScript Open-Source Libraries
    Watanabe, Willian Massami
    de Lemos, Guilherme
    Antonelli, Humberto Lidio
    de Mattos Fortes, Renata Pontin
    Silva, Gabriel Costa
    PROCEEDINGS OF THE 27TH BRAZILIAN SYMPOSIUM ON MULTIMEDIA AND THE WEB (WEBMEDIA '21), 2021, : 9 - 16
  • [47] An open-source, interactive Java']Java-based system for rapid encoding of significant events in the ICU using the unified medical language system
    Shu, J
    Clifford, GD
    Long, WJ
    Moody, GB
    Szolovits, P
    Mark, RG
    Computers in Cardiology 2004, Vol 31, 2004, 31 : 197 - 200
  • [48] Research and Implementation of Security Vulnerability Detection in Application System of WEB Static Source Code Analysis Based on JAVA']JAVA
    Yuan, Hui
    Zheng, Lei
    Dong, Liang
    Peng, Xiangli
    Zhuang, Yan
    Deng, Guoru
    CYBER SECURITY INTELLIGENCE AND ANALYTICS, 2020, 928 : 444 - 452
  • [49] Version History Based Source Code Plagiarism Detection in Proprietary Systems
    Maskeri, Girish
    Karnam, Deepthi
    Viswanathan, Sree Aurovindh
    Padmanabhuni, Srinivas
    2012 28TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE (ICSM), 2012, : 609 - 612
  • [50] Generating Java Methods: An Empirical Assessment of Four AI-Based Code Assistants
    University of Milano - Bicocca, Milan, Italy
    arXiv,