面向模式的软件架构重构
发布时间:2023-01-30 17:04
软件不可避免地经历持续修改来适应新的需求,导致了架构腐蚀,偏移等情况的出现,这其中就包括架构坏味道的产生。架构坏味道通常是一组负面的架构设计决策,影响系统生命周期属性,对软件质量如可理解性,可测试性、可扩展性和可重用性产生消极影响。本文提出了一种面向模式的架构重构方法,针对不同类型的架构坏味道的重构需求,选择合适架构模式应用到当前的架构中,生成重构方案,消除架构坏味道,提高软件质量。我们针对连接过载,功能过载以及不必要依赖三种类型的架构坏味道重构需求,实现了五种可供选择的架构模式的重构,包括分层模式、插件模式、整体与部分模式、正交模式和消息总线模式。实验结果表明,该方法在重构成本可接受的范围内,将架构模式应用到架构中来改善软件架构,消除架构坏味道,提高软件质量。并且此方法可以广泛应用于软件中。本文的主要工作如下:(a)提出了消除架构坏味道的软件架构的重构过程,针对不同的架构坏味道的重构需求,应用不同的架构模式消除,具体包括架构恢复、重构需求生成、模式库构建、模式选择、架构模式重构决策树(AP-RD-T)构建、重构实施、重构结果评估等七个步骤。(b)提出了依据不同具体的架构坏味道类型,选...
【文章页数】:82 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
缩略词表
第一章 绪论
1.1 研究背景与意义
1.2 研究现状
1.2.1 架构坏味道的定义与检测
1.2.2 软件质量
1.2.3 重构实施技术
1.3 现状分析
1.4 论文主要工作
1.5 论文结构
第二章 相关知识与技术
2.1 软件架构定义与描述
2.2 架构模式
2.3 软件架构重构
2.3.1 决策树重构方法
2.3.2 图转换重构方法
2.4 本章小结
第三章 面向模式的架构重构
3.1 架构重构模型
3.2 面向模式的架构重构方法
3.3 具体重构步骤
3.3.1 架构恢复
3.3.2 架构坏味道重构需求生成
3.3.3 模式库构建
3.3.4 模式选择
3.3.5 AP-RD-T构建
3.3.6 重构实施
3.3.7 重构结果评估
3.4 本章小结
第四章 架构重构工具设计与实现
4.1 需求分析
4.1.1 工具概述
4.1.2 功能需求
4.2 概要设计
4.3 详细设计与实现
4.3.1 架构恢复模块设计与实现
4.3.2 重构需求生成模块设计与实现
4.3.3 模式库构建模块设计与实现
4.3.4 模式选择模块设计与实现
4.3.5 AP-RD-T构建模块设计与实现
4.3.6 重构实施模块设计与实现
4.4 本章小结
第五章 实验与分析
5.1 实验目的与实验环境
5.2 实验案例
5.3 实验设置
5.4 实验内容
5.4.1 实验一:验证架构重构的有效性
5.4.2 实验二:验证架构重构的成本是否在可控范围内
5.4.3 实验三:验证架构重构方法是否具有广泛适用性
5.5 实验结论
5.6 效度威胁
5.7 本章小结
第六章 总结与展望
6.1 工作总结
6.2 未来工作展望
致谢
参考文献
作者简介
【参考文献】:
期刊论文
[1]《软件体系结构》课程教学改革探讨[J]. 朱泽民,张青,何中林. 软件导刊. 2014(12)
[2]软件体系结构测试技术的现状与思考[J]. 巩绪芳,周颖,李必信. 小型微型计算机系统. 2008(08)
[3]面向对象系统中基于度量的可复用构件获取机制[J]. 周欣,陈向葵,孙家骕,杨芙清. 电子学报. 2003(05)
[4]基于层次消息总线的软件体系结构风格[J]. 张世琨,王立福,杨芙清. 中国科学E辑:技术科学. 2002(03)
硕士论文
[1]基于分层结构信息提取的软件架构恢复技术[D]. 张叶炼.东南大学 2018
[2]软件架构可演进性度量及可视化[D]. 耿鹤.东南大学 2017
[3]软件体系结构设计方法的研究与应用[D]. 汪保杰.湖南大学 2009
本文编号:3733274
【文章页数】:82 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
缩略词表
第一章 绪论
1.1 研究背景与意义
1.2 研究现状
1.2.1 架构坏味道的定义与检测
1.2.2 软件质量
1.2.3 重构实施技术
1.3 现状分析
1.4 论文主要工作
1.5 论文结构
第二章 相关知识与技术
2.1 软件架构定义与描述
2.2 架构模式
2.3 软件架构重构
2.3.1 决策树重构方法
2.3.2 图转换重构方法
2.4 本章小结
第三章 面向模式的架构重构
3.1 架构重构模型
3.2 面向模式的架构重构方法
3.3 具体重构步骤
3.3.1 架构恢复
3.3.2 架构坏味道重构需求生成
3.3.3 模式库构建
3.3.4 模式选择
3.3.5 AP-RD-T构建
3.3.6 重构实施
3.3.7 重构结果评估
3.4 本章小结
第四章 架构重构工具设计与实现
4.1 需求分析
4.1.1 工具概述
4.1.2 功能需求
4.2 概要设计
4.3 详细设计与实现
4.3.1 架构恢复模块设计与实现
4.3.2 重构需求生成模块设计与实现
4.3.3 模式库构建模块设计与实现
4.3.4 模式选择模块设计与实现
4.3.5 AP-RD-T构建模块设计与实现
4.3.6 重构实施模块设计与实现
4.4 本章小结
第五章 实验与分析
5.1 实验目的与实验环境
5.2 实验案例
5.3 实验设置
5.4 实验内容
5.4.1 实验一:验证架构重构的有效性
5.4.2 实验二:验证架构重构的成本是否在可控范围内
5.4.3 实验三:验证架构重构方法是否具有广泛适用性
5.5 实验结论
5.6 效度威胁
5.7 本章小结
第六章 总结与展望
6.1 工作总结
6.2 未来工作展望
致谢
参考文献
作者简介
【参考文献】:
期刊论文
[1]《软件体系结构》课程教学改革探讨[J]. 朱泽民,张青,何中林. 软件导刊. 2014(12)
[2]软件体系结构测试技术的现状与思考[J]. 巩绪芳,周颖,李必信. 小型微型计算机系统. 2008(08)
[3]面向对象系统中基于度量的可复用构件获取机制[J]. 周欣,陈向葵,孙家骕,杨芙清. 电子学报. 2003(05)
[4]基于层次消息总线的软件体系结构风格[J]. 张世琨,王立福,杨芙清. 中国科学E辑:技术科学. 2002(03)
硕士论文
[1]基于分层结构信息提取的软件架构恢复技术[D]. 张叶炼.东南大学 2018
[2]软件架构可演进性度量及可视化[D]. 耿鹤.东南大学 2017
[3]软件体系结构设计方法的研究与应用[D]. 汪保杰.湖南大学 2009
本文编号:3733274
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3733274.html