Detection of Unused Native Methods code smells in Multi-Language Systems

被引:0
|
作者
Ansari, Md. Shahrukh [1 ]
Moiz, Salman Abdul [1 ]
机构
[1] Univ Hyederabad, Sch Comp & Informat Sci, Hyderabad, India
来源
2024 4TH INTERNATIONAL CONFERENCE ON INFORMATION COMMUNICATION AND SOFTWARE ENGINEERING, ICICSE 2024 | 2024年
关键词
Code smells; multi-language systems; anti-patterns; Design patterns;
D O I
10.1109/ICICSE61805.2024.10625688
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
It is common practice in software development to use multiple programming languages within a single project, known as multilingual development. While it offers substantial advantages like legacy integration and performance optimization, integrating code from various languages can introduce code smells that adversely affect the overall readability, maintainability, and performance of these systems. These code smells are called multi-language code smells. Unused Native Method declaration and Unused Native Method Implementation are two of the multi-language code smells that are related to unused code. These code smells unnecessarily increase the volume of the codebase, which leads to difficulties in understanding and maintaining the code. Since these smells negatively impact the non-functional requirement of a software system, they must be detected and refactored. The detection approach proposed in the literature had many limitations, which is why the results presented in the literature about the prevalence of these two smells were incorrect. This paper addresses the identified limitations and assesses the existence of these two smells in open-source projects. Our results show that 9.34% of JNI files are affected by Unused Native Method Declaration code smell, and 46.18% of JNI files are affected by Unused Native Method Implementation code smell, which confirms the existence of these two code smells in open source multi-language systems.
引用
收藏
页码:44 / 50
页数:7
相关论文
共 50 条
  • [1] Code Smells for Multi-language Systems
    Abidi, Mouna
    Grichi, Manel
    Khomh, Foutse
    Gueheneuc, Yann-Gael
    PROCEEDINGS OF THE 24TH EUROPEAN CONFERENCE ON PATTERN LANGUAGES OF PROGRAMS (EUROPLOP 2019), 2019,
  • [2] Multi-language Design Smells: A Backstage Perspective
    Abidi, Mouna
    Openja, Moses
    Khomh, Foutse
    2020 IEEE/ACM 17TH INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES, MSR, 2020, : 615 - 618
  • [3] Multi-language design smells: a backstage perspective
    Mouna Abidi
    Md Saidur Rahman
    Moses Openja
    Foutse Khomh
    Empirical Software Engineering, 2022, 27
  • [4] Multi-language design smells: a backstage perspective
    Abidi, Mouna
    Rahman, Md Saidur
    Openja, Moses
    Khomh, Foutse
    EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (05)
  • [5] Automated detection of inter-language design smells in multi-language deep learning frameworks
    Li, Zengyang
    Zhang, Xiaoyong
    Wang, Wenshuo
    Liang, Peng
    Mo, Ran
    Tan, Jie
    Liu, Hui
    INFORMATION AND SOFTWARE TECHNOLOGY, 2025, 179
  • [6] Design smells in multi-language systems and bug-proneness: a survival analysis
    Abidi, Mouna
    Rahman, Md Saidur
    Openja, Moses
    Khomh, Foutse
    EMPIRICAL SOFTWARE ENGINEERING, 2024, 29 (05)
  • [7] Typing a multi-language intermediate code
    Gordon, AD
    Syme, D
    ACM SIGPLAN NOTICES, 2001, 36 (03) : 248 - 260
  • [8] Are Multi-Language Design Smells Fault-Prone? An Empirical Study
    Abidi, Mouna
    Rahman, Md Saidur
    Openja, Moses
    Khomh, Foutse
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2021, 30 (03)
  • [9] Towards Multi-Language Static Code Analysis
    Siddiqui, Sanaa
    Metta, Ravindra
    Madhukar, Kumar
    2023 IEEE 34TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING WORKSHOPS, ISSREW, 2023, : 81 - 82
  • [10] Analysis and manipulation of distributed multi-language software code
    Deruelle, L
    Melab, N
    Bouneffa, M
    Basson, H
    FIRST IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2001, : 43 - 54