《基于软件能力成熟度模型 CMM 的软件过程改进 方法与实施》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:郑人杰等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2003
  • ISBN:7302061548
  • 页数:687 页
图书介绍:

第0章 导论 1

0.1 CMM的引入 1

0.2 认证与评估 1

0.3 实施CMM的几个关键问题 2

0.4 本书编写的目的 6

0.5 本书阅读导引 6

第1章 软件过程与软件过程成熟度 10

1.1 软件过程 11

1.1.1 软件生存期过程 11

1.1.2 过程思维 14

1.1.3 过程规范化 18

1.1.4 有效的软件过程 21

1.2 软件过程成熟度 22

1.2.1 什么是软件过程成熟度 22

1.2.2 过程文化 24

1.2.3 软件过程成熟度运动的实践 26

1.3 软件过程改进框架 29

参考文献 30

第2章 CMM概述 31

2.1 近年来软件界面临的问题 31

2.1.1 若干引起软件界关注的现象 31

2.1.2 解决软件问题的出路 32

2.2 CMM简介 32

2.2.1 CMM与SEI 32

2.2.2 CMM的演化 34

2.2.3 CMM族和CMM I 34

2.3 CMM的过程成熟度 36

2.3.1 成熟度等级 36

2.3.2 不同成熟度等级的差异 38

2.4 CMM的结构 40

2.4.1 关键过程域 40

2.4.2 目标 42

2.4.3 关键实践 44

2.5 CMM的应用 46

2.5.1 评估与评价 46

2.5.2 过程改进 48

2.6 CMM的理论依据 49

2.6.1 质量管理原理 49

2.6.2 Shewhart的PDCA循环 50

2.6.3 Juran质量改进4步骤 50

2.6.4 Deming摆脱危机的方案 51

2.6.5 Crosby的质量成本模型和质量成熟度网格 51

参考文献 54

第3章 需求管理 56

3.1 系统需求与软件需求 56

3.1.1 系统和系统需求分配 56

3.1.2 软件需求 58

3.2 需求工程 59

3.2.1 需求开发 60

3.2.2 需求管理 61

3.3 需求变更 61

3.4 需求变更控制 63

3.4.1 需求变更控制要求 63

3.4.2 需求变更控制实施 65

3.5 可追溯性管理 68

3.6 CMM 2级RM KPA 70

参考文献 72

第4章 软件项目策划 73

4.1 有关软件项目计划 73

4.1.1 软件计划的重要性 73

4.1.2 软件项目计划与过程的关系 75

4.1.3 软件项目计划的动态性 76

4.1.4 尽早制定软件项目开发计划 76

4.1.5 与软件项目策划有关的几个问题 77

4.2 软件项目策划过程(SPP)描述 83

4.2.1 引言 85

4.2.2 SPP过程 86

4.2.3 有关SPP的示意图 89

参考文献 90

第5章 软件项目跟踪和监督 91

5.1 项目跟踪与控制 91

5.1.1 确定跟踪对象及确定要采集的度量类别 91

5.1.2 采集数据 96

5.1.3 分析数据 96

5.1.4 报告信息 97

5.1.5 项目控制 98

5.1.6 SPTO KPA实施中的一些问题 98

5.2 项目跟踪与监督过程 101

5.2.1 引言 102

5.2.2 SPTO过程 103

5.2.3 有关SPTO的示意图 107

参考文献 107

第6章 软件子合同管理 109

6.1 概念、任务和方法 109

6.1.1 什么是软件子合同管理 109

6.1.2 软件子合同管理的任务和方法 109

6.2 CMM KPA软件子合同管理(SSM) 117

6.2.1 目的 117

6.2.2 目标 117

6.2.3 约定 118

6.2.4 能力 118

6.2.5 活动 119

6.2.6 测量 123

6.2.7 验证 123

6.2.8 必要的规程 124

6.2.9 产生的文件 124

参考文献 125

第7章 软件质量保证 126

7.1 概述 126

7.1.1 软件质量保证的概念和作用 126

7.1.2 软件质量保证过程 127

7.1.3 软件质量保证方法 128

7.1.4 软件质量保证数据 129

7.2 CMM 2级KPA SQA 129

7.2.1 概述 129

7.2.2 目标 130

7.2.3 活动 131

7.2.4 其他关键实践 134

7.2.5 SQA涉及的角色 135

7.2.6 SQA过程域小结 136

7.3 软件质量保证过程实施中的几个问题 137

参考文献 138

第8章 软件配置管理 139

8.1 软件配置管理的概念 139

8.1.1 软件配置项 139

8.1.2 软件配置管理 142

8.1.3 软件配置管理的意义 144

8.2 软件配置管理计划 145

8.3 软件配置标识 146

8.3.1 确定配置项 147

8.3.2 配置项命名及其相关信息 148

8.4 变更管理 152

8.4.1 软件变更 152

8.4.2 配置库 153

8.4.3 配置基线 154

8.4.4 变更控制 157

8.5 版本管理 161

8.6 配置审核 162

8.6.1 什么是配置审核 162

8.6.2 为什么要实施配置审核 163

8.6.3 如何实施配置审核 163

8.6.4 配置审核的检查单 164

8.7 配置状态报告 165

8.7.1 什么是配置状态报告 165

8.7.2 配置状态报告信息 165

8.7.3 状态报告 169

8.8 软件配置管理工具 169

8.8.1 手工实施软件配置管理存在的问题 169

8.8.2 采用工具支持配置管理的自动方法 170

8.8.3 采用配置管理工具的经济考虑 170

8.9 软件组织的软件配置管理过程 171

8.10 CMM 2级SCM KPA 172

8.10.1 目标与活动 172

8.10.2 约定与能力 174

8.10.3 测量和验证 174

8.10.4 入口-任务-验证-出口(ETVX) 175

参考文献 176

第9章 组织过程焦点 177

9.1 目的和目标 178

9.2 主要内容 178

9.3 角色和职责 178

9.4 输入 180

9.5 入口准则 180

9.6 活动 181

9.7 流程图 182

9.7.1 OPF流程图 182

9.7.2 SPI流程图 183

9.8 出口准则 183

9.9 输出 184

9.10 目标与关键实践 184

9.11 SPI计划模板 184

9.12 注意事项 185

参考文献 185

第10章 组织过程定义 187

10.1 目的和目标 188

10.2 主要内容 188

10.3 角色和职责 189

10.4 输入 189

10.5 入口准则 189

10.6 活动 190

10.6.1 按文档化规程开发和维护OSSP 190

10.6.2 按所制定的组织标准将OSSP文档化 191

10.6.3 文档化并维护准用的项目软件生存期说明 192

10.6.4 制定并维护项目剪裁OSSP的指南和准则 192

10.6.5 建立和维护OSPDB 194

10.6.6 建立和维护软件过程有关文档库 194

10.6.7 测量并用测量结果确定OPD活动的状态 195

10.6.8 评审与审核 195

10.7 OPD流程图 195

10.8 出口准则 196

10.9 输出 196

10.10 过程定义模板 196

10.11 目标与关键实践 197

10.12 注意事项 197

参考文献 198

第11章 培训大纲 199

11.1 目的和目标 200

11.2 主要内容 200

11.3 角色和职责 200

11.4 输入 201

11.5 入口准则 201

11.6 活动 202

11.7 TP流程图 205

11.8 出口准则 206

11.9 输出 206

11.10 目标与关键实践 206

11.11 注意事项 207

参考文献 207

第12章 集成软件管理 208

12.1 目的和目标 209

12.2 主要内容 209

12.3 角色和职责 209

12.4 输入 210

12.5 入口准则 210

12.6 活动 211

12.7 集成软件管理(ISM)流程图 216

12.8 出口准则 217

12.9 输出 218

12.10 目标与关键实践 218

12.11 注意事项 218

参考文献 219

第13章 软件产品工程 220

13.1 目的和目标 221

13.2 主要内容 221

13.3 角色和职责 222

13.4 输入 222

13.5 入口准则 223

13.6 活动 225

13.7 流程图 231

13.8 出口准则 232

13.9 输出 233

13.10 目标与关键实践 233

13.11 注意事项 233

参考文献 234

第14章 组间协调 235

14.1 目的和目标 236

14.2 主要内容 236

14.3 角色和职责 236

14.4 输入 237

14.5 入口准则 237

14.6 活动 238

14.7 流程图 240

14.8 出口准则 241

14.9 输出 241

14.10 目标与关键实践 241

14.11 注意事项 241

参考文献 242

第15章 同行评审 243

15.1 目的和目标 244

15.2 主要内容 244

15.3 角色和职责 244

15.4 输入 245

15.5 入口准则 245

15.6 活动 246

15.7 流程图 247

15.8 出口准则 248

15.9 输出 248

15.10 目标与关键实践 248

15.11 注意事项 249

参考文献 250

第16章 CMM 4级关键过程域 251

16.1 统计过程控制 251

16.1.1 过程稳定性 253

16.1.2 控制图 254

16.1.3 变化的特殊原因和共同原因 256

16.1.4 分析原因的工具 257

16.1.5 过程能力基线和过程改进 260

16.2 CMM 4级KPA简介 262

16.3 定量过程管理 262

16.3.1 定量过程管理简介 262

16.3.2 定量过程管理的描述 266

16.4 软件定量管理 271

16.4.1 软件定量管理简介 271

16.4.2 软件质量管理的描述 274

16.5 CMM 4级的过程资产 278

参考文献 279

第17章 CMM 5级关键过程域 280

17.1 引言 280

17.2 缺陷预防 281

17.2.1 缺陷预防KPA简介 281

17.2.2 缺陷预防的描述 283

17.3 技术变更管理 288

17.3.1 技术变更管理KPA简介 288

17.3.2 技术变更管理KPA的描述 289

17.4 过程变更管理 294

17.4.1 过程变更管理KPA简介 294

17.4.2 过程变更管理KPA的描述 296

参考文献 301

第18章 软件质量特性 304

18.1 概述 304

18.1.1 软件产品的特点 304

18.1.2 软件质量内涵 305

18.1.3 软件质量描述的发展 305

18.2 软件质量模型 309

18.2.1 软件质量层次模型 310

18.2.2 推荐的外部度量 317

18.2.3 推荐的内部度量 321

18.2.4 推荐的使用质量度量 323

18.3 软件质量模型应用 324

18.3.1 软件质量模型的用途 324

18.3.2 质量度量应用的注意事项 325

18.3.3 软件质量评价方法 326

参考文献 328

第19章 软件测量和项目数据收集 329

19.1 软件测量的概念 329

19.1.1 什么是测量 329

19.1.2 为什么要进行测量 330

19.1.3 CMM及其他过程相关标准对测量的要求 331

19.2 面向规模的项目度量 333

19.3 面向功能的产品度量——功能点方法 334

19.4 程序环路复杂度计算 340

19.5 霍尔斯梯德程序工作量计算 341

19.6 程序风格度量 342

19.7 软件测量的实施 343

19.7.1 软件测量过程 343

19.7.2 收集测量数据 344

19.7.3 收集和利用项目数据的设施 349

参考文献 351

第20章 软件风险管理 352

20.1 什么是软件风险 352

20.1.1 软件风险 353

20.1.2 风险的特点 353

20.1.3 10种最为常见的软件风险 354

20.1.4 风险分类 355

20.2 风险管理的任务 356

20.2.1 风险管理的目标和策略 357

20.2.2 风险管理活动 357

20.3 风险评估 358

20.3.1 风险识别 359

20.3.2 风险分析 359

20.3.3 风险排序 360

20.4 风险控制 362

20.4.1 风险管理策划 362

20.4.2 风险化解 363

20.4.3 风险监控 364

20.5 ISO 9000和CMM对风险管理的要求 365

20.5.1 ISO 9000对风险管理的要求 365

20.5.2 CMM对风险管理的要求 366

20.6 做好风险管理的建议 367

20.7 风险管理实例 368

参考文献 369

第21章 软件评审 371

21.1 软件评审方法 371

21.1.1 软件评审方法概述 371

21.1.2 软件项目评审应用实例 372

21.1.3 软件评审的定义 377

21.1.4 国际标准或软件过程模型的要求 379

21.2 软件评审的作用 382

21.2.1 软件评审的意义 383

21.2.2 代码评审的成功实例 387

21.2.3 评审与其他验证方法的比较 388

21.3 软件评审的实施 389

21.3.1 正式评审 389

21.3.2 需求评审 392

21.3.3 设计评审 396

21.3.4 代码评审 397

21.4 如何做好软件评审 398

21.4.1 软件评审中经常出现的问题 398

21.4.2 做好软件评审工作的建议 398

21.4.3 一个软件需求规格说明书的评审用检查单 399

参考文献 401

第22章 软件测试 402

22.1 软件测试基础 402

22.1.1 什么是软件测试 402

22.1.2 软件测试的目的 403

22.1.3 软件测试的原则 403

22.1.4 软件测试与软件开发各阶段的关系 404

22.2 软件测试基本技术 404

22.2.1 静态测试 404

22.2.2 动态测试 406

22.2.3 软件测试工具 408

22.3 软件测试策略 408

22.3.1 软件测试的步骤 408

22.3.2 单元测试 408

22.3.3 集成测试 409

22.3.4 确认测试 411

22.3.5 系统测试 412

22.3.6 其他测试 413

22.4 软件测试过程及测试文档 413

22.4.1 软件测试过程 413

22.4.2 软件测试文档 415

22.5 软件测试管理 416

22.5.1 软件测试的组织管理 416

22.5.2 测试质量管理 418

22.5.3 测试进度和资源管理 420

22.5.4 测试文档管理 420

22.5.5 测试数据的统计和积累 421

参考文献 421

第23章 软件项目估算与工期控制 422

23.1 软件项目估算 422

23.1.1 项目估算与风险 422

23.1.2 软件的范围 423

23.1.3 软件开发中的资源 424

23.1.4 软件项目估算策略 427

23.1.5 分解技术 428

23.2 软件开发成本估算 431

23.2.1 软件开发成本估算方法 432

23.2.2 专家判定技术 433

23.2.3 软件开发成本估算的经验模型 434

23.3 项目进度安排与工期控制 443

23.3.1 进度控制问题 443

23.3.2 甘特图 445

23.3.3 时标网状图 445

23.3.4 活动赋值与复审方法 446

参考文献 449

第24章 ISO 9000:2000版质量管理体系标准 452

24.1 概述 452

24.1.1 新版与原版的不同 452

24.1.2 GB/T 19000族标准2000版的构成 453

24.1.3 质量管理8项原则 454

24.1.4 过程方法与质量管理体系模式 455

24.1.5 质量管理体系方法 455

24.1.6 最高管理者在质量管理体系中的作用 456

24.1.7 质量管理体系评价 456

24.1.8 持续改进 457

24.1.9 两点说明 457

24.2 GB/T 19001简介 458

24.2.1 前言 458

24.2.2 质量管理体系 459

24.2.3 管理职责 460

24.2.4 资源管理 462

24.2.5 产品实现 462

24.2.6 测量、分析和改进 466

24.3 GB/T 19004简介 468

24.3.1 前言 468

24.3.2 主要内容的说明 469

24.3.3 自我评定和持续改进的过程 474

参考文献 479

第25章 CMMI简介 480

25.1 CMMI发展概况 480

25.1.1 CMMI项目的启动 480

25.1.2 CMMI的发展背景 480

25.1.3 CMMI的目标 481

25.1.4 CMMI的现状 482

25.2 CMMI模型 483

25.2.1 概述 483

25.2.2 CMMI的连续表示 485

25.2.3 CMMI分级表示 509

25.3 CMMI的应用 517

25.3.1 概述 517

25.3.2 过程评估 517

25.3.3 向CMM I转变 518

25.3.4 剪裁 519

参考文献 521

第26章 个体软件过程 522

26.1 概述 522

26.2 个体软件过程框架 523

26.2.1 个体基线过程PSP 0 523

26.2.2 个体计划过程PSP 1 524

26.2.3 个体质量管理过程PSP 2 525

26.2.4 个体循环过程PSP 3 525

26.3 时间管理 526

26.3.1 时间管理的方法 526

26.3.2 跟踪时间 526

26.3.3 管理时间 527

26.4 产品计划 528

26.4.1 制定产品计划 528

26.4.2 规模估算和度量 530

26.4.3 任务委托管理 532

26.4.4 进度管理 532

26.4.5 项目总结 534

26.5 缺陷管理 536

26.5.1 缺陷与BUG 536

26.5.2 管理缺陷 537

26.5.3 缺陷查找技术 539

26.5.4 缺陷预测 541

26.5.5 缺陷排除经济学 542

26.5.6 设计缺陷 544

26.6 产品质量和过程质量 544

26.6.1 产品质量的几个概念 544

26.6.1 过程质量 546

26.7 PSP实施建议 548

参考文献 549

第27章 小组软件过程 550

27.1 TSP概述 550

27.1.1 TSP的原则 550

27.1.2 TSP的设计 550

27.1.3 TSP的结构 551

27.2 TSP的8个主要过程脚本 551

27.2.1 小组项目启动 552

27.2.2 开发策略 553

27.2.3 开发计划 556

27.2.4 需求定义 558

27.2.5 与小组一起设计 559

27.2.6 产品实现 561

27.2.7 系统测试 563

27.2.8 后期处理 565

27.3 TSP 5个 不同的管理角色 566

27.3.1 小组领导 566

27.3.2 开发管理者 567

27.3.3 计划管理者 568

27.3.4 质量/过程管理者 570

27.3.5 支持管理者 571

27.4 实施TSP 572

27.4.1 企业策略与实施步骤 572

27.4.2 项目计划与跟踪实例研究 573

参考文献 578

第28章 ISO/IEC 15504简介 579

28.1 概述 579

28.1.1 软件过程评估国际标准的制定 579

28.1.2 ISO/IEC 15504的目的 579

28.1.3 ISO/IEC TR 15504的组成 580

28.2 参考模型 581

28.2.1 软件过程评估参考模型 581

28.2.2 示例 588

28.3 应用 592

28.3.1 过程评估 594

28.3.2 过程改进 598

28.3.3 过程能力确定 603

参考文献 611

第29章 基于CMM的评估方法 614

29.1 CBA IPI方法 614

29.1.1 软件过程改进的IDEAL 614

29.1.2 现行的SEI评估方法 615

29.2 CBA IPI方法概述 617

29.3 CBA IPI的参考者 620

29.4 CBA IPI方法活动 622

29.5 时间表和资源需求 625

29.6 后续活动 626

参考文献 627

第30章 CMM实施 628

30.1 筹组必备机构 628

30.1.1 SEPG 628

30.1.2 SQA 631

30.2 标识评估范围 634

30.3 选定参评人员 636

30.4 准备待审文档 639

30.5 注意事项 640

参考文献 646

第31章 CMM实施工具 647

31.1 CMM辅助工具在CMM实施中的作用 647

31.2 项目助手背景 648

31.2.1 项目助的 648

31.2.2 研发历史 648

31.2.3 特点 648

31.3 项目助手具体介绍 649

31.3.1 系统简介 649

31.3.2 系统流程 649

31.3.3 总体功能 649

31.3.4 各模块介绍 650

31.4 结合项目助手实施CMM 657

31.4.1 规范定义阶段 657

31.4.2 具体实施 658

参考文献 660

附录 661

附录A CMM 2级过程文件目录 661

附录B 软件过程成熟度提问单 663

附录C 软件质量度量标尺类型和测量类型的详细解释 669

附录D SEI评估大纲 676

附录E 评估角色和职责 678

附录F 术语——汉英对照 680