《术以载道 软件过程改进实践指南》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:任甲林著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2014
  • ISBN:9787115339713
  • 页数:442 页
图书介绍:本书是作者从事二十多年CMMI咨询、软件质量管理工作的经验总结。本书从实践者的角度出发,介绍了实施CMMI的方方面面,内容涵盖了软件过程改进的方法、实践问题的答疑、过程改进中使用的技术、软件过程改进的实际样例等等。本书内容全面而实用,对于如何实施过程改进、如何进行软件项目的质量管理提供了很好的建议。

第1章 CMMI实施精要 1

1.1对CMMI的基本认识 1

1.1.1 CMMI是什么 1

1.1.2 CMMI里有什么 3

1.1.3 CMMI的构件 6

1.1.4 CMMI的表示方法 9

1.1.5 CMMI成熟度等级的比较 11

1.1.6如何学习CMMI 16

1.2 EPG的工作指南 19

1.2.1 EPG成员选择四要素 20

1.2.2 EPG的工作指南 21

1.2.3 EPG如何应对企业政治 22

1.2.4 EPG常犯的10种错误 23

1.2.5识别过程改进点的9种手段 27

1.3如何实施CMMI 29

1.3.1实施CMMI时必须解决的7个认识问题 29

1.3.2软件过程改进的11条成功策略 35

1.3.3 CMMI实施的4个重大失误 46

1.3.4 CMMI成功的根本原因是什么 49

1.3.5 Infosys公司过程改进的18条经验 50

1.4 CMMI实施的难点与对策 51

1.4.1 CMMI 2级的难点 51

1.4.2 CMMI 2级难点之对策 53

1.4.3二级的实效体现在哪里 54

1.4.4 CMMI 3级的难点 57

1.4.5 CMMI 4级的难点 58

1.4.6为什么难以达到高成熟度 59

第2章 敏捷方法实践精要 61

2.1 Scrum敏捷项目管理 62

2.1.1 Scrum的3个角色 63

2.1.2 Scrum的3个文档 67

2.1.3 4种会议 73

2.1.4如何开每日站立会议 84

2.2 XP极限编程的12条实践 87

2.3时间箱管理 89

2.4策划扑克法 90

2.5敏捷度量 91

2.6关于敏捷方法的典型问题 92

2.6.1什么是敏捷方法的“神” 92

2.6.2如何建立团队文化 93

2.6.3如何运用敏捷实践解决其他问题 94

2.6.4如何理解平稳的开发速度 94

2.7敏捷始于客户 95

2.8软件工程7原则与敏捷实践 95

第3章 如何建立过程体系 98

3.1过程的基本概念 98

3.2过程体系的建立基础 101

3.3建立过程体系时的注意事项 102

3.4过程体系建立的步骤 103

3.5定义公司的过程大纲 103

3.6确定项目的类型 104

3.7确定描述规范 105

3.7.1 ETVX过程描述模式 106

3.7.2过程描述的12个属性 109

3.8定义质量方针 111

3.8.1先定义方针,再定义过程 111

3.8.2定义方针的原则 112

3.9定义过程 114

3.10如何定义文档模板 116

3.10.1模板定义的要点 116

3.10.2控制模板数量的基本原则 116

3.11如何定义检查单 117

3.12如何定义裁剪指南 119

3.13如何执行过程体系的评审 120

3.14常被忽略的过程 121

3.15 小型项目的管理策略 122

3.16维护类项目的管理策略 125

3.17如何将过程敏捷化 126

第4章 项目策划 129

4.1项目策划的9个基本要点 129

4.2过程设计的4个层次 132

4.3软件项目的目标管理 133

4.4过程体系的裁剪步骤 134

4.5 WBS分解指南 137

4.5.1 WBS的基本概念 137

4.5.2 WBS分解方法 137

4.5.3表示方法 139

4.5.4分解方式 140

4.5.5分解原则 143

4.5.6分解步骤 145

4.5.7 WBS中容易遗忘的任务 147

4.6白话软件估计 147

4.7做好软件估计的六个原则 149

4.8为什么要做规模估计 151

4.9 COSMIC-FFP规模估算方法 152

4.9.1功能点度量方法简介 152

4.9.2 COSMIC-FFP方法的基本原理 153

4.9.3 COSMIC-FFP的估算过程 154

4.9.4 COSMIC-FFP中的基本概念 156

4.9.5 COSMIC-FFP的规则 158

4.9.6 COSMIC-FFP的实践综述 163

4.10 Pert Sizing估算方法 163

4.11宽带Delphi估计方法指南 165

4.12软件项目工作量估算指南 170

4.12.1估算时机 170

4.12.2可能的估算输入 170

4.12.3估算对象 171

4.12.4估算方法 171

4.12.5生产率的含义 173

4.12.6多种场景下的估算步骤 174

4.13风险策划 180

4.13.1风险来源与风险分类 180

4.13.2如何识别风险 182

4.13.3风险计划与跟踪 188

4.14项目计划评审的检查点 189

4.15项目计划书中的内容 190

第5章 项目跟踪与控制 193

5.1软件项目管理的实战原则 193

5.2为什么要记录日志 198

5.3如何保证日志的准确性 199

5.4如何开会 200

5.5如何开项目组的周例会 202

5.5.1周例会准备活动 202

5.5.2召开周例会活动 203

5.5.3编写与发布会议纪要 203

5.6里程碑评审指南 204

5.7如何做项目总结 206

5.8组织级的项目管理例会的汇报要点 207

5.9高层经理监控项目的11种思维模式 208

5.10挣值管理 211

第6章 需求工程 213

6.1需求获取方法 213

6.1.1需求获取原则 213

6.1.2需求调研的步骤 214

6.1.3需求获取的重点 217

6.1.4需求获取的注意事项 218

6.2需求分析的思维方式 219

6.3需求描述方法 221

6.3.1需求必须文档化 221

6.3.2信息管理系统的需求描述方法 222

6.3.3需求与设计的界线 232

6.3.4需求文档与设计文档的区别 233

6.4需求评审 236

6.4.1软件需求评审之道 236

6.4.2同行评审培训练习点评 242

6.5需求管理 243

6.5.1需求管理的基本原则 243

6.5.2需求控制组的构成 245

6.5.3需求变更的深入分析 247

6.5.4需求跟踪矩阵的常见疑问 249

6.5.5需求管理过程域的要点 251

6.6需求工程的12条最佳实践 254

第7章 软件设计与实现 259

7.1白话软件架构与架构师 259

7.2设计模式 262

7.2.1如何学习设计模式 262

7.2.2 3种工厂模式的比较 263

7.2.3设计模式复杂度排名 264

7.3设计评审检查单 267

7.4程序设计风格 268

7.5代码评审 279

7.5.1代码评审的意义 279

7.5.2代码评审常见问题与最佳实践 279

7.5.3代码评审的检查要点 280

7.5.4代码评审检查单 282

7.5.5代码走查改进案例 283

7.6持续集成环境的构建 285

7.6.1 Java环境下的持续集成平台 285

7.6.2 .Net环境下的持续集成平台 286

7.6.3 C+++环境下的持续集成平台 286

7.7一次典型的重构 287

7.8改进代码质量 293

第8章 测试与同行评审 295

8.1质量管理的西药与中药 295

8.2 4种测试层次的比较 296

8.3集成测试用例的案例 297

8.4单元测试 298

8.4.1如何推广单元测试 298

8.4.2单元测试培训练习总结 302

8.4.3 Checkstyle试用案例 304

8.4.4测试驱动开发案例 316

8.5性能测试策略的案例 320

8.6不可重现缺陷的应对策略 321

8.7同行评审策略 323

8.8同行评审的常见问题与对策 324

8.9如何分析同行评审的度量数据 328

8.10软件开发的质量红线 331

8.11产品的内部质量与外部质量 332

第9章 质量保证 334

9.1质量保证与质量控制的区别 334

9.2质量保证的价值 336

9.3质量保证人员与项目经理的质量责任 337

9.4质量保证人员与过程改进人员的责任融合 337

9.5质量保证的组织结构形式 338

9.6质量保证工作的8个原则 339

9.7质量保证人员的工作内容 340

9.8质量保证例会的6个问题 341

9.9如何消除对质量保证的抵触情绪 342

9.10质量保证人员配备 344

9.11质量保证人员的知识体系 345

第10章 配置管理 347

10.1配置管理的基本概念 347

10.2数据管理与配置管理的区别 348

10.3如何组建CCB 350

10.4纳入基线管理的一般原则 351

10.5配置控制的3个等级 352

10.6配置管理的三库 354

10.7配置管理员的职责定义 355

10.8配置审计的种类与区别 356

第11章 量化项目管理 360

11.1如何识别度量元 360

11.2如何设计数据的指示器 365

11.3如何定义指示器与度量元 368

11.4度量数据分析的3个层次 370

11.5过程性能基线 372

11.5.1什么是过程性能基线 372

11.5.2应该建立哪些PPB 373

11.5.3如何建立PPB 373

11.5.4建立PPB的注意事项 374

11.5.5证明过程稳定需要的样本个数 376

11.5.6何时重新计算PPB 377

11.5.7如何判定PPB的可用性 377

11.5.8项目级的PPB 377

11.6控制图在软件管理中的应用 378

11.6.1控制图的含义 378

11.6.2什么是“特殊原因” 378

11.6.3异常点的识别规则 379

11.6.4异常点的删除方法 380

11.6.5控制图典型错误案例一 380

11.6.6控制图典型错误案例二 383

11.7箱线图在软件管理中的应用 387

11.8软件过程性能模型 391

11.8.1什么是过程性能模型 391

11.8.2如何建立过程性能模型 392

11.8.3过程性能模型的实例 394

11.8.4为什么无法建立过程性能模型 396

11.9为什么建立了性能基线还需要建立性能模型 399

11.10如何度量项目的进度与进展 401

11.11 TSP中的10个量化法则 401

第12章 CMMI的评估 403

12.1如何选择参评项目个数 403

12.2 SCAMPI V 1.3的证据覆盖规则 406

12.3评估组员的资质要求 408

12.4如何准备评估计划 409

12.5如何执行就绪检查 410

12.6被访谈人员注意事项 412

12.7高成熟度评估时常发现的问题 414

12.8评估之后的CMMI怪相分析 415

第13章 人员管理 420

13.1软件企业以人为本的16项措施 420

13.2如何选择与使用项目经理 421

13.3职业程序员培养之道 424

13.4职业程序员与业余程序员的区别 429

13.5程序员敬业精神的具体表现 430

13.6采用“师徒制”培养新员工 430

13.7研发人员考核的10项基本原则 432

13.8以人为本的People CMM 434

后记 440

参考文献 441