A DQN-based agent for automatic software refactoring

重构代码 计算机科学 技术债务 过程(计算) 软件 软件维护 依赖关系(UML) 软件工程 基于搜索的软件工程 软件系统 软件开发 软件开发过程 程序设计语言
作者
Hamidreza Ahmadi,Mehrdad Ashtiani,Mohammad Abdollahi Azgomi,Raana Saheb-Nassagh
出处
期刊:Information & Software Technology [Elsevier BV]
卷期号:147: 106893-106893 被引量:4
标识
DOI:10.1016/j.infsof.2022.106893
摘要

Nowadays, technical debt has become a very important issue in software project management. The main mechanism to repay this debt is through refactoring. Refactoring software projects usually comes at a high cost. As a result, researchers have always looked for ways to minimize this cost, and a good potential candidate to reduce the cost of a process is to automate it. One of the automatic software refactoring methods that recently has received a lot of attention is based on search-based software engineering (SBSE) methods. Although because of comprehensiveness and versatility SBSE is considered an appropriate method for automatic refactoring, it has its downsides, the most important of which are the uncertainty of the results and the exponential execution time. In this research, a solution is proposed inspired by search-based refactoring while taking advantage of exploitation in reinforcement learning techniques. This work aims to solve the uncertainty problems and execution time for large programs. In the proposed approach, the problem of uncertainty is solved by targeting the selection of refactoring actions used in the search-based approach. Also, due to the reduction of the dependency between the choice of the appropriate refactoring and its execution time, the time problem in large software refactoring has been greatly improved. Amongst the performed evaluations and specifically for the refactoring of the largest case study, the proposed approach managed to increase the accuracy to more than twice of the SBSE refactoring approaches, while reducing the execution time of refactoring by more than 98%. The results of the tests show that with increasing the volume and size of the software, the performance of the proposed approach also improves compared to the methods based on SBSE, both in terms of reducing technical debt and speeding up the refactoring process.

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
李东东发布了新的文献求助10
1秒前
crescendo完成签到,获得积分10
1秒前
科研通AI6.2应助ChuzLin采纳,获得10
1秒前
小叶子完成签到,获得积分10
1秒前
冬烜完成签到 ,获得积分10
1秒前
Verdurie应助Singularity采纳,获得50
1秒前
JL麟完成签到,获得积分10
2秒前
可爱的函函应助tom采纳,获得10
2秒前
Dr W完成签到 ,获得积分10
3秒前
離殇完成签到,获得积分10
4秒前
现实的狗发布了新的文献求助10
4秒前
张三完成签到,获得积分10
4秒前
5秒前
邓文连完成签到,获得积分10
5秒前
Betty发布了新的文献求助10
5秒前
踏实汉堡完成签到,获得积分10
5秒前
科目三应助连冷安采纳,获得10
6秒前
6秒前
Zero_榊啸号完成签到,获得积分10
7秒前
大力的灵雁应助zhangchaobo采纳,获得10
7秒前
递送发布了新的文献求助10
7秒前
111完成签到,获得积分10
8秒前
深蓝完成签到,获得积分10
8秒前
8秒前
Big胆完成签到,获得积分10
9秒前
阳光的纸飞机完成签到,获得积分10
9秒前
怡然的绮烟完成签到 ,获得积分20
9秒前
Mira+完成签到,获得积分10
9秒前
大模型应助大蛋采纳,获得10
9秒前
Yeong完成签到,获得积分10
9秒前
grass完成签到,获得积分10
9秒前
十二完成签到 ,获得积分10
10秒前
然然完成签到,获得积分10
10秒前
11秒前
留胡子的寄瑶完成签到,获得积分10
11秒前
阳光向日葵完成签到,获得积分10
11秒前
Cloudy355完成签到,获得积分10
12秒前
星辰大海应助清爽的巧蕊采纳,获得10
12秒前
苏以禾完成签到 ,获得积分10
12秒前
椿人完成签到 ,获得积分10
13秒前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
AnnualResearch andConsultation Report of Panorama survey and Investment strategy onChinaIndustry 1000
卤化钙钛矿人工突触的研究 1000
Engineering for calcareous sediments : proceedings of the International Conference on Calcareous Sediments, Perth 15-18 March 1988 / edited by R.J. Jewell, D.C. Andrews 1000
Continuing Syntax 1000
Signals, Systems, and Signal Processing 610
2026 Hospital Accreditation Standards 500
热门求助领域 (近24小时)
化学 材料科学 医学 生物 纳米技术 工程类 有机化学 化学工程 生物化学 计算机科学 物理 内科学 复合材料 催化作用 物理化学 光电子学 电极 细胞生物学 基因 无机化学
热门帖子
关注 科研通微信公众号,转发送积分 6263115
求助须知:如何正确求助?哪些是违规求助? 8085087
关于积分的说明 16893404
捐赠科研通 5333539
什么是DOI,文献DOI怎么找? 2839041
邀请新用户注册赠送积分活动 1816513
关于科研通互助平台的介绍 1670236