返回
Enhancing software quality attributes through multi-dimensional refactoring at source-level
DOI:10.1016/j.scico.2025.103434.png)
摘要
En 中文
网络物理系统(CPSs)越来越依赖复杂、高级的软件组件进行协调、集成和控制逻辑。随着这些组件的演进,保持关键质量属性——如模块化、可测试性和架构稳定性——变得至关重要。自动源代码级重构提供了一种实用且系统化的方法,以在动态CPS环境中维护软件质量,其中演进通过持续开发而非自主运行时适配发生。基于搜索的重构方法自动识别优化重构序列以提升软件质量。然而,质量属性的多样性、缺乏形式化定义以及它们之间的非相关性,使得在基于搜索的重构中测量、调和及适当应用质量属性具有挑战性。本文介绍了一个自动化重构引擎CodART,它利用编译器原理在源代码层面执行18种不同的重构操作,生成可编译的代码。此外,定义并评估了九个质量属性,以有效指导基于搜索的重构。新颖的RNSGA-III算法被采用,以在九维空间中更好地平衡目标。许多现有重构工具在简化代码、UML或AST层面应用转换,且不直接输出可编译的转换后源代码。相比之下,CodART在源代码层面应用所有转换,并生成可编译的Java程序作为输出——这是集成到高可信CPS软件流水线中的关键要求。与现有方法相比,所提出的方法增强了质量属性的数量、重构操作和优化算法。所提出的算法在大型、中型和小型项目中分别平均提升软件质量9%、12%和18%,超越了当前最佳方法。
Keyword:
Automated software refactoring
Search-based software engineering
Many-objective evolutionary algorithm
Software quality
Refactoring sequence
期刊
S
IF:
1.4
论文数:
51
被引数:
1.6K
机构
引用论文
A Brief Review on Multi-objective Software Refactoring and a New Method for Its Recommendation多目标软件重构及其推荐新方法综述
Multi-Criteria Code Refactoring Using Search-Based Software Engineering: An Industrial Case Study使用基于搜索的软件工程的多标准代码重构: 一个工业案例研究

