当前位置: X-MOL 学术Inf. Softw. Technol. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
On preserving the behavior in software refactoring: A systematic mapping study
Information and Software Technology ( IF 3.9 ) Pub Date : 2021-07-09 , DOI: 10.1016/j.infsof.2021.106675
Eman Abdullah AlOmar 1 , Mohamed Wiem Mkaouer 1 , Christian Newman 1 , Ali Ouni 2
Affiliation  

Context:

Refactoring is the art of modifying the design of a system without altering its behavior. The idea is to reorganize variables, classes and methods to facilitate their future adaptations and comprehension. As the concept of behavior preservation is fundamental for refactoring, several studies, using formal verification, language transformation and dynamic analysis, have been proposed to monitor the execution of refactoring operations and their impact on the program semantics. However, there is no existing study that examines the available behavior preservation strategies for each refactoring operation.

Objective:

This paper identifies behavior preservation approaches in the research literature.

Method:

We conduct, in this paper, a systematic mapping study, to capture all existing behavior preservation approaches that we classify based on several criteria including their methodology, applicability, and their degree of automation.

Results:

The results indicate that several behavior preservation approaches have been proposed in the literature. The approaches vary between using formalisms and techniques, developing automatic refactoring safety tools, and performing a manual analysis of the source code.

Conclusion:

Our taxonomy reveals that there exist some types of refactoring operations whose behavior preservation is under-researched. Our classification also indicates that several possible strategies can be combined to better detect any violation of the program semantics.



中文翻译:

保留软件重构中的行为:系统映射研究

语境:

重构是修改系统设计而不改变其行为的艺术。这个想法是重新组织变量、类和方法,以促进它们未来的适应和理解。由于行为保留的概念是重构的基础,因此已经提出了一些使用形式验证、语言转换和动态分析的研究来监控重构操作的执行及其对程序语义的影响。然而,没有现有的研究检查每个重构操作的可用行为保留策略。

客观的:

本文确定了研究文献中的行为保护方法。

方法:

在本文中,我们进行了一项系统的映射研究,以捕获我们根据若干标准(包括方法学、适用性和自动化程度)对这些方法进行分类的所有现有行为保护方法。

结果:

结果表明,文献中已经提出了几种行为保护方法。这些方法在使用形式主义和技术、开发自动重构安全工具以及对源代码进行手动分析之间有所不同。

结论:

我们的分类法表明,存在一些类型的重构操作,其行为保留研究不足。我们的分类还表明可以组合几种可能的策略来更好地检测任何违反程序语义的行为。

更新日期:2021-07-15
down
wechat
bug