《软件重构技术研究》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:刘辉,李光杰著
  • 出 版 社:北京:北京理工大学出版社
  • 出版年份:2016
  • ISBN:9787568221054
  • 页数:258 页
图书介绍:本书主要介绍作者近十年从事软件重构方面的研究工作成果。在重构层次上,主要包括模型重构与代码重构;在重构阶段上,主要包括重构机检测、重构调度以及重构正确性验证等。该系列研究成果具有较高的学术价值,其中部分成果已经在国际顶级期刊和国际顶级会议上进行了简要的介绍,具有一定的国际影响力。本书可供相关人员参考使用。

第1章 绪论 1

1.1 软件重构的概念 1

1.2 代码坏味问题 2

1.3 软件重构规则 20

1.4 软件重构流程 20

1.5 软件重构研究现状 21

1.6 主要研究内容 23

第2章 模型重构 24

2.1 模型 24

2.2 软件模型 24

2.2.1 模型驱动的体系结构 25

2.2.2 以模型为核心的迭代开发 26

2.2.3 以模型为核心的软件维护 28

2.3 模型重构 29

2.4 模型重构的方法和工具 31

2.5 模型重构主要问题 31

2.6 自动化模型重构方案 33

2.6.1 图转换技术 34

2.6.2 基于图转换的模型重构方案 35

2.7 小结 35

第3章 模型重构描述语言 36

3.1 形式化的意义 36

3.2 形式化规则描述语言 37

3.2.1 基本概念 37

3.2.2 设计模型的形式化表示 38

3.2.3 自由变量 38

3.2.4 多重性 39

3.2.5 嵌套模式 40

3.2.6 序列 41

3.2.7 负面应用条件 42

3.2.8 不存在 42

3.2.9 所有 43

3.2.10 OCL约束 44

3.3 模型的形式化描述 44

3.3.1 简单模式及模式匹配 44

3.3.2 复杂模式及模式匹配 45

3.4 模型重构的形式化规则 46

3.5 形式化语法规则 48

3.6 模型重构形式化实例 49

3.7 小结 51

第4章 模型重构约束的描述与验证 52

4.1 特性保持约束 52

4.2 模型重构实例 53

4.3 重构规则的表示 54

4.4 重构约束的描述 56

4.5 重构约束的验证 59

4.6 适用条件 62

4.7 小结 63

第5章 模型坏味通用检测方法 64

5.1 坏味检测概述 64

5.2 通用检测方法设计思路 64

5.3 CSP问题及其求解方法 65

5.4 图模式匹配到CSP的转换 66

5.5 通用检测方法 67

5.6 通用检测方法的局限性 68

5.7 小结 68

第6章 顺序图中的克隆块检测 70

6.1 顺序图中的克隆块 70

6.2 基本顺序图及后缀树 71

6.2.1 基本顺序图及克隆块 71

6.2.2 后缀树 73

6.3 顺序图中克隆块的检测 75

6.3.1 检测方案设计思路 75

6.3.2 基本顺序图的克隆块检测 75

6.3.3 顺序图的高级特性及其处理对策 79

6.4 检测测试 82

6.5 小结 86

第7章 用况模型中的重复事件流片段检测 87

7.1 用况抽象模型与特征追踪关系 88

7.2 关键词抽取与事件相似度 89

7.3 事件流片段相似度 91

7.4 基于启发式搜索的相似事件流检测算法 91

7.5 算法分析 92

7.6 算法测试 93

7.7 小结 94

第8章 重叠用况检测 95

8.1 重叠用况问题 95

8.2 重叠用况特征 95

8.3 重叠用况 96

8.3.1 教务管理系统功能说明 96

8.3.2 重叠用况的影响 97

8.3.3 对重叠用况采取的措施 98

8.3.4 重叠用况难于检测 98

8.4 重叠用况的检测方法 98

8.4.1 方法概览 98

8.4.2 目标的标识与比较 99

8.4.3 生成状态机图 100

8.4.4 检测重叠状态迁移路径 103

8.4.5 检测重叠消息序列 104

8.5 算法测试 105

8.6 小结 106

第9章 重构调度策略 107

9.1 调度的重要性 107

9.2 重构冲突示例 108

9.3 重构质量度量模型 109

9.4 重构冲突的形式化表示 111

9.5 调度策略 111

9.5.1 方法概述 111

9.5.2 冲突矩阵 112

9.5.3 调度模型 113

9.5.4 调度策略 114

9.6 算法测试 117

9.6.1 测试项目 117

9.6.2 测试流程 117

9.6.3 测试结果 118

9.7 小结 122

第10章 基于图转换的模型重构工具 123

10.1 重构工具的现状 123

10.2 功能需求 124

10.3 体系结构 125

10.3.1 建模工具及元建模工具 126

10.3.2 规则描述语言编辑器 128

10.3.3 规则描述语言解析器 129

10.3.4 冲突检测 129

10.3.5 坏味检测 130

10.3.6 重构调度 130

10.3.7 执行引擎 130

10.3.8 其他插件 130

10.4 小结 131

第11章 方法抽取重构的检测与分析 132

11.1 概述 132

11.2 方法抽取重构 133

11.3 方法抽取重构检测 139

11.4 方法抽取检测算法 141

11.4.1 查找新方法 141

11.4.2 判断方法抽取 147

11.5 方法抽取检测插件的实现 154

11.6 插件测试 165

11.6.1 测试结果 165

11.6.2 测试分析 167

11.7 小结 177

第12章 实时增量式重构检测 178

12.1 实时检测和后期集中检测分析 178

12.2 集成环境中重构工具 179

12.3 实时增量式检测框架 184

12.3.1 监听器 185

12.3.2 代码坏味检测与重构工具 186

12.3.3 反馈控制器 187

12.3.4 代码坏味视图 188

12.4 实时增量式坏味检测插件 188

12.4.1 插件结构 188

12.4.2 ResListener监听器 192

12.4.3 检测器 197

12.5 实时增量式坏味检测插件的测试 223

12.5.1 测试对象 223

12.5.2 测试过程 224

12.6 小结 226

第13章 面向代码坏味检测的阈值动态优化方法 227

13.1 概述 227

13.1.1 研究背景与研究目标 227

13.1.2 相关研究 229

13.2 方法框架 230

13.2.1 方法流程与框架 230

13.2.2 坏味检测 231

13.2.3 手工确认与重构 231

13.2.4 反馈收集 231

13.2.5 阈值优化 231

13.3 阈值优化算法 232

13.3.1 阈值优化目标 232

13.3.2 最优阈值搜索 234

13.4 实验验证 239

13.4.1 实验对象 239

13.4.2 代码坏味及其数据收集 240

13.4.3 遗传算法参数配置 246

13.4.4 实验过程 247

13.4.5 实验结果与分析 247

13.5 小结 253

参考文献 254