第4章 过程评估模型(PAM):评估指标、评估过程与评分规则

说到ASPICE的评估模型,很多人第一反应就是「又要被审计了」。说实话,我当年第一次面对PAM时也是这个心态。但后来我发现,搞懂这套评估体系,反而能帮你把开发过程理得清清楚楚。

这一章,我们就来聊聊PAM的核心内容。说白了,就是回答三个问题:评什么?怎么评?评几分?

4.1 评估指标:BP、WP、RL

ASPICE的评估指标分三层,我习惯叫它们「三兄弟」。

4.1.1 BP(Base Practices,基础实践)

BP是每个过程必须做的基本活动。比如软件单元验证过程,它的BP就包括:

  • 制定验证策略
  • 选择验证方法
  • 执行静态分析
  • 执行动态测试
  • 记录验证结果

每个BP都有明确的输出要求。我在项目中遇到过有人问:「我做了测试,但没写报告算不算?」答案很明确:不算。ASPICE讲究的是「做了就要有证据」。

4.1.2 WP(Work Products,工作产品)

WP就是你的产出物。包括文档、代码、测试用例、评审记录等等。每个过程都有对应的WP清单。

举个例子,软件需求分析过程的WP包括:

  • 软件需求规格说明
  • 需求追溯矩阵
  • 需求评审记录
  • 需求变更记录

嗯,这里要注意:WP不是越多越好。我见过有人为了应付评估,搞了一堆没用的文档。其实ASPICE更看重的是WP的质量和一致性。

4.1.3 RL(Resource and Role,资源与角色)

RL评估的是你有没有「人」和「工具」来做这件事。比如:

  • 有没有专职的测试工程师?
  • 有没有配置管理工具?
  • 有没有缺陷跟踪系统?

我曾经在一个小团队里做评估,他们连版本管理工具都没有,全靠手动拷贝文件。这种场景下,RL评分基本就是0级。

4.2 评估过程:从准备到出报告

ASPICE的评估过程,我总结为四个阶段。

4.2.1 评估准备

这个阶段主要做三件事:

  1. 确定评估范围:评估哪些过程?是全部还是部分?
  2. 组建评估团队:至少需要一名主任评估师
  3. 收集初步证据:先看文档,再定计划

我个人习惯在准备阶段先做一次「预评估」。就是自己先对照PAM过一遍,看看哪些地方明显有漏洞。这样正式评估时就不会太被动。

4.2.2 现场评估

这是最核心的阶段。评估师会:

  • 访谈项目成员
  • 审查工作产品
  • 观察实际工作流程
  • 验证过程执行情况

你想想看,评估师问你的问题,其实都是围绕BP来的。比如:「你们怎么做代码评审的?」「评审记录在哪里?」「发现的问题怎么跟踪?」

小技巧:回答问题时,尽量用「我们做了什么」而不是「我应该做什么」。评估师更看重实际执行情况。

4.2.3 评分与评级

评估师会根据收集到的证据,对每个过程进行评分。评分结果会汇总成一份评估报告。

4.2.4 结果反馈

评估结束后,评估师会给出改进建议。这时候别急着反驳,先听听对方的逻辑。我见过有人当场和评估师争论,结果反而暴露了更多问题。

4.3 评分规则:能力等级怎么定?

ASPICE的能力等级从0级到5级。但实际项目中,大多数企业做到2级或3级就够了

等级 名称 核心要求
0级 不完整 过程未执行或部分执行
1级 已执行 所有BP都完成,有产出物
2级 已管理 有计划、有监控、有资源保障
3级 已建立 过程标准化,可跨项目复用
4级 可预测 有量化指标,可预测过程表现
5级 持续优化 有持续改进机制

评分时,评估师会看每个BP、WP、RL的满足程度。评分标准是:

  • N(Not achieved):0-15% 满足
  • P(Partially achieved):16-50% 满足
  • L(Largely achieved):51-85% 满足
  • F(Fully achieved):86-100% 满足
避坑指南:我曾经见过一个团队,所有BP都做到了L或F,但WP评分全是P。为什么?因为他们文档写得太烂了,评审记录只有一句话「已评审」。这种证据,评估师是不会认可的。

4.4 我的实战经验

最后分享几个我踩过的坑:

  1. 别把BP当清单:BP是指导你「怎么做」的,不是让你「做完打勾」的。我见过有人把BP当checklist,做完一项划掉一项,结果过程之间完全脱节。
  2. WP要可追溯:你的需求文档、设计文档、测试用例之间要有明确的关联关系。评估师最喜欢问:「这个需求对应的测试用例在哪里?」
  3. RL不是摆设:你写了「有专职测试工程师」,但实际测试工作全是开发在做。这种前后矛盾的情况,评估师一眼就能看出来。

说白了,PAM评估不是要为难你。它是一面镜子,照出你开发过程中的真实状态。搞懂它,你就能知道自己的团队到底处在什么水平,下一步该往哪里走。

下一章,我们会聊聊如何根据评估结果制定改进计划。到时候我会分享一个我实际用过的改进模板,希望对你有帮助。