1. 东南大学计算机科学与工程学院,江苏,南京,210096
2. 江苏自动化研究所,江苏,连云港,222061
3. 东南大学计算机科学与工程学院,江苏,南京,210096
4. 江苏自动化研究所,江苏,连云港,222061
网络出版:2021-01-25,
纸质出版:2021
移动端阅览
王丽, 杜鹏程, 许一鸣, 等. 基于分层架构模式识别的软件架构重构技术[J]. 电子学报, 2021,49(1):201-208.
WANG Li, DU Peng-cheng, XU Yi-ming, et al. Software Architecture Reconstruction Technology Based on Layered Architecture Pattern Recognition[J]. Acta Electronica Sinica, 2021, 49(1): 201-208.
王丽, 杜鹏程, 许一鸣, 等. 基于分层架构模式识别的软件架构重构技术[J]. 电子学报, 2021,49(1):201-208. DOI: 10.12263/DZXB.20191198.
WANG Li, DU Peng-cheng, XU Yi-ming, et al. Software Architecture Reconstruction Technology Based on Layered Architecture Pattern Recognition[J]. Acta Electronica Sinica, 2021, 49(1): 201-208. DOI: 10.12263/DZXB.20191198.
本文提出一种基于分层架构模式识别的软件架构重构技术.该技术以目标软件的源代码作为输入,过滤与分层架构无关的代码,再利用代码词汇信息挖掘程序实体之间的语义关联,通过代码主题提取并计算程序实体之间的职责相似度,依据相似度将程序实体聚类形成组件.在软件组件化的基础上结合分层模式的ILD属性识别软件层次和软件架构模式.在模式识别的基础上,定位系统中存在的违规作为重构点,生成相应的重构建议并实施重构.最后,本文在Github与SourceForge开源社区中选取10个开源软件系统作为实验对象,验证了本文提出的基于分层架构模式识别的软件架构重构技术在模式识别有效性、重构点识别效果和重构建议实施效果方面与传统方法相比有较大提升,能够有效的帮助软件开发人员识别软件架构模式、获取重构点、生成重构建议,并协助开发人员进行架构重构实施,改善系统违规情况,提升软件质量.
This paper proposes software architecture reconstruction technology based on layered architecture pattern recognition. The input of the recognition is the source code and the unnecessary source code will be filtered out at first. Then the approach relies on lexical information from the source code to mine the semantic relation between system entities and using a topic model to extract the responsibility of entities
which is then used to cluster these entities into cohesion components. Later
the approach supplements the structural information between components to generate the component graph and use the ILD property to recognize the actual software layers. Based on the results of pattern recognition and the principle of layered pattern
position the nonstandard existing in the system as the reconstruction point
and relevant reconstruction suggestions to assist the designers and developers in the reconstruction implementation. Finally
this paper selects 10 open source software systems in Github and SourceForge as experimental objects to verify the effectiveness of the technology in this paper. This technology can greatly improve the effectiveness of pattern recognition
the recognition effect of illegal refactoring points and the implementation effect of refactoring suggestions. This technology can also assist developers in the implementation of architecture reconstruction to a certain extent
improve the situation of the system violations
and improve the quality of the software.
0
浏览量
53
下载量
0
CSCD
关联资源
相关文章
相关作者
相关机构
京公网安备11010802024621