Automatic method change suggestion to complement multi-entity edits

被引:4
|
作者
Jiang, Zijian [1 ]
Wang, Ye [1 ]
Zhong, Hao [2 ]
Meng, Na [1 ]
机构
[1] Virginia Polytech Inst & State Univ, Blacksburg, VA 24060 USA
[2] Shanghai Jiao Tong Univ, Shanghai 200240, Peoples R China
基金
中国国家自然科学基金; 国家重点研发计划;
关键词
Multi-entity edit; Common field access; Common method invocation; Change suggestion; SOFTWARE; MAINTENANCE;
D O I
10.1016/j.jss.2019.110441
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
When maintaining software, developers sometimes change multiple program entities (i.e., classes, methods, and fields) to fulfill one maintenance task. We call such complex changes multi-entity edits. Consistently and completely applying multi-entity edits can be challenging, because (1) the changes scatter in different entities and (2) the incorrectly edited code may not trigger any compilation or runtime error. This paper introduces CMSuggester, an approach to suggest complementary changes for multi-entity edits. Given a multi-entity edit that (i) adds a new field or method and (ii) modifies one or more methods to access the field or invoke the method, CMSuggester suggests other methods to co-change for the new field access or method invocation. The design of CMSuggester is motivated by our preliminary study, which reveals that co-changed methods usually access existing fields or invoke existing methods in common. Our evaluation shows that based on common field accesses, CMSuggester recommended method changes in 463 of 685 tasks with 70% suggestion accuracy; based on common method invocations, CMSuggester handled 557 of 692 tasks with 70% accuracy. Compared with prior work ROSE, TARMAQ, and Transitive Association Rules (TAR), CMSuggester recommended more method changes with higher accuracy. Our research can help developers correctly apply multi-entity edits. (C) 2019 Elsevier Inc. All rights reserved.
引用
收藏
页数:12
相关论文
共 50 条
  • [21] IRETE: An Improved RETE Multi-entity Match Algorithm
    Yang, Pingle
    Yang, Yalei
    Wang, Ning
    2011 INTERNATIONAL CONFERENCE ON ELECTRONICS, COMMUNICATIONS AND CONTROL (ICECC), 2011, : 4363 - 4366
  • [22] Micro-review synthesis for multi-entity summarization
    Nguyen, Thanh-Son
    Lauw, Hady W.
    Tsaparas, Panayiotis
    DATA MINING AND KNOWLEDGE DISCOVERY, 2017, 31 (05) : 1189 - 1217
  • [23] Multi-Entity and Multi-Enrollment Key Agreement With Correlated Noise
    Guenlue, Onur
    IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, 2021, 16 : 1190 - 1202
  • [24] A Knowledge-based Multi-entity and Cooperative System Architecture
    Muehlig, Manuel
    Fischer, Lydia
    Hasler, Stephan
    Deigmoeller, Joerg
    PROCEEDINGS OF THE 2020 IEEE INTERNATIONAL CONFERENCE ON HUMAN-MACHINE SYSTEMS (ICHMS), 2020, : 205 - 210
  • [25] Multi-entity perspective transportation infrastructure investment decision making
    Mishra, Sabyasachee
    Khasnabis, Snehamay
    Swain, Subrat
    TRANSPORT POLICY, 2013, 30 : 1 - 12
  • [26] Building small scale models of multi-entity databases by clustering
    Hébrail, G
    Lechevallier, Y
    CLASSIFICATION, CLUSTERING, AND DATA MINING APPLICATIONS, 2004, : 381 - 391
  • [27] Multi-entity Bayesian Networks for Treasuring the Intangible Cultural Heritage
    Chantas, Giannis
    Nikolopoulos, Spiros
    Kompatsiaris, Ioannis
    PROCEEDINGS OF THE 2014 9TH INTERNATIONAL CONFERENCE ON COMPUTER VISION, THEORY AND APPLICATIONS (VISAPP 2014), VOL 2, 2014, : 796 - 802
  • [28] An Empirical Study of Multi-Entity Changes in Real Bug Fixes
    Wang, Ye
    Meng, Na
    Zhong, Hao
    PROCEEDINGS 2018 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2018, : 287 - 298
  • [29] Multi-entity Bayesian network for the handling of uncertainties in SATCOM Links
    Tian, Xin
    Chen, Genshe
    Martin, Todd
    Chang, K. C.
    Tien Nguyen
    Khanh Pham
    Blasch, Erik
    SENSORS AND SYSTEMS FOR SPACE APPLICATIONS VIII, 2015, 9469
  • [30] Aerial Target Recognition Based on Multi-entity Bayesian Network
    Zhang, Jiandong
    Feng, Zhanbo
    Shi, Guoqing
    Liu, Yunzhou
    Li, Xuewei
    2022 IEEE 17TH INTERNATIONAL CONFERENCE ON CONTROL & AUTOMATION, ICCA, 2022, : 261 - 266