arrow
返回

Automatic method change suggestion to complement multi-entity edits

delete2020-01-01
delete5
delete
OA
AI
Z
Zijian Jiang
Y
Ye Wang
H
Hao Zhong
N
Na Meng *
DOI:10.1016/j.jss.2019.110441delete
delete原文链接
delete分享
delete收藏
查看原文
摘要

摘要

En 中文
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.
Keyword:
Multi-entity edit
Common field access
Common method invocation
Change suggestion
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Journal of Systems and Software 封面图
Journal of Systems and Software
IF:
4.1
论文数:
5.5K
被引数:
8.4K

机构

S
shanghai jiao tong university
学者数:
15.7W
论文数: 11.7W
被引数: 159
引用论文

引用论文

err分享
err收藏
GenProg: A Generic Method for Automatic Software Repair
err2012-01-01
err594
PREAI
errLe Goues, Claire; ThanhVu Nguyen; Forrest, Stephanie; Weimer, Westley
err分享
err收藏
Aggregating Association Rules to Improve Change Recommendation聚合关联规则以改进变更推荐
err2017-12-01
err13
PREAI
errRolfsnes, Thomas; Moonen, Leon; Di Alesio, Stefano; Behjati, Razieh; Binkley, Dave
err分享
err收藏
Predicting source code changes by mining change history
err2004-09-01
err359
errOAAI
errYing, ATT; Murphy, GC; Ng, R; Chu-Carroll, MC
err分享
err收藏
没有更多内容