目录 3
第Ⅰ部分 软件过程成熟度 3
第1章 软件成熟度框架 3
1.1 软件过程改进 4
1.2 过程成熟度级别 4
1.3 优化过程中的人员问题 11
1.4 需要优化过程 12
1.5 小结 13
参考文献 14
第2章 软件过程改进的原则 16
2.1 过程透视 16
2.2 6项基本原则 17
2.3 对软件过程的一些常见误解 23
2.4 实施软件过程改进的策略 29
2.5 小结 31
参考文献 32
第3章 软件过程评估 34
3.1 评估概述 35
3.2 评估阶段 35
3.3 5项评估原则 36
3.4 评估过程 39
3.5 评估实施 44
3.6 实施注意事项 48
3.7 小结 49
参考文献 50
第4章 初始过程 51
4.1 初始过程的特征 52
4.2 一个混沌项目的案例研究 53
4.3 软件组织混沌的原因 53
4.4 软件过程熵 58
4.5 出路 59
4.6 小结 60
参考文献 61
第Ⅱ部分 可重复过程 65
第5章 软件组织管理 65
5.1 承诺规章 65
5.2 管理系统 67
5.3 建立项目管理系统 75
5.4 小结 76
参考文献 77
第6章 项目计划 78
6.1 制定项目计划的原则 78
6.2 项目计划内容 80
6.3 规模度量 84
6.4 估计 86
6.5 影响生产率的因素 90
6.6 进度安排 95
6.7 项目跟踪 96
6.8 开发计划 98
6.9 计划模型 102
6.10 最后的考虑事项 102
6.11 小结 103
参考文献 104
第7章 软件配置管理(一) 106
7.1 配置管理的意义 106
7.2 软件产品术语 107
7.3 基本的配置管理功能 108
7.4 基线 115
7.5 配置管理职责 121
7.6 对自动化工具的需求 124
7.7 小结 126
参考文献 127
第8章 软件质量保证 128
8.1 质量管理 128
8.2 SQA的作用 131
8.3 启动SQA程序 135
8.4 SQA计划 137
8.5 SQA需要考虑的问题 139
8.6 SQA人员 140
8.7 独立的验证和确认 140
8.8 小结 142
参考文献 143
第Ⅲ部分 已定义过程 147
第9章 软件标准 147
9.1 定义 149
9.2 定义软件标准的原因 150
9.3 标准的效益 150
9.4 主要标准举例 151
9.5 软件标准的建立 152
9.6 标准与指南 156
9.7 小结 156
参考文献 157
第10章 软件审查 159
10.1 评审的类型 160
10.2 审查的目标 162
10.3 审查的基本原则 162
10.4 审查的实施 163
10.5 审查的培训 166
10.6 报告和跟踪 166
10.7 需要考虑的其他问题 169
10.8 启动审查程序 170
10.9 未来的方向 175
10.10 小结 175
参考文献 176
第11章 软件测试 177
11.1 定义 178
11.2 软件测试的原则 179
11.3 软件测试的类型 181
11.4 测试计划 190
11.5 测试开发 192
11.6 测试的执行和报告 197
11.7 测试的工具和方法 203
11.8 实时测试 205
11.9 测试的组织 206
11.10 小结 207
参考文献 208
第12章 软件配置管理(二) 210
12.1 软件配置管理计划 213
12.2 软件配置管理的问题 216
12.3 SCM支持功能 217
12.4 需求阶段 218
12.5 设计控制 222
12.6 实现阶段 225
12.7 操作数据 226
12.8 测试阶段 226
12.9 对工具的配置管理 227
12.11 软件配置审核 228
12.10 配置记录 228
12.12 小结 229
参考文献 230
第13章 定义软件过程 231
13.1 过程标准 231
13.2 定义 232
13.3 软件过程模型的层次 232
13.4 模型的规定和描述性使用 237
13.5 软件过程构架 238
13.6 软件过程的关键问题 238
13.7 初级过程构架 240
13.8 更大的过程模型 247
13.9 详细的过程模型 257
13.10 实体过程模型 260
13.11 过程模型视图 261
13.12 过程定义的建立和使用 263
13.13 基本的过程指导原则 264
13.14 小结 265
参考文献 265
第14章 软件工程过程组 267
14.1 软件过程的变更 267
14.2 SEPG的作用 268
14.3 建立标准 269
14.4 过程数据库 270
14.5 技术引入的焦点 271
14.6 教育和培训 272
14.8 过程状态和评估 273
14.7 过程咨询 273
14.9 建立SEPG 274
14.10 小结 276
参考文献 277
第Ⅳ部分 已管理过程 281
第15章 数据采集和分析 281
15.1 数据采集的原则 281
15.2 数据采集过程 284
15.3 软件度量 287
15.4 数据分析 298
15.5 需要考虑的其他问题 310
15.6 小结 310
参考文献 311
第16章 软件质量管理 313
16.1 质量管理的范式 314
16.2 质量举例 314
16.3 质量的动因 315
16.4 度量准则 317
16.5 建立软件质量计划 322
16.6 软件质量评估 325
16.7 清除错误的效率 331
16.8 质量目标 332
16.9 质量计划 333
16.10 软件质量的跟踪和控制 335
16.11 小结 335
参考文献 336
第Ⅴ部分 优化的过程 341
第17章 缺陷预防 341
17.1 缺陷预防并非新话题 341
17.2 软件缺陷预防的原则 344
17.3 改进过程以预防缺陷 359
17.4 缺陷预防应考虑的问题 360
17.5 管理层的作用 363
17.6 小结 365
参考文献 365
第18章 软件过程的自动化 367
18.1 对软件自动化的需求 367
18.2 什么需要自动化 369
18.3 开发环境 372
18.4 组织的自动化计划 373
18.5 技术转移 377
18.6 一些特殊考虑事项 377
18.7 生产率 381
18.8 关于申请理由方面的考虑 385
18.9 小结 385
参考文献 386
第19章 软件合同的签订 388
19.1 软件合同的签订 388
19.2 软件合同的协商 391
19.3 对软件合同进行有效管理的原则 392
19.4 软件合同的管理 394
19.5 过程证明 400
19.6 技术领导 403
19.7 小结 403
参考文献 404
第20章 结论 405
20.1 软件过程改变的框架 405
20.2 对软件过程改变所遇阻力的管理 406
20.3 下一步该做什么 410
20.4 最后的评论 419
参考文献 419
附录A 软件过程成熟度框架 421
附录B 软件工程研究所评估协议 433
附录C 实施软件审查 436
名词对照表 461