发表日期:2006-5-29     来源:北软金分     
     什么是CMMI?

   软件能力成熟度模型(Capability Maturity Model For Software ,简称SW-CMM/CMMI),是由美国卡内基梅隆大学软件工程研究所(CMU SEI)研究出的一种用于评价软件承包商能力并帮助改善软件质量的方法,其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。其所依据的想法是:只要集中精力持续努力去建立有效的软件工程过程的基础结构,不断进行管理的实践和过程的改进,就可以克服软件开发中的困难。CMM/CMMI是目前国际上最流行、最实用的一种软件生产过程标准,已经得到了国际软件产业界的认可,成为当今(企业)从事规模软件生产不可缺少的一项内容。

 

CMM

CMMI

CMMCMMI区别

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

·

新的过程区域

·

比原来共同特性中的"度量与分析"部分要求要多

·

要求组织能够系统地开发并发展自己的度量


      CMM/CMMI将软件过程的成熟度分为5个等级,以下是5个等级的基本特征:
  
    (1)初始级(initial)。工作无序,项目进行过程中常放弃当初的计划。管理无章法,缺乏健全的管理制度。开发项目成效不稳定,项目成功主要依靠项目负责人的经验和能力,他一但离去,工作秩序面目全非。

    (2)可重复级(Repeatable)。管理制度化,建立了基本的管理制度和规程,管理工作有章可循。 初步实现标准化,开发工作比较好地按标准实施。 变更依法进行,做到基线化,稳定可跟踪,新项目的计划和管理基于过去的实践经验,具有重复以前成功项目的环境和条件。

    (3)已定义级(Defined)。开发过程,包括技术工作和管理工作,均已实现标准化、文档化。建立了完善的培训制度和专家评审制度,全部技术活动和管理活动均可控制,对项目进行中的过程、岗位和职责均有共同的理解 。

    (4)已管理级(Managed)。产品和过程已建立了定量的质量目标。开发活动中的生产率和质量是可量度的。已建立过程数据库。已实现项目产品和过程的控制。可预测过程和产品质量趋势,如预测偏差,实现及时纠正。

    (5)优化级(Optimizing)。可集中精力改进过程,采用新技术、新方法。拥有防止出现缺陷、识别薄弱环节以及加以改进的手段。可取得过程有效性的统计数据,并可据进行分析,从而得出最佳方法