- 知识空间资讯阅览
CMMI评估
发布时间:2010-9-2 8:34:14 阅读:9969次
预备工作
评估实践证明:在进行CMMI评估之前,制定一个正确的评估计划并将其文档化,确保有一个富有经验的、受过培训且具有适当资格的小组能被用来评估,为执行评估过程做准备,是十分必要的。
我们所说的文档化CMMI评估计划的结果,包括:要求,协定,估价,风险,剪裁方法,以及与评估相关的实际考虑(例如:日程安排,后勤,组织的背景信息)。此外,还应当获取并记录发起方对于CMMI评估计划的正式批准。在制定评估计划之前,应对CMMI评估输入中反映出来的协议文档化,该协议将有助于CMMI评估目标和关键评估计划参数的共同理解。在对驱动计划过程的关键参数达成共同理解的基础上,CMMI评估发起方和SCAMPI主任评估师应就评估计划达成一致;发起者和评估小组领导应就已计划的评估中技术和非技术细节达成一致。这个计划在执行其他的计划和准备阶段活动中需要进一步细化。
而通过CMMI评估小组的准备工作,将产生一支富有经验的、受过培训的且定位准确的小组准备执行CMMI评估任务。该小组的成员都应当获得了完成他们各自的任务所必备的知识,或者他们之前所拥有的知识被证实足以完成相关任务。评估小组领导者已经给每一个人提供了为完成他们各自的任务所需的对技能进行实践的机会,或者证实这些技能在过去已经得到了示范。小组成员相互了解,同时开始计划他们如何协调一致的工作。还应该做到:准备好的小组是为评估目标而服务的,小组的成员已提供培训且培训结果被记录,在必要的时候,对他们所做的因知识或技能不足的补救工作已经完成。我们认为,无论CMMI评估小组领导者是从头培训一支全新的评估小组,还是通过从富有经验的小组成员中选择来组建一个小组,确保他们与CMMI评估小组领导者能组成一个成功的集体是其责任。此外,在对CMMI评估进行的预备工作的过程中,我们还应当对模型剪裁的原则有所了解:
1.在某些应用中,计划模板和例行的程序能够根据评估的需要进行调整,这和当地的过程所有权一样,有助于交流;
2.一个结构化的计划工艺组有利于只有有限的评估经验的组织,这样一个工艺就像缓和策略样,对于发现风险是一个很有价值的机会;
3.案例研究材料提供了各种各样的选择来扩充小组培训内容以增强那些更需要培训的重点;
4.富有经验的评估小组领导者在没有案例分析的情况下,同样可以管理和模拟评估行为;
5.在小组所有已获得培训成员的集合中,对小组的建立工作进行管理以确保其团队凝聚力是十分重要的,因此,很多的小组建立练习是可以利用的,小组的规模、技能、组成部分都是本方法的裁剪内容;
6.所采用工具可以包括评估计划模板,样例,和计划模板中嵌入式的程序上的帮助,此外,为了估计评估约束的影响,估算工作表和方法也是很有用处的。
总之,CMMI评估是一个十分复杂的过程,更由于其具有的不确定性,在评估的实践中,一定要做到有备无患。真理来自于实践,我们相信,随着越来越多的软件组织着手CMMI评估,越来越多的成功经验将为我们所利用和借鉴。
评估方法
自1991年起,CMM出现了很多模型,覆盖了各种各样的专业领域。其中著名的模型有系统工程·软件工程·软件采购·集成产品和流程开发等。然而当企业想要在组织内不同专业领域的流程改进,这些针对不同专业领域的模型在架构·内容和方法上的不同限制了组织成功实施改进的能力。此外,将这样模型在组织内部集成也提高了培训·认证和改进的费用。一套包括多个专业领域的模型加上整合的培训和认证支持将解决这些问题。
CMMI(Capability maturity model integration)是为了合并三个模型到一个框架中
Capability Maturity Model for Software (SW-CMM) v2.0 draft C,
Electronic Industries Alliance Interim Standard (EIA/IS) 731
Integrated Product Development Capability Maturity Model (IPD-CMM) v0.98
正如其他CMM模型,CMMI提供了流程改进的指导,而不是流程或流程的描述。组织使用的实际流程取决于很多因素,包括应用领域·组织框架和规模。CMMI将许多经过验证的方法加入架构中,来帮组组织评价成熟度·某个软件流程的能力度,并且建立改进的优先顺序和实施改进。
从CMMI框架可以产生不同的CMMI模型,因此必须首先确定那种模型最适合企业流程改进的需要。
阶段式描述 or 连续式描述
系统工程 or 软件工程 or 两者皆有
使用连续式描述可以根据企业需要选择流程改进顺序,降低企业风险,这给通过ISO做流程改进提供了一个方便的比较。使用能力度(Capability)来衡量。
阶段式描述提供了已经过验证的流程改进顺序,方便从CMM移植过来。使用成熟度(Maturity)来衡量流程改进。
系统工程包括整个系统的开发,可能包括软件也可能不包括。
软件工程用于软件系统的开发,主要集中在使用系统的·科学的·量化的方法来开发·运行·维护软件。