抽取方法重构背后的意图:一项系统性文献综述
软件工程
2023-12-21 v1
摘要
代码重构被广泛认为是提高源代码可理解性和可维护性的基本软件工程实践。抽取方法(Extract Method)重构被视为重构中的“瑞士军刀”,因为开发人员经常应用它来提高代码质量。近年来,多项研究试图推荐抽取方法重构,从而收集、分析并揭示软件项目中重构实践的可行数据驱动见解。本文旨在综述现有关于抽取方法重构的知识体系,探讨其局限性及未来研究工作的潜在改进机会,从而使研究人员和从业人员了解该领域的最新进展并识别新的研究机遇。我们以系统性文献综述(SLR)的形式回顾了与抽取方法重构相关的知识体系。在 compiling 初始包含 1,367 篇论文的库后,我们进行了系统性筛选,最终库包含 83 项主要研究。我们定义了三组研究问题,并基于方法论、适用性和自动化程度等标准,系统地开发和完善了一个分类模式。结果构建了一个包含 83 种抽取方法的目录,表明文献中已提出了多种技术。我们的结果显示:(i) 38.6% 的抽取方法重构研究主要侧重于解决代码克隆问题;(ii) 若干抽取方法工具在应用方法提取时将开发人员的参与纳入决策过程;以及 (iii) 现有基准测试具有异质性且不包含相同类型的信息,使得出于基准测试目的对其进行标准化变得困难。
引用
@article{arxiv.2312.12600,
title = {Behind the Intent of Extract Method Refactoring: A Systematic Literature Review},
author = {Eman Abdullah AlOmar and Mohamed Wiem Mkaouer and Ali Ouni},
journal= {arXiv preprint arXiv:2312.12600},
year = {2023}
}