arrow
返回

Investigating and recommending co-changed entities for JavaScript programs

delete2021-10-01
delete6
delete
OA
AI
Z
Zijian Jiang
H
Hao Zhong
N
Na Meng *
DOI:10.1016/j.jss.2021.111027delete
delete原文链接
delete分享
delete收藏
查看原文
摘要

摘要

En 中文
JavaScript (JS) is one of the most popular programming languages due to its flexibility and versatility, but maintaining JS code is tedious and error-prone. In our research, we conducted an empirical study to characterize the relationship between co-changed software entities (e.g., functions and variables), and built a machine learning (ML)-based approach to recommend additional entity to edit given developers' code changes. Specifically, we first crawled 14,747 commits in 10 open-source projects; for each commit, we created at least one change dependency graph (CDG) to model the referencer-referencee relationship between co-changed entities. Next, we extracted the common subgraphs between CDGs to locate recurring co-change patterns between entities. Finally, based on those patterns, we extracted code features from co-changed entities and trained an ML model that recommends entities-to-change given a program commit. According to our empirical investigation, (1) three recurring patterns commonly exist in all projects; (2) 80%-90% of co-changed function pairs either invoke the same function(s), access the same variable( s), or contain similar statement(s); (3) our ML-based approach CoRec recommended entity changes with high accuracy (73%-78%). CoRec complements prior work because it suggests changes based on program syntax, textual similarity, as well as software history; it achieved higher accuracy than two existing tools in our evaluation. (C) 2021 Elsevier Inc. All rights reserved.
Keyword:
Multi-entity edit
Change suggestion
Machine learning
JavaScript
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收藏
Effect of electrical polarity on dielectric breakdown in a soft magnetic fluid
err2020-03-01
err0
PREAI
errPavol Bartko; Michal Rajňák; Roman Cimbala; Katarína Paulovičová; Milan Timko; Peter Kopčanský; Juraj Kurimský
err分享
err收藏
Involvement of brain cytokines in the neurobehavioral disturbances induced by HIV-1 glycoprotein120
err2002-04-01
err0
PREAI
errOhr Barak; Inbal Goshen; Tamir Ben-Hur; Joseph Weidenfeld; Anna N Taylor; Raz Yirmiya
err分享
err收藏
Rascal:: A recommender agent for Agile reuse
err2005-10-22
err41
PREAI
errMcCarey, F; Cinnéide, M; Kushmerick, N
err分享
err收藏
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收藏
err分享
err收藏
Proprioceptive Mechanism for Bioinspired Fish Swimming
err2021-06-08
err0
PREAI
errJ. Sánchez-Rodríguez; F. Celestini; C. Raufaste; M. Argentina
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收藏
学者 查看更多内容