2. ASPICE基础概念
做过程评估,第一步不是拿张表去现场查。你得先选个框架。框架选错了,后面全白干。
我见过不少团队,上来就说“我们用CMMI评估”,结果项目组连CMMI是啥都没搞清楚。还有的直接套六西格玛,做着做着发现连流程文档都没有,根本没法算西格玛水平。所以这一章,咱们把主流的三个框架掰开揉碎讲清楚。
2.1 CMMI模型简介
CMMI,全称是Capability Maturity Model Integration。说白了,就是一套衡量你组织“成熟不成熟”的尺子。它把过程能力分成5个等级:从初始级(Level 1)到优化级(Level 5)。
我个人习惯把CMMI比作“爬楼梯”。你每上一个台阶,组织的管理能力就更强一点。Level 1靠英雄,Level 2靠流程,Level 3靠标准,Level 4靠数据,Level 5靠持续改进。
- CMMI关注的是“过程域”(Process Area),比如需求管理、项目计划、配置管理
- 每个过程域有特定目标(Specific Goals)和通用目标(Generic Goals)
- 评估结果是一个成熟度等级(1-5)或能力等级(0-5)
我在项目中遇到过一家公司,他们做嵌入式开发,团队只有20人。非要冲CMMI Level 3,结果光文档就写了半年,项目全延期了。后来我建议他们先做Level 2,把项目管理的基本盘稳住。你看,框架本身没问题,但得看怎么用。
2.2 ISO 15504(SPICE)标准
SPICE是Software Process Improvement and Capability dEtermination的缩写。它和CMMI很像,但更灵活。SPICE不给你定死一个等级,而是让你看每个过程的能力水平。
嗯,这里要注意:SPICE用的是“能力等级”(Capability Level),从0到5。你可以只评估“需求开发”这个过程的Level 3,其他过程可能还在Level 1。这在CMMI里是不允许的——CMMI要求所有过程域必须达到同一个成熟度等级。
| 对比维度 | CMMI | SPICE |
|---|---|---|
| 等级方式 | 成熟度等级(整体) | 能力等级(按过程) |
| 灵活性 | 较低,需整体达标 | 较高,可单独评估 |
| 适用范围 | 组织级改进 | 项目级或过程级 |
| 国际标准 | 非ISO标准 | ISO 15504 |
你想想看,如果你的团队只关心“测试过程”做得好不好,那用SPICE就比CMMI合适。我曾经帮一个汽车电子供应商做评估,他们只关注软件测试和配置管理两个过程,SPICE正好派上用场。
2.3 六西格玛DMAIC框架
六西格玛和前面两个不一样。它不是用来评估“过程成熟度”的,而是用来解决“过程问题”的。DMAIC是它的核心方法论:Define(定义)、Measure(测量)、Analyze(分析)、Improve(改进)、Control(控制)。
说白了,CMMI和SPICE是体检,告诉你身体哪里不好。六西格玛是治病,告诉你具体怎么治。
我记得有一次,一个做金融系统的团队来找我。他们的缺陷率一直降不下来,试了很多方法都没用。我建议他们用DMAIC:先定义问题(Define),再收集数据(Measure),然后分析根因(Analyze),发现是代码评审环节形同虚设。改进(Improve)后,缺陷率降了40%。最后建立控制机制(Control),防止反弹。
2.4 如何选择适合的框架?
这是关键。选框架不是拍脑袋,得看你的组织现状和目标。我总结了一个简单的决策逻辑,画成图给你看。
我建议你按这个思路来选:
- 先看流程基础——如果团队连基本的项目计划、需求管理都没有,别想太多,先上CMMI Level 2。
- 再看目标——如果老板要的是“通过CMMI Level 3认证”,那就老老实实走CMMI。如果只是想解决某个具体问题,比如测试效率低,那SPICE或六西格玛更灵活。
- 最后看数据——六西格玛对数据要求高。你想想看,没有历史数据,你怎么算DPMO(每百万次机会缺陷数)?怎么画控制图?所以数据基础弱的团队,别硬上六西格玛。