首页> 中文学位 >基于复杂性度量改善软件设计质量的研究
【6h】

基于复杂性度量改善软件设计质量的研究

代理获取

目录

文摘

英文文摘

西北工业大学学位论文知识产权声明书和西北工业大学学位论文原创性声明

第一章绪论

1.1研究现状、文献综述

1.2研究内容及方法

1.3研究意义

1.4论文章节安排

第二章复杂性度量

2.1概述

2.2面向对象软件设计度量概念

2.3面向对象系统与面向过程系统中耦合的异同点

2.4面向对象系统中的耦合形式

2.4.1方法之间的相互作用耦合

2.4.2类/对象间的耦合

2.4.3组件耦合

2.5软件复杂度度量框架

2.5.1类内度量

2.5.2类间度量

2.5.3可复用性度量

2.6小结

第三章各类型耦合的解耦策略

3.1耦合变换

3.2耦合变换终止条件

3.3耦合性消解策略分析

3.3.1直接环形耦合

3.3.2抽象具体耦合

3.3.3内容耦合

3.3.4公共耦合

3.3.5控制耦合

3.3.6标记耦合

3.3.7继承耦合

3.3.8实例耦合

3.3.9接口耦合

3.4小结

第四章复杂性度量工具的设计与实现

4.1度量工具的总体结构

4.1.1度量工具设计思想

4.1.2度量工具的结构组成

4.2源代码分析器

4.3源代码文件的存储结构

4.4度量中间表示

4.4.1中间表示的作用

4.4.2抽象语法树文法及标识符表

4.4.3获取抽象语法树

4.4.4抽象语法树的遍历

4.4.5符号表

4.5复杂度度量计算器

4.6小结

第五章重构推荐工具的设计与实现

5.1重构推荐工具的系统框架

5.2不良设计的识别

5.3重构划分

5.4重构实现实例

5.4.1在类中添加变量

5.4.2上移子类方法

5.4.3重命名

5.4.4 strategy模式组合重构

5.5重构信息的封装和类之间的通信

5.6 Refactoring子类对象的生成方法

5.7 Refactoring Visitor及其子类

5.8将更新后的抽象语法树写回文件

5.9 小结

第六章同类工具比较及应用案例

6.1同类工具比较

6.2应用案例

第七章结论与展望

参考文献

发表的论文

致谢

展开▼

摘要

自从软件工程的概念诞生以来,如何分离软件系统各组成部分之间的复杂性,以达到软件系统的易维护性、易修改性和可扩展性的目的就一直是软件工程研究的重要问题。 软件系统复杂性度量框架可以定量分析软件系统的复杂性。然而,通过分析度量结果,我们却只能找出在系统的何处可能做出改进,不能得出具体实施方法;设计模式和重构技术对于如何做出设计和代码改进有着一套系统化的方法,但是对于如何探测出系统中的不良设计却依靠开发人员的直觉和经验。如果能利用复杂性度量发现不良设计,再利用设计模式和重构技术改善设计和代码结构,则能够达到很好的互补效果。其次,人工实施度量和重构工作量巨大,出错率高,成本高昂,在面对系统的快速迭代时必然会显得力不从心。设计一套自动化的度量和重构工具则可以提高这套方法的实用性和执行效率。 论文的主要工作和研究成果如下: 1.研究了影响软件复杂性的度量指标,采用量化的方法度量软件系统的复杂度,避免依赖经验和直觉去发现设计和代码中的不良设计。并改进了C&K度量框架; 2.研究了各种耦合类型及相关耦合消解策略; 3.给出了一个自动度量工具的设计和实现,该工具以抽象语法树和符号表为中间表示,通过对度量逻辑与抽象语法树构建、遍历的分离,定制符合用户需求的度量框架; 4.设计了重构推荐工具,使用自动度量工具的度量结果发现定位不良设计,量化的不良设计为项目管理者提供了精确的依据来确定应在何处优先实施重构,重构推荐工具通过不良设计类型的识别,采用半自动的方式利用已有的重构策略通过改写抽象语法树达到消解不良设计的目的。 论文通过实施度量发现问题,再使用重构推荐工具改善设计和代码结构,从而达到提高程序的可读性、易维护性、易修改性和可扩展性的目的。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号