计算机科学 ›› 2026, Vol. 53 ›› Issue (6A): 250900102-7.doi: 10.11896/jsjkx.250900102
钟林辉1, 廖梓辰1, 郑燚1, 屈乔乔1,2, 胡贞1, 李卓宇1, 刘文旋1
ZHONG Linhui1, LIAO Zichen1, ZHENG Yi1, QU Qiaoqiao1,2, HU Zhen1, LI Zhuoyu1, LIU Wenxuan1
摘要: 软件体系结构C2 风格是一种典型的层次化风格,强调软件构件通过连接件等规则进行通讯。将现有的软件系统向C2风格转换,能有效提升系统的灵活性与可扩展性。然而,现有软件系统存在构件直接连接导致的连接件不明确,以及软件系统在演化过程中路径不明确等问题。提出了基于规则的以“核类”为中心的聚类方法,用于识别连接件;进一步设计了一种引入CodeT5语义信息引导变异的改进多目标优化遗传算法,以C2风格距离、模块化质量和演化代价为优化目标,搜索得到更优的C2风格软件体系结构。最后,基于反射模型提取软件系统演化前后软件体系结构的差异,生成PDDL等领域文件,结合PDDL解释器生成演化路径。实验表明,RBCOC方法能够有效识别连接件。CT5NSGA3算法在C2风格体系结构搜索中表现出良好的性能,对比实验还验证了CT5NSGA3算法优于传统NSGA3算法。
中图分类号:
| [1] RONG G P,ZHANG H,SHAO D,et al.A Review of Software Processes and Management Methods[J].Journal of Software,2019,30(1):62-79. [2] PERRY D E,WOLFA L.Foundations for the study of software architecture[J].ACM SIGSOFT Software Engineering Notes,1992,17(4):40-52. [3] GARLAN D,SHAW M.Advances in Software Engineering and Knowledge Engineering[M].World Scientific Publishing Company,New Jersey,1993. [4] ZHONG L H,YANG C Y,XIA Z H,et al.A Style-Oriented Method for Generating Software Architecture Evolution Paths[J].Computer Science,2024,51(S2):776-784. [5] MAHDAVI K,HARMAN M,HIERONS R M.A multiple hill climbing appro-ach to software module clustering[C]//Procee-dings of the International Conference on Software Maintenance.2003:315-324. [6] SINGH S,KOZIOLEK A.Automated Reverse Engineering for MoM-based Microservices(ARE4MOM) using static analysis[C]//Proceedings of the 2024 IEEE 21st International Confe-rence on Software Architecture(ICSA).2024:12-22. [7] KIRSCHNER Y R,GSTÜR M,SAGˇLAM T,et al.Retriever:A view-based approach to reverse engineering software architecture models[J].Journal of Systems and Software,2025,220:112277. [8] XUE H.Research on Software Architecture Recovery Method Based on Dynamic-Center Hierarchical Clustering[D].Xi'an:Xidian University,2023. [9] ALLEN R,GARLAN D.A formal basis for architectural connection[J].ACM Transactions on Software Engineering and Methodology(TOSEM),1997,6(3):213-249. [10] CORTÉS M I,FONTOURA M,DE LUCENA C J P.A rule-based approach to framework evolution[J].Jourance Object Technolgy,2006,5(1):83-103. [11] PRAJAPATI A.Harmony search-based approach for multi-objective soft-ware architecture reconstruction[J].Mathematics,2020,8(11):1906. [12] GARLAN D,BARNES J M.Evolution styles:Foundations and tool support for software architecture evolution[C]//Procee-dings of the 2009 Joint Working IEEE/IFIP Conference on Software Architecture(WICSA/ECSA).2009:131-140. [13] BARNES J M,PANDEY A,GARLAN D.Automated planning for soft-ware architecture evolution[C]//Proceedings of the 2013 28thIEEE/ACM International Conference on Automated Software Engineering(ASE).IEEE,2013:213-223. [14] YE H T.Research on Recovery of Component-Based Software Evolution History Based on Architecture Reverse Engineering[D].Nanchang:Jiangxi Normal University,2019. [15] GAMMA E.Design patterns:elements of reusable object-oriented soft-ware[J].1995.24(5):17-24. [16] LIAO M Y,GUO H Q,ZHANG Y J.An Improved Genetic Algorithm with Integer Encoding[J].Computer Engineering and Applications,2003,39(1):103-105,120. [17] XUAN R,CHEN L,SHI H H.Reusable Design and Implementation of Graph Algorithms[J].Journal of Jiangxi Normal University(Natural Science Edition),2023,47(1):52-60. [18] ZHONG L H,XIA J,PENG Y,et al.Research on a Graph-Edit-Distance-Based Metric for Software Architecture Changeability and Its Application[J]. Journal of Chinese Computer Systems,2018,39(3):425-432. [19] LI Z H,ZHU L.Principles and Practice of Software Engineering[M].Nanjing:Nanjing University Press,2020:252. [20] WANG L P,REN Y,QIU Q C,et al.A Survey of Performance Evaluation Indicators for Multi-Objective Evolutionary Algorithms[J].Chinese Journal of Computers,2021,44(8):1590-1619. [21] ZHONG L H,QI J,YE H T,et al.Research on a Software Evolution Style Matching Method Based on a Multidimensional Attribute Evolution Tree[J].Journal of Jiangxi Normal University(Natural Science Edition),2021,45(1):55-59. |
|
||