·13·
特定实践表明一组活动,这组活动被期望可达成某过程域的特定目标。例如:项目监控过程域一个特定实践是“对项目计划中的承诺进行监督”。
共性实践称为“共性”是因为同一实践的陈述对应了多个过程域。共性实践说明一组活动,这组活动被期望可达成给定的共性目标。
1.6.3 信息部件
信息部件是对如何达到必需部件和期望部件的更加详细的描述。以下是CMMI的一些信息部件。
目的(Purpose)描述了过程域的目的。例如:组织过程定义过程域的目的是“建立和维护可用的过程资产和工作环境标准”。
介绍性说明(Introductory Notes)应用于整个过程域的多个介绍性注释,描述了过程域覆盖的主要范围。例如:项目规划过程域的介绍性说明是“规划开始于产品和项目已定义的需求”。
相关过程域(Related Process Areas)列出了相关过程域信息,反映了过程域间更高层次的关系。例如:项目规划过程域中一个相关过程域的例子是“识别和管理风险的更多信息,请参考风险管理过程域”。
典型工作成果(Typical Work Products)。当执行一个实践时,通常会以工作成果的形式产生输出。例如:项目监控过程域的特定实践“依据项目计划中的参数监督项目实际数据”中一个典型工作成果是“明显偏离的记录”。
子实践(Subpractices)提供了详细的说明,用于实施某个特定实践或共性实践。例如:在项目监控过程域中特定实践“对确定的问题采取纠正措施”一个子实践是“为处理所识别的问题而采取措施,并形成文件”。
共性实践详细说明(Generic Practice Elaborations)出现在一个过程域的共性实践后面,它为一个共性实践如何适用于特定的过程域提供指南。
注释(Notes)是伴随任何一个模型部件的文字,它提供详细背景和基本原理资料,起到注释作用。
例子(Examples)。几乎在任何一个部件旁边都提供一个或多个例子用于阐明概念或描述活动。
扩充(Amplifications)是一个特定学科的注释或例子。模型中覆盖的学科是硬件工程、系统工程和软件工程。每一个扩充都在标题上进行了标示,用于说明应用的学科。
13
·14·
1.7 CMMI评估
CMMI评估是用于评价组织过程改进的现状。由于CMMI采用了两种不同的表示法,产生了二种不同类型的评估,一是关于具体的过程能力等级的评估;二是组织整体成熟度水平的评估。通过评估分别产生能力等级剖面图或成熟度等级。
目前,CMMI的成熟度等级评估在业界应用最广泛。
1.7.1 CMMI评估要求
组织使用CMMI模型评估时,需要符合CMMI评估要求(Appraisal Requirements for CMMI,ARC)文件中的要求。评估关注识别过程改进机会,将组织过程与CMMI最佳实践对比。评估小组使用CMMI模型和遵循ARC评估方法,来指导评估和报告结果。这些评估结果被用于策划组织过程改进,产生成熟度等级或能力等级,缓解产品采购、开发和监控的风险。
ARC文件描述了几种类型评估的要求,分别是A类、B类和C类,见表1-4。 要求 客观证据收集类型 评级 组织覆盖 最小的评估组规模 评估组长的要求 A类 B类 C类 文件审查或访谈 不必 没有要求 1人 经过培训和有经验的人 文件审查和访谈 文件审查和访谈 必需 必需 4人 主任评估师 不必 没有要求 2人 经过培训和有经验的人 表1-4 评估类型的对比
1.7.2 CMMI标准评估方法SCAMPI
使用CMMI模型评估时,通常采用“标准CMMI评估方法”(Standard CMMI Appraisal Method for Process Improvement,SCAMPI)。SCAMPI定义了一些规则,确保评估定级的一致性。对于与其它企业实现标杆性对比的评估,评估定级必须确保一致性。
SCAMPI评估方法家族中包括了A级、B级和C级的评估方法。SCAMPI-A是最严格的
14
·15·
和唯一能评定等级的评估方法。SCAMPI-B提供了可选部分,但实践描述是一个固定比例的范围和这些实践得到实施。SCAMPI-C提供了更广泛的选择范围,使用者可以预先定义好评估的范围,在进行过程描述时也是采用一种非常接近的方式。
1.7.3 CMMI评估考虑事项
影响CMMI评估的要素如下:
? 选用CMMI哪个模型用于评估(CMMI或CMMI+IPPD)。
? 确定组织涉及到的评估范围和被评估的CMMI过程域,确定评价的是成熟度等级
还是能力等级。 ? 选择一种评估方法。 ? 选择评估小组成员。 ? 选择被访谈者。
? 建立评估的输出文件(例如:等级或特定实践的发现报告)。 ? 建立评估的约束条件(例如:时间和地点)。
SCAMPI允许预先确定评估范围,这些评估选择是帮助组织商业需求和目标与CMMI进行关联。
CMMI评估计划和结果的文档中,通常包括了评估选项描述、模型范围和实施评估的组织范围。CMMI评估计划和结果的文档确定了是否满足标杆的要求。
CMMI的评估原则:
? 高层领导作为评估的发起人。 ? 关注组织商业目标。 ? 为被访谈者保密。 ? 使用文件化的评估方法。 ? 采用一种参考模型。 ? 采用团队合作方式。 ? 关注过程实施的具体活动。
15
·16·
1.8 CMMI和CMM的比较 1.8.1 CMMI与CMM的模型比较
CMMI模型是建立在CMM模型基础之上,CMMI的基础源模型包括:软件CMM 2.0版,EIA-731系统工程,以及IPD CMM (IPD) 0.98a版。CMMI相对于CMM模型具有更好的可扩展性,通过学科(软件工程、系统工程、集成化产品和过程开发以及供应商管理)进行模型的扩展,组合形成各种CMMI模型,如CMMI-SW、CMMI-SE/SW、CMMI-SE/SW/IPPD、CMMI-SE/SW/IPPD/SS。
在CMMI 1.2版本中,CMMI-SE/SW模型被CMMI-DEV所取代。以后,还会通过增加新的学科领域扩展形成新的模型,如SEI 计划发布的CMMI-SVC模型和CMMI-ACQ模型。
在CMM中,该模型只有一种表示法,即阶段式表示法。CMM的阶段式表示法将软件组织的成熟度划分为5个等级。在CMMI中,该模型采用了两种表示法:阶段式表示法和连续式表示法。为了保持软件组织之间的能力成熟度比较,CMMI保留了CMM中的阶段式表示法。但是,为了促进软件组织更加切合实际地进行内部软件过程改进,CMMI增加了连续式表示法。
1.8.2 CMMI 与CMM 过程域比较
CMM有18个关键过程域(Key Process Area,KPA),用于促进软件过程的改进。在CMMI中删去了“关键”,而仅称“过程域”。
CMM中的度量分析实践分布在每个关键过程域中,而CMMI增加了度量分析(MA)过程域。
CMM第3级中的软件产品工程(SPE)关键过程域,在CMMI 中被分为需求开发( RD )、技术解决(TS)、产品集成(PI)、验证(VER)和确认(VAL)5个过程域。
CMM第3级的同行评审(PR)关键过程域被融入到CMMI的验证(VER)过程域。 CMM第3级的集成软件管理(ISM)关键过程域所阐述的风险管理,在 CMMI中形成了一个独立的风险管理(RSKM)过程域。同时CMM第3级的集成软件管理(ISM)和组间协调(IC)合并成为CMMI的集成化项目管理(IPM)。
CMMI第3级增加了决策分析和解决方案(DAR)过程域,其内容在 CMM 中没有提及。
16