REMS: Recommending Extract Method Refactoring Opportunities via Multi-view Representation of Code Property Graph

重构代码 计算机科学 人工智能 机器学习 启发式 编码(集合论) 图形 软件 数据挖掘 程序设计语言 理论计算机科学 操作系统 集合(抽象数据类型)
作者
Di Cui,Qiangqiang Wang,Siqi Wang,Jianlei Chi,Jianan Li,Lu Wang,Qingshan Li
标识
DOI:10.1109/icpc58990.2023.00034
摘要

Extract Method is one of the most frequently performed refactoring operations for the decomposition of large and complex methods, which can also be combined with other refactoring operations to remove a variety of design flaws. Several Extract Method refactoring tools have been proposed based on the quantification of extraction criteria. To the best of our knowledge, state-of-the-art related techniques can be broadly divided into two categories: the first line is non-machine-learning-based approaches built on heuristics, and the second line is machine learning-based approaches built on historical data. Most of these approaches characterize the extraction criteria by deriving software metrics from fine-grained code properties. However, in most cases, these metrics can be challenging to concretize, and their selections and thresholds also largely rely on expert knowledge. Thus, in this paper, we propose an approach to automatically recommend Extract Method refactoring opportunities named REMS via mining multi-view representations from code property graph. We fuse various representations together using compact bilinear pooling and further train machine learning classifiers to guide the extraction of suitable lines of code as new method. We evaluate our approach on two publicly available datasets. The results show that our approach outperforms five state-of-the-art refactoring tools including GEMS, JExtract, SEMI, JDeodorant, and Segmentation in effectiveness and usefulness. Our approach demonstrates an increase of 29% in precision, 15% in recall, and 23% in f1-measure. The results also unveil practical suggestions and provide new insights that benefit additional extract-related refactoring techniques.
最长约 10秒,即可获得该文献文件

科研通智能强力驱动
Strongly Powered by AbleSci AI
更新
PDF的下载单位、IP信息已删除 (2025-6-4)

科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
xx完成签到,获得积分10
1秒前
sfwrbh发布了新的文献求助10
1秒前
LZYJJ发布了新的文献求助10
1秒前
1秒前
pangdahai完成签到,获得积分10
2秒前
无极微光应助哆啦A榕采纳,获得20
2秒前
栢君苏mini完成签到,获得积分10
3秒前
Azyyyy完成签到,获得积分10
3秒前
chengcheng完成签到,获得积分10
3秒前
4秒前
4秒前
123完成签到,获得积分10
5秒前
从全世界路过完成签到 ,获得积分10
5秒前
六六大顺完成签到 ,获得积分10
6秒前
Gtx完成签到,获得积分10
6秒前
7秒前
elevEn完成签到,获得积分10
7秒前
8秒前
Aaaaaaa发布了新的文献求助10
9秒前
走过发布了新的文献求助10
10秒前
完美世界应助xiantianhappy采纳,获得10
10秒前
深情安青应助LL采纳,获得10
10秒前
传奇3应助michael采纳,获得10
11秒前
11秒前
13秒前
量子星尘发布了新的文献求助10
13秒前
123发布了新的文献求助10
14秒前
15秒前
柴犬小太郎完成签到,获得积分10
15秒前
15秒前
suai完成签到,获得积分10
16秒前
花痴的鹰发布了新的文献求助10
17秒前
17秒前
cangmingzi完成签到,获得积分10
17秒前
无语完成签到,获得积分10
17秒前
18秒前
娇娇完成签到 ,获得积分10
18秒前
LL发布了新的文献求助10
20秒前
明月完成签到,获得积分10
20秒前
21秒前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
List of 1,091 Public Pension Profiles by Region 1581
以液相層析串聯質譜法分析糖漿產品中活性雙羰基化合物 / 吳瑋元[撰] = Analysis of reactive dicarbonyl species in syrup products by LC-MS/MS / Wei-Yuan Wu 1000
Biology of the Reptilia. Volume 21. Morphology I. The Skull and Appendicular Locomotor Apparatus of Lepidosauria 600
The Scope of Slavic Aspect 600
Foregrounding Marking Shift in Sundanese Written Narrative Segments 600
Rousseau, le chemin de ronde 500
热门求助领域 (近24小时)
化学 材料科学 医学 生物 工程类 有机化学 生物化学 物理 纳米技术 计算机科学 内科学 化学工程 复合材料 物理化学 基因 遗传学 催化作用 冶金 量子力学 光电子学
热门帖子
关注 科研通微信公众号,转发送积分 5540459
求助须知:如何正确求助?哪些是违规求助? 4626994
关于积分的说明 14601951
捐赠科研通 4568032
什么是DOI,文献DOI怎么找? 2504328
邀请新用户注册赠送积分活动 1481989
关于科研通互助平台的介绍 1453623