摘要
软件体系结构风格是对软件通用结构的泛化,软件的结构风格通常与结构特征密切相关,通过向某种风格演化能够使其软件的结构特征更加明显。传统的面向软件体系结构风格的演化方法在构建演化路径时,需要人工构造目标软件体系结构,因此缺少自动化的支持。目前,亦未提出针对软件体系结构风格的度量方法。因此,文中以正交化软件体系结构风格为例,提出了一种遗传算法与规划领域定义语言(Planning Domain Definition Language-PDDL)相结合的软件体系结构风格演化路径生成方法。该方法提出了一种基于语义相似度的遗传变异算子和正交软件体系结构风格的度量方法,提出了软件体系结构与PDDL的映射规则。实验证明,提出的遗传变异算子相比通用变异算子能更好地提升算法前期的收敛效率,正交软件体系结构风格演化完成后,软件的计算变动代价、正交风格距离以及McCabe度量等指标得以改善。
Software architecture style is a generalization of the co mmon structure of software,and the structure style of software is usually closely related to the structural characteristics.By evolving to a certain style,the structural characteristics of the software can be more obvious.Traditional software architecture style evolution methods not only require manual construction of the target software architecture when building the evolution path,which lack the automation support,but also no measurement method for software architecture style has been proposed.Therefore,this paper takes orthogonal software architecture style as an example and proposes a software architecture style evolution path generation method that combines genetic algorithm and planning domain definition language(PDDL).This method proposes a genetic mutation operator based on semantic similarity and a measurement method for orthogonal software architecture style,and proposes the mapping rules between software architecture and PDDL.Experiments show that the proposed genetic mutation operator can better improve the convergence efficiency of the algorithm in the early stage,and after the orthogonal software architecture style evolution is completed,the software is improved in terms of change cost,orthogonal style distance and McCabe measurement.
作者
钟林辉
杨超逸
夏子豪
黄淇轩
屈乔乔
李方云
孙文彬
ZHONG Linhui;YANG Chaoyi;XIA Zihao;HUANG Qixuan;QU Qiaoqiao;LI Fangyun;SUN Wenbin(College of Computer and Information Engineering,Jiangxi Normal University,Nanchang 330022,China)
出处
《计算机科学》
CSCD
北大核心
2024年第S02期766-774,共9页
Computer Science
基金
国家自然科学基金(62062039,61966017)
江西省自然科学基金(20212BAB202017,20224BAB202013,20212BAB202018)
校教改课题(JXSDJG2044)。
关键词
软件体系结构
软件体系结构风格
遗传算法
软件演化
基于搜索的软件工程
Software architecture
Software architecture style
Genetic algorithm
Software evolution
Search-based software engineering