软件流程评估
软件流程评估是基于流程模型对组织使用的软件流程进行规范检查。评估包括识别和描述当前实践、确定优势和劣势领域,以及当前实践控制或避免导致(软件)质量、成本和进度不佳的重大原因的能力。
软件评估(或审计)可分为三种类型。
自我评估(第一方评估)由组织自己的人员在内部执行。
第二方评估由外部评估团队执行,或由客户对组织进行评估。
第三方评估由外部方执行(例如,由第三方评估供应商以验证其与客户签订合同的能力)。
软件过程评估是在开放和协作的环境中执行的。它们供组织使用,以改进其软件流程,其结果对组织保密。接受评估的组织必须有成员加入评估团队。
软件过程成熟度评估
软件过程评估的范围可以涵盖组织中的所有过程、选定的软件过程子集或特定项目。大多数基于标准的过程评估方法都基于过程成熟度的概念。
当评估目标是组织时,过程评估的结果可能会有所不同,即使是连续应用相同方法也是如此。结果不同有两个原因。它们是,
必须确定接受调查的组织。对于大型公司来说,组织可能存在多种定义,因此实际评估范围在连续评估中可能有所不同。
即使在看似相同的组织中,选择代表组织的项目样本也可能影响范围和结果。
当评估目标单位在项目级别时,评估应包括有助于项目成功或失败的所有有意义的因素。它不应受到给定过程成熟度模型的既定维度的限制。这里评估的是项目数据证实的实施程度及其有效性。
当组织打算实施总体长期改进战略时,过程成熟度就变得重要。软件项目评估应该是独立评估,以便客观。
软件过程评估周期
根据 Paulk 及其同事 (1995) 的说法,基于 CMM 的评估方法使用六步周期。它们是−
选择一个团队 - 团队成员应该是精通软件工程和管理的专业人士。
要评估的站点的代表完成标准流程成熟度问卷。
评估团队对问卷答复进行分析,并根据 CMM 关键过程领域确定需要进一步探索的领域。
评估团队进行现场访问,以了解软件流程,然后访问站点。
评估团队列出一份发现清单,确定组织软件流程的优势和劣势。
评估团队准备关键过程领域 (KPA) 概况分析,并将结果呈现给适当的受众。
例如,评估团队必须由授权的 SEI 领导领导评估员。团队必须由四到十名团队成员组成。至少一名团队成员必须来自被评估的组织,并且所有团队成员都必须完成 SEI 的 CMM 入门课程(或同等课程)和 SEI 的 CBA IPI 团队培训课程。团队成员还必须符合一些选择准则。
关于数据收集,CBA IPI 依赖四种方法 −
- 标准成熟度问卷
- 个人和小组访谈
- 文档审查
- 与评估参与者审查初稿结果后的反馈
SCAMPI
标准 CMMI 流程改进评估方法 (SCAMPI) 是为了满足 CMMI 模型要求而开发的 (软件工程研究所,2000)。它也基于 CBA IPI。 CBA IPI 和 SCAMPI 都包含三个阶段 −
- 计划和准备
- 进行现场评估
- 报告结果
计划和准备阶段的活动包括 −
- 确定评估范围
- 制定评估计划
- 准备和培训评估团队
- 对参与者进行简要评估
- 管理 CMMI 评估问卷
- 检查问卷答复
- 进行初步文件审查
现场评估阶段的活动包括 −
- 召开开幕会议
- 进行访谈
- 整合信息
- 准备初稿调查结果的陈述
- 展示初稿调查结果
- 整合、评估和准备最终调查结果
报告结果阶段的活动包括−
- 展示最终调查结果
- 召开执行会议
- 总结评估