什么是CMM?CMM与ISO认证体系有何关系
CMM,即软件过程能力成熟度模型,是Capacity Maturity Model的简称,既是对组织软件过程能力的描述,也是一种可对软件质量与开发能力进行评测的软件开发流程控制方法。1986年,卡内基-梅隆大学软件工程研究院开始研究这一模型,1991年推出CMM1.0版。
CMM从低到高分为5级模型,可以预计企业的开发风险越来越低,开发能力越来越高。每个等级由不同的过程方面(Process Area)构成,而每个过程方面又有各种目标构成,每个目标由各种特定惯例和通过惯例支持。实施CMM模型并进行评估,能够指导软件组织提高软件开发管理能力;降低软件承包商和采购者的风险;评估软件承包商的开发管理能力;帮助软件企业识别开发和维护软件的有效过程和关键实践;帮助软件企业识别为达到CMM更高成熟等级所必须的关键实践;增加软件企业的国际竞争能力。
CMM被用作评价软件承包能力并帮助组织改善软件过程质量,是目前国际上最流行、最实用的一种软件生产标准,成为当今企业从事规模软件生产不可缺少的一项内容。
CMM与ISO认证体系均可作为软件企业的过程改善框架。一般而言,通过ISO9001认证的企业可达到CMM2级或略高的饿过程,通过CMM3级的企业只要稍做补充,就可通过ISO9001认证。二者区别主要有三个方面:
(1) CMM是专门针对软件产品开发及服务的提出的是软件机构内部过程改善的指导;ISO9000是通用的,是从顾客与外部审核者的角度来制定的;
(2) CMM强调软件开发过程的成熟度,即过程的饿不断改进和提高;ISO9000仅描述可接收的质量体系的最低标准,ISO认证过程只有两种结果,通过或者没通过;
(3) 在覆盖范围上,CMM3级比ISO9001大。
什么是CMMI?
软件能力成熟度模型(Capability Maturity Model For Software ,简称SW-CMM/CMMI),是由美国卡内基梅隆大学软件工程研究所(CMU SEI)研究出的一种用于评价软件承包商能力并帮助改善软件质量的方法,其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。其所依据的想法是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件开发中的困难。CMM/CMMI是目前国际上最流行、最实用的一种软件生产过程标准,已经得到了国际软件产业界的认可,成为当今(企业)从事规模软件生产不可缺少的一项内容。
|
CMM
|
CMMI
|
CMM与CMMI区别
|
1.
|
需求管理RM Requirements Management
|
需求管理 RM Requirements Management
|
·
|
要与需求开发Requirement Development 并行工作
|
·
|
明确要求需求的可追溯性
|
|
2.
|
软件项目策划SPP Software Project Planning
|
项目策划PP Project Planning
|
·
|
强调相关人员的参与
|
·
|
要有具体的任务分解表WBS
|
·
|
关注项目技巧的获得
|
·
|
项目数据的数据管理
|
|
3.
|
软件项目跟踪与监控 SPTO SoftwareProject Tracking and Oversight
|
项目监督与控制PMC Project Monitoring and Control
|
·
|
监控具体实践级别上的约定
|
·
|
强调对风险和相关人员参与的监督
|
|
4.
|
软件子合同管理 SSM Software Subcontract Management
|
供应商合同管理SAM Supplier Agreement Management
|
·
|
引入了原"子商管理"和"组间协调"的意图
|
·
|
强调合同的概念
|
|
5.
|
软件质量保证SQA Software Quality Assurance
|
过程和产品质量保证 PPQA Process and Product Quality Assurance
|
·
|
强调对过程及工作产品的客观评价
|
·
|
要正式建立评价标准
|
|
6.
|
软件配置管理SCM Software Configuration Management
|
配置管理CM Configuration Management
|
·
|
"Software Library软件库" 被"Configuration Management System配置管理系统"代替
|
·
|
配置管理系统包括存储介质,规程和登陆配置系统的工具
|
|
7.
|
|
度量与分析 MA Measurement and Analysis
|