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)

科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
暖暖发布了新的文献求助10
刚刚
Jessekwok完成签到,获得积分10
1秒前
1秒前
1秒前
赵永斌发布了新的文献求助10
1秒前
lily000完成签到,获得积分10
1秒前
脑洞疼应助wyx采纳,获得10
1秒前
毛绒绒窝铺完成签到,获得积分10
2秒前
kk完成签到,获得积分10
2秒前
profit完成签到 ,获得积分10
2秒前
科研通AI5应助糊涂涂采纳,获得30
2秒前
小二郎应助curlycai采纳,获得10
2秒前
潇洒毒娘发布了新的文献求助10
2秒前
爆米花应助现实的问玉采纳,获得10
3秒前
DT发布了新的文献求助10
3秒前
3秒前
gwentea完成签到,获得积分20
4秒前
pwy发布了新的文献求助10
4秒前
Owen应助阿鸢采纳,获得20
4秒前
玛卡巴卡发布了新的文献求助10
5秒前
123131发布了新的文献求助10
5秒前
略微妙蛙完成签到,获得积分10
5秒前
出轨的妻子完成签到 ,获得积分10
5秒前
6秒前
7秒前
情怀应助自由的白玉采纳,获得10
7秒前
7秒前
8秒前
cbf完成签到 ,获得积分10
8秒前
8秒前
Cjw完成签到,获得积分10
8秒前
明亮飞双完成签到,获得积分10
9秒前
i2z发布了新的文献求助10
9秒前
青黄完成签到,获得积分10
10秒前
奋斗的猪完成签到 ,获得积分10
10秒前
10秒前
yc完成签到,获得积分10
10秒前
英俊的铭应助123131采纳,获得10
10秒前
历历历历完成签到 ,获得积分10
10秒前
10秒前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
计划经济时代的工厂管理与工人状况(1949-1966)——以郑州市国营工厂为例 500
INQUIRY-BASED PEDAGOGY TO SUPPORT STEM LEARNING AND 21ST CENTURY SKILLS: PREPARING NEW TEACHERS TO IMPLEMENT PROJECT AND PROBLEM-BASED LEARNING 500
The Pedagogical Leadership in the Early Years (PLEY) Quality Rating Scale 410
Stackable Smart Footwear Rack Using Infrared Sensor 300
Modern Britain, 1750 to the Present (第2版) 300
Writing to the Rhythm of Labor Cultural Politics of the Chinese Revolution, 1942–1976 300
热门求助领域 (近24小时)
化学 材料科学 医学 生物 工程类 有机化学 生物化学 物理 纳米技术 计算机科学 内科学 化学工程 复合材料 物理化学 基因 催化作用 遗传学 冶金 电极 光电子学
热门帖子
关注 科研通微信公众号,转发送积分 4603484
求助须知:如何正确求助?哪些是违规求助? 4012177
关于积分的说明 12422449
捐赠科研通 3692673
什么是DOI,文献DOI怎么找? 2035749
邀请新用户注册赠送积分活动 1068916
科研通“疑难数据库(出版商)”最低求助积分说明 953403