返 回

CMM与ISO9000在软件过程管理中的异同

软件工程部 陈治伦

优耐达公司去年在全公司范围内成功实施了ISO9001质量体系,今年又在软件开发过程中引入CMM模型,两个体系对提高软件开发水平都具有深远、重要的意义,它们既有很多类似的准则也存在不少差异,对两者在软件过程管理中异同的分析和研究将有助于我们在工作中的实际应用。

ISO9000是ISO于1987年公布的国际标准,适用于除了电工和电子之外的各个行业,通过对设计、开发、生产和服务等各个环节的控制实现产品质量的保证。CMM提供了一套仅针对软件开发过程控制和过程管理的、行之有效的方法,它强调的是通过保证过程质量来达到产品质量的保证。我们公司依据的ISO9000-3是ISO组织1994年颁布的、在计算机软件中的实施指南,而2000年颁布的ISO9000-2000版所重点关注的已不是“产品质量”,而是类似于CMM的“过程质量”,并且还需证明有让顾客满意的能力。

CMM不突出强调质量保证,并非意味着质量保证不重要,而是质量保证仅仅包含了用户最低的要求,即可接受的质量体系的基本标准,由于软件开发具有其特点,客观上要求软件的质量认证体系从“质量保证”提高到“质量管理”的高度。

ISO9000和CMM两者的适用范围不同、侧重点不同、评估结论也不同,其中,ISO9000-3侧重评价软件产品是否已达到了标准的各项指标,CMM基于软件的特点,侧重软件过程改进的必然性和长期性,强调软件开发的过程控制和预见性。

适用范围:ISO9000适合除了电工和电子之外的各个行业,其中特别增设了对软件产品进行评价的ISO9000-3标准;而CMM是专门针对软件开发定做的模型。

侧重点:ISO9000标准涉及从原料供应到产品销售的每一个环节;CMM侧重软件开发和改进过程。

评估结论:按ISO9000标准进行的评估只有通过和不通过两种;而CMM将软件能力成熟度分为五个级别,任何一个软件企业通过或不通过评估都能找到自己的位置。

另一方面,ISO9000和CMM之间也是有相似之处的,两者都强调:“该说的要说到,说到的要做到”,强调文档化的过程和文档化的设计,通过对每个重要过程的跟踪检查实现对质量的控制。应该说,我们去年取得的ISO9001认证对于通过CMM评估是有益的,反之,通过实施CMM,对于我们执行好ISO9001质量体系也是大有帮助的。