第1章 软件过程改进的原理 1
1.1 引言 1
1.2 过程改进框架 2
1.2.1 朴素过程改进 3
1.2.2 朴素过程改进的特征 4
1.2.3 朴素过程改进的对象 5
1.2.4 朴素过程改进的行动框架 6
1.3 深入理解过程 7
1.3.1 过程 8
1.3.2 过程的表达 11
1.3.3 过程改进 18
1.3.4 SPI之FAQ 20
1.3.5 推荐阅读——国内软件企业实施CMM的四大障碍 24
1.4 战略规则和策略选择 29
1.4.1 战略规划 30
1.4.2 SPI策略 32
1.5 过程改进利益分析 36
1.5.1 识别利益相关者 37
1.5.2 获取领导重视 39
1.5.3 获取群众支持 41
1.5.4 过程改进的组织和驱动 42
1.5.5 避免SPI万能论 44
1.5.6 SPI的困惑 45
1.6 过程改进的障碍分析 48
1.6.1 阻力来源及其化解 48
1.6.2 过程改进的风格 50
1.7 组织文化改进 53
1.7.1 背景 53
1.7.2 组织文化及其作用 55
1.7.3 中西文化差异 57
1.7.4 如何改进组织文化 62
1.7.5 文化改进的最佳实践 70
2.1 过程诊断 76
第2章 软件过程改进的管理 76
2.2 方案制订 87
2.2.1 试点项目选择 87
2.2.2 方案的内容和写作 88
2.3 项目启动 91
2.4 SPI项目策划 94
2.5 项目检查控制 97
2.5.1 控制原理 97
2.5.2 控制过程 97
2.5.3 SPI项目控制 99
2.6 项目验收 101
2.6.1 “僵化”理念与69条 102
2.7 总结收尾 107
第3章 软件过程改进的体系设计 108
3.1 整体设计 108
3.2 过程设计 114
3.2.1 过程设计的PDCA方法 114
3.2.2 特定方法论对过程的影响 116
3.2.3 过程设计与系统思考 116
3.2.4 过程的分离与合并 116
3.3 度量设计 117
3.3.1 GQM方法 118
3.3.2 数据流程 122
第4章 软件过程改进模型 127
4.1 软件能力成熟度模型CMM简介 127
4.2 CMM的五层体系结构 129
4.2.1 成熟度级别的行为特征 131
4.2.2 理解成熟度级别 133
4.2.3 软件过程的可见度 136
4.2.4 过程成熟度与性能预测 137
4.2.5 跳跃成熟度级别 139
4.3.1 关键过程域的定义和结构 140
4.3 CMM的关键过程域 140
4.3.2 关键过程域的目标 141
4.3.3 关键过程域的公共特征 141
4.3.4 成熟度级别的关键过程域 143
4.4 CMM的评估和评价方法 144
4.4.1 CMM评估框架(CMM Appraisal Framework,CAF) 144
4.4.2 IDEAL模型 146
4.5 CMMI 147
4.5.1 从CMM到CMMI 147
4.5.2 CMMI体系 147
4.5.3 CMMI过程域 153
4.5.4 为什么选择CMMI?如何选择和实施CMMI 162
4.5.5 CMMI评估方式SCAMPI 164
4.6 ISO9000族质量管理标准 165
4.6.1 ISO 9000族标准概要 165
4.6.2 质量管理的八项原则 166
4.6.3 2000版ISO9000族标准的基本原理 174
第5章 软件过程改进的技能 185
5.1 SPI培训 185
5.1.1 培训技巧 185
5.1.2 实施有效的企业内部训练 190
5.2 过程的心理辅导 210
5.2.1 识别所处的阶段 211
5.2.2 顾问和辅导 212
5.3.1 了解好案例 214
5.3 文案写作 214
5.3.2 编写案例的步骤 217
第6章 人力资源的改进 218
6.1 人力资源管理改进的原因 219
6.2 现代人力资源管理概论 222
6.2.1 基本模型 222
6.2.2 结构层次 223
6.3 工作分析 224
6.3.1 工作分析的方法 225
6.4 绩效考评 226
6.3.2 工作分析的内容 226
6.4.1 什么是绩效考评 227
6.4.2 国内外进展 227
6.4.3 如何实施 229
6.4.4 绩效管理面临的挑战 234
6.5 KPI与SPI的衔接 235
6.6 推荐阅读 242
第7章 SPI工具推荐 246
7.1 工具的重要作用 246
7.1.2 配置管理工具 247
7.2 CA AllFusion Process Management Suite 247
7.1.1 过程管理工具 247
7.3 Rational Unified Process 255
7.3.1 RUP简介 255
7.3.2 RUP的特点 255
7.3.3 最佳实践 256
7.3.4 RUP的结构 257
7.3.5 动态结构 258
7.3.6 静态结构 258
7.4 IBM(Rational)ClearCase 259
7.4.1 版本控制 259
7.4.2 工作空间管理 260
7.4.4 过程控制 261
7.4.3 建立管理 261
7.5 AllFusion Harvest Change Manager 262
7.5.1 开始实施变更管理 263
7.5.2 通过自动化的变更提交,保证生产环境应用的运行 264
7.5.3 开发过程的自动化 264
7.5.4 自动同步的并发开发 264
7.5.5 管理用户对供应商提供的代码的修改 265
7.5.6 管理并行开发活动 265
7.5.7 定制AllFusion Harvest Change Manager 265
7.5.8 获得端到端的变更管理支持 265
7.6.1 企业级的配置和变更管理 267
7.6 Hansky SDM 267
7.6.2 与工作流程完美结合的变更、需求和配置管理 268
7.6.3 灵活易用的SDM解决方案 270
7.6.4 成功案例 272
7.7 TeamEffort 276
7.7.1 TeamEffort的主要特点 277
7.7.2 TeamEffort的主要功能模块 277
7.7.3 TeamEffort的运行环境 278
8.1 北大方正——如何在软件企业中实施软件质量保证 280
8.1.1 实施SQA的目的 280
第8章 企业最佳实践 280
8.1.2 对SQA的素质要求 281
8.1.3 SQA人员的组成 282
8.1.4 SQA工作的内容 282
8.1.5 SQA与几类角色间的关系 283
8.1.6 SQA工作中常见的几个问题 283
8.2 联想——提高软件项目成功率的软件过程 285
8.2.1 失败的类型 285
8.2.2 有利于成功的前期过程 286
8.2.3 有利于成功的后期过程 289
8.2.4 过程管理的公理系统 292
8.3.1 策略1:自顶向下与自底向上相结合 293
8.3 浪潮通软——六件“锦囊妙计”:基于CMM的软件过程改进实施策略 293
8.3.2 策略2:循序渐进由易到难 294
8.3.3 策略3:先从改变观念做起 295
8.3.4 策略4:测试先行 295
8.3.5 策略5:充分利用管理工具 296
8.3.6 策略6:内外结合以内为主 296
8.4 清华同方——软件过程改进“法宝” 297
8.5 创智——你相信CMM有价值吗 298
8.6 用友——与CMM有谋而合 301
8.6.1 实施CMM的成功因素 302
8.6.2 实施CMM的一些经验 303
8.7 CA——SCM:软件项目管理的“先行军” 305
8.7.1 软件开发的“泥潭” 306
8.7.2 SCM的责任 307
8.7.3 为应用SCM支招 307
8.7.4 不要忽略SCM 309
8.8 企业最关心的——四个CMM焦点问题 310
8.8.1 小企业能不能实施CMM 310
8.8.2 如何确保评审质量 312
8.8.3 精英员工组成的项目组有必要实施CMM吗 313
8.8.4 过程重要还是个人重要 314
参考文献 316