(一)ISO9000-3:
自从1987年公布ISO 9000族标准以来,ISO 9000族标准已经成为全球最有影响的质量管理和质量保证标准。在ISO 9000族标准中,与软件企业关系最密切的是《ISO 9001 质量体系-设计、开发、生产、安装和服务的质量保证模式》和《ISO 9000-3 质量管理和质量保证标准第三部分:ISO 9001在计算机软件开发、供应、安装和维护中的指南》。
ISO 9000-3作为软件企业实施ISO 9001的指南,对其中的20个质量要素作了进一步的解释与说明。其主要思想是:软件的开发和维护有着一系列的任务。这些任务的顺利完成需要各级管理层和开发人员的共同配合和一致协调。其中高级管理层应该根据其在过去工作中积累的经验来制订总体策略,下一层的管理者负责制订用来实现总体策略的实施计划,并管理他们所制订计划的执行。开发人员在计划时间内、以尽可能低的费用开发出满足功能要求的软件的前提是准确地理解用户需求。
需要指出的是,ISO 9000-3对软件企业的软件开发和维护活动起到的是指导性的作用,不带有强制性,而具有建议性。一个软件企业在贯彻和执行ISO 9000-3的过程中,应该根据企业自身的基础和现状,有针对性地开展软件质量管理和质量保障活动。软件企业影响软件质量的全部因素在软件生命周期内始终处于被监控的状态,实现持续不断的质量改进。
此外,ISO/IEC于1995年制订了《信息技术-软件生存周期过程》(ISO/IEC 12207:1995),全面系统地描述了软件生存周期过程,是ISO 9000-3实施指南的进一步扩展。
(二)两者之间的联系和共同点
(1)在基本原理方面,ISO9001和CMMI都十分关注软件产品质量和过程改进。尤其是ISO 9000:2000版标准增加持续改进、质量目标的量化等方面的要求后,在基本思路上和CMM更加接近。
(2)两者都强调“该说的要说到,说到的要做到”。对每一个重要的过程应形成文件,包括指导书和说明,并检查交货质量水平。
(3)取得ISO9001认证对于取得CMMI认证的等级证书是有益的,反之,取得CMM等级证书,对于寻求ISO 9001认证也是有帮助的。
(三)两者之间的不同点
(1)在形式上,CMMI分为5个等级(第1级级别最低,第5级级别最高),与ISO 9000审核后只有“通过”和“不通过”两个结论相比,CMM是一个动态的过程,企业在取得低级别证书后,可根据高级别的要求确定下一步改进的方向。针对性行业性很强,在过程的量化更具体,更有操作性。
(2)CMMI没有完全满足ISO 9001标准的一些特定要求,但包含了大部分的要求。ISO 9001标准只是质量管理体系的最低可接受准则,不能说已满足CMM的大部分要求。ISO 9001要素涉及到的CMM级别的对应表,在具体的内容上它们并不是一一对应,有的虽然涉及到了,但在要求的程度上也有差别。