第1章 缺陷综述 1
1.1软件缺陷定义 2
1.2软件缺陷生命周期 6
1.3缺陷信息 8
1.4软件缺陷分类 9
缺陷类型 9
缺陷严重程度 10
缺陷优先级 11
缺陷状态 12
1.5缺陷产生的原因 12
缺陷是谁“生产”的 13
缺陷来源 14
缺陷根源 15
1.6缺陷预防 16
缺陷预防的目的 17
缺陷预防的目标 18
缺陷预防的策略 18
缺陷预防的活动 19
缺陷预防的验证 21
软件质量特性的提高 23
1.7缺陷发现手段 24
同行评审 25
测试 26
管理评审 27
QA发现 27
项目组内部发现 28
客户反馈 28
1.8缺陷修复和沟通策略 29
1.9人员培训 32
1.10小结 32
第2章 需求开发与管理 34
2.1需求的概念和层次 38
2.2需求开发 40
需求获取 40
需求分析 44
编制软件需求文档 46
2.3需求管理 47
需求管理方法 47
需求追踪矩阵 48
需求变更 61
2.4需求验证 65
评审需求 65
测试需求 69
需求评价标准 69
2.5小结 70
第3章 配置与变更管理 72
3.1相关概念 75
配置项 78
版本 80
基线 81
配置库 83
3.2配置管理活动 83
制定配置管理计划 84
建立三库 84
确定配置标识规则 87
版本控制 89
构建和发行管理 89
变更控制 90
配置审计 92
配置管理报告 96
3.3变更管理活动 100
变更申请 101
变更评审 104
变更执行 105
变更验证 105
入库及发布 105
3.4配置与变更管理相关问题 106
有关的角色和对应职责 106
有效实践 107
日构建与冒烟测试 112
工作环境标准 116
配置管理常见误区 117
3.5小结 119
第4章 同行评审 121
4.1同行评审与测试的关系 123
4.2同行评审的种类和对象 124
同行评审的种类 125
同行评审的对象 125
4.3同行评审过程 126
正式评审流程 127
技术审查流程 128
走查流程 129
4.4同行评审方式的选择 129
三种同行评审方式的比较 130
同行评审的结果 130
正式评审的特征 131
工作产品的同行评审方式 132
4.5迭代生命周期的审查 133
4.6同行评审的注意事项 134
同行评审遵循的原则 135
同行评审关注的问题 136
同行评审通过的准则 137
同行评审的经验共享 138
文档审查重点 139
4.7同行评审的度量 140
常用度量元 140
同行评审的质量准则 141
建议的同行评审效率 142
同行评审覆盖率 143
4.8评审常见问题 143
文化问题 144
准备问题 145
焦点问题 147
人员问题 148
效率问题 149
效果问题 150
4.9小结 150
第5章 软件测试 152
5.1软件测试的基本问题 154
软件测试概念 155
软件测试对象 155
软件测试目的 155
软件测试原则 156
测试过程的两个重要里程碑 156
测试可以发现的缺陷 157
软件测试的基本方法 158
测试工程师的技能 158
5.2软件测试过程 159
单元测试 160
集成测试 164
验收测试 173
5.3软件测试方法 173
功能测试 175
回归测试 176
性能评测 179
用户界面测试 180
安全性测试 180
安装性测试 181
5.4测试技术专题 182
测试策略 182
手工/自动测试时机 183
通过二八定理寻找薄弱环节 184
测试用例复审 185
何时终止测试 186
Web性能测试 188
内存泄漏测试 195
测试风险的管理 198
代码移交过程测试 200
处理不可重复出现的Bug 202
5.5测试的度量 204
5.6小结 206
第6章 QA发现的不符合问题的处理 208
6.1 QA流程概述 209
6.2 QA的工作内容 211
QA的角色 211
QA工作详述 212
对QA职责的要求 216
6.3 QA发现的问题 216
6.4 QA工作机制 219
不符合项处理机制 219
QA工作报告机制 220
问题跟踪和验证 223
QA应遵循的原则 224
6.5 QA的组织形式 225
6.6对QA的误解 226
6.7 QA工作的度量 228
6.8小结 229
第7章 软件度量 231
7.1软件度量及其方针 233
7.2度量活动 235
度量目标 236
度量元 238
度量模型 240
基本过程 251
度量方法与采集 252
7.3资源模型 257
资源模型的定义 258
项目级资源模型 260
组织级资源模型 262
软件质量度量 263
7.4数据质量 265
数据的真实性 265
数据的同步性 266
数据的有效性 266
数据的一致性 266
7.5软件度量相关问题 267
增加度量正确性的措施 268
软件过程性能 268
度量过程的常见问题 271
7.6缺陷度量 272
什么是缺陷度量 272
缺陷度量元 273
缺陷密度的定义 274
缺陷密度的用途 275
缺陷管理库 277
7.7缺陷分析 278
缺陷种类分析 279
缺陷根源分析 281
缺陷注入-发现矩阵 281
收敛趋势分析 283
回归分析 286
缺陷排除分析 288
ODC缺陷分析 291
7.8小结 292
第8章 缺陷管理 2
8.1缺陷管理的目标和理念 296
保证进度的理念 297
保证质量的理念 297
坚持流程的理念 297
坚持分析的理念 298
使用工具的理念 298
缺陷管理范例 298
8.2缺陷管理的等级 299
个体级缺陷管理 300
项目级缺陷管理 300
组织级缺陷管理 301
缺陷度量 301
缺陷预防 302
8.3质量控制工具 303
新旧七种工具 304
控制图的数学基础 313
控制图的种类和作用 314
典型失控状态 317
8.4统计技术应用 318
利用控制图的策略 318
X图和R图应用案例 319
XmR图应用案例 324
8.5小结 326
第9章 经验教训库 327
9.1同行评审经验库 327
需求规格说明书评审检查表 328
项目计划检查表 329
概要设计说明书检查表 331
设计说明书检查表 332
编码检查表 333
测试用例检查表 336
产品验收和发布检查表 337
工作产品审阅情况记录表 338
9.2测试经验库 338
测试用例库 339
常用测试检查表 354
9.3开发经验库 365
需求经验库 365
设计经验库 365
实现经验库 366
界面设计 367
9.4常见缺陷库 374
开发规范问题 375
普通编程缺陷 376
Java特有编程缺陷 377
字符串导致的性能问题 378
多线程并发引起资源冲突 378
资源合理使用 382
形成程序日志 383
其他程序优化问题 383
9.5小结 384
第10章 思考 385
10.1质量因素 386
10.2生命周期 390
10.3合理的计划 391
规模估计 394
工作量估计 395
进度估计 397
估计修正 398
10.4项目监控 398
10.5项目收尾工作 399
10.6风险管理 400
10.7无缺陷软件 401
10.8 TQM 402
10.9成熟度模型 404
10.10小结 408
附录A 技术评审和管理评审 410
附录B 国内外常用软件质量网站 414
附录C 常见缺陷管理工具 417
附录D 各种公理的说明 421
附录E 软件测试经典著作推荐 423
附录F 涉及到的名词解释 424
附录G X图和R图的计算控制限常量 428
参考文献 429