信息时代,软件质量的重要性越来越为人们所认识。软件是产品、是装备、是工具,其质量使得顾客满意,是产品市场开拓、事业得以发展的关键。而软件工程领域在 1992 年至 1997 年取得了前所未有的进展 , 其成果超过软件工程领域过去 15 年来的成就总和。在关系到软件项目成功与否的众多因素中,软件度量、工作量估计、项目规划、进展控制、需求变化和风险管理等都是与工程管理直接相关的因素。因此,软件管理工程的意义至关重要。 软件过程研究的是如何将人员、技术和工具等组织起来,通过有效的管理手段,提高软件生产的效率,保证软件产品的质量。
关于CMM
CMM 是 “ 软件能力成熟度模型 ” 的英文简写,该模型由美国卡内基 - 梅隆大学的软件工程研究所(简称 SEI )受美国国防部委托,于 1991 年研究制定,初始的主要目的是为了评价美国国防部的软件合同承包组织的能力,后因为在软件企业应用 CMM 模型实施过程改进取得较大的成功,所以在全世界范围内被广泛使用, SEI 同时建立了主任评估师评估制度, CMM 的评估方法为 CBA - IPI 。
关于CMMI
CMMI 是 SEI 于 2000 年发布的 CMM 的新版本。 CMMI 不但包括了软件开发过程改进,还包含系统集成、软硬件采购等方面的过程改进内容。 CMMI 纠正了 CMM 存在的一些缺点,使其更加适用企业的过程改进实施。 CMMI 适用 SCAMPI 评估方法。需要注意的是, SEI 没有废除 CMM 模型,只是停止了 CMM 评估方法: CBA - IPI 。现在如要进行 CMM 评估,需使用 SCAMPI 方法。但 CMMI 模型最终代替 CMM 模型的趋势不可避免。
CMM 到 CMMI 的升级
升级前的准备工作:
(1)回顾 CMMI 模型和其他的 CMMI 信息,确定如何使 CMMI 最好的满足组织需要
(2)拟订升级策略。
(3)在升级过程中确保以前用于 CMM 改进的投资得到维持和运用
(4)将升级事项通告客户
(5)将对现有过程域和新增过程域的改进费用编入预算,并提供有关改进需要的培训。
(6)确定组织升级计划的风险表并管理这些风险,关键要识别 CMM 和 CMMI 之间的差异以及这些差异如何得到支持。
升级的方法:
(1)选择适合组织最好的 CMMI 模型。 CMMI 覆盖各种知识体,包括项目管理,软件工程,系统工程,集成产品,过程开发供应商来源。按组织的商业目标选择模型。
(2)选择最适合组织的表示法。 CMMI 有阶段式表示法和连续式表示法,由于 CMM 采用的是阶段式的表示法,许多组织都采取 CMMI 阶段式表示法,若组织对连续式表示法较熟悉,也可以采取连续式表示法。
(3)将选择的 CMMI 模型与 CMM 对比,确定需要变更的范畴。具体的对比见上文。 变更的主要活动是对 CMMI 中重组的 KPA 及 CMMI 中新增的 KPA 进行更新。
(4)确定升级会带来的影响。
(5)向 CMMI 升级因该报高级管理层的认可。
(6)变更组织目前的过程改进计划以支持 CMMI 升级。过程改进计划要反映出工作的优先级、组织所需增加的新部门。将该计划送交评审,得到关键储金保管者( key stakeholders )的许诺和认可,计划要说明升级可能带来的管理风险和进度风险,所需的培训,工具,和服务支持。传达这个计划并保持更新。
(7)确保对工程过程组,技术工作组及其他相关的员工进行 CMMI 的培训。
(8)获取 SCAMPI 评估支持。
(9)修改每个项目已定义的过程使其与项目改进计划一致。
(10)给每个项目制定升级进度表 不同的项目升级进度表可能不同,如果有的升级工作已经完成则该工作可以抛弃。
(11)执行 SCAMPI 评估,看是否所有的目标过程域和目标得到支持。 |