RefDetect: A Multi-Language Refactoring Detection Tool Based on String Alignment

被引:5
|
作者
Moghadam, Iman Hemati [1 ]
Cinneide, Mel O. [2 ]
Zarepour, Faezeh [3 ]
Jahanmir, Mohamad Aref [1 ]
机构
[1] Vali E Asr Univ Rafsanjan, Dept Comp Engn, Rafsanjan 7718897111, Iran
[2] Natl Univ Ireland, Sch Comp Sci, Dublin D04 V1W8, Ireland
[3] Allameh Jafari Inst Rafsanjan, Dept Comp Engn, Rafsanjan 77181, Iran
来源
IEEE ACCESS | 2021年 / 9卷
基金
爱尔兰科学基金会;
关键词
Tools; !text type='Java']Java[!/text; Software; C plus plus languages; Measurement; Unified modeling language; Software algorithms; Refactoring; refactoring detection; alignment algorithm; empirical studies; C plus plus; CODE;
D O I
10.1109/ACCESS.2021.3086689
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Refactoring is performed to improve software quality while leaving the behaviour of the software unchanged. Identifying refactorings applied to a software system is an important activity that leads to a better understanding of the evolution of the software system, and several techniques have been proposed and implemented to address this issue. The vast majority of existing refactoring detection techniques are language-specific, including the accepted state of the art, RMiner, which is exclusively Java-based. Although impressive performance has been achieved to date, there is scope for improvement in refactoring detection and such improvement would enhance both refactoring research and practice. In this paper, we propose a novel, language-neutral technique to identify refactorings in commit histories. Our approach is motivated by a desire to explore the use of string alignment algorithms in refactoring detection, and to determine if such approaches are competitive with the state of the art. The proposed approach has been implemented in a tool called RefDetect, evaluated, and compared with the current state-of-the-art refactoring detection tool: RMiner. In experiments we applied RefDetect to 514 commits of 185 Java applications containing 5,058 true refactoring instances, achieving an f-score slightly better than that achieved by RMiner (87.3% vs. 86%). RefDetect clearly outperformed RMiner in method and class based refactorings, achieving f-scores respectively of 87.7% vs. 81.7% for method-level refactorings and 92.1% vs. 86.9% for class-level refactorings. To demonstrate the language-independence of RefDetect, we conducted a further study with four C++ applications, achieving high values for both precision (96.1%) and recall (94.1%). The achieved results indicate that RefDetect performs better than the current state of the art in refactoring detection and is demonstrably capable of handling different programming languages.
引用
收藏
页码:86698 / 86727
页数:30
相关论文
共 50 条
  • [21] A Module-Based Framework for Multi-language Constraint Modeling
    Jarvisalo, Matti
    Oikarinen, Emilia
    Janhunen, Tomi
    Niemela, Ilkka
    LOGIC PROGRAMMING AND NONMONOTONIC REASONING, PROCEEDINGS, 2009, 5753 : 155 - 168
  • [22] Design of Embedded Multi-language Lattice Font Based on QT
    Huang, Jian
    Zhao, Qian
    Wu, YanHai
    PROCEEDINGS 2013 INTERNATIONAL CONFERENCE ON MECHATRONIC SCIENCES, ELECTRIC ENGINEERING AND COMPUTER (MEC), 2013, : 2252 - 2255
  • [23] The Multi-language Knowledge Representation Based on Hierarchical Network of Concepts
    Liu, Zhiying
    Hu, Renfen
    Jin, Yaohong
    Li, Wei
    CHINESE LEXICAL SEMANTICS (CLSW 2015), 2015, 9332 : 471 - 477
  • [24] Automated Multi-Language Artifact Binding and Rename Refactoring between Java']Java and DSLs Used by Java']Java Frameworks
    Mayer, Philip
    Schroeder, Andreas
    ECOOP 2014 - OBJECT-ORIENTED PROGRAMMING, 2014, 8586 : 437 - 462
  • [25] 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
  • [26] DEVELOPMENT AND IMPLEMENTATION OF A MULTI-LANGUAGE URINARY INCONTINENCE SCREENING TOOL FOR USE IN PRIMARY CARE
    Okamuro, Kyle
    Bresee, Catherine
    Dolendo, Isabella
    Eilber, Karyn
    Eskander, Ramy
    Grisales, Tamara
    Koola, Jejo
    Mays, Allison
    Mendez, Carmen
    Millen, Marlene
    Nuckols, Teryl
    Pevnick, Joshua
    Reuben, David
    Singer, Jennifer
    Tai-Seale, Ming
    Vaida, Florin
    Ward, Katherine
    Wenger, Niel
    Yazdany, Tajnoos
    Zhu, Xi
    Anger, Jennifer
    NEUROUROLOGY AND URODYNAMICS, 2023, 42 : S254 - S255
  • [27] Detection of Sentiment Polarity of Unstructured Multi-Language Text from Social Media
    Ahmed, Saad
    Hina, Saman
    Asif, Raheela
    INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2018, 9 (07) : 199 - 203
  • [28] Multi-language and multi-purpose educational tool for kids: Design of Crazipes, a SMAALL project game
    Valente, A
    Holmen, H
    Marchetti, E
    Healthcom 2005: 7th International Workshop on Enterprise Networking and Computing in Healthcare Industry, Proceedings, 2005, : 212 - 217
  • [29] Multi-national and Multi-language License Plate Detection using Convolutional Neural Networks
    Salemdeeb, Mohammed
    Erturk, Sarp
    ENGINEERING TECHNOLOGY & APPLIED SCIENCE RESEARCH, 2020, 10 (04) : 5979 - 5985
  • [30] Convolutional Feature Fusion for Multi-Language Text Detection in Natural Scene Images
    Chandio, Asghar Ali
    Pickering, Mark
    2019 2ND INTERNATIONAL CONFERENCE ON COMPUTING, MATHEMATICS AND ENGINEERING TECHNOLOGIES (ICOMET), 2019,