技术开发 频道

CMM的结构和基本内容

【IT168 技术文章】

    CMM描述了五个级别的软件过程成熟度(初始级 可重复级 已定义级 已管理级 优化级,成熟度反映了软件过程能力(Software Process Capability)的大小,任何一个软件机构的软件过程必定属于其中某个级别。除了第一级以外,每级成熟度又由若干关键过程域(Key Process Area)构成。

    每个关键过程域分别针对软件过程的某一方面,具体描述了某级成熟度下软件过程在该方面所应达到的的一组目标和实现这些目标的一组关键活动(Key Practice)。所有关键活动被划分为五类,分别为完成该组目标所需的承诺(Commitment to Perform)、前提条件(Ability to Perform)、实际动作(Activities performed)、度量分析(Measurement and Analysis)以及验证(Verifying Implementation)。上述五方面被称为五个Common Features。 

    需要提出的是,任何一个成熟度级别的关键过程域集都是本级描述的关键过程域集和所有下级的关键过程域集的并集。如3级的关键过程域就应有13个不同的域,其中7个是3级自己包含的,6个属于2级成熟度,而4级应有15个域。

    第一级:初始级(The Initial Level)

    初始级的软件机构缺乏对软件过程的有效管理,其软件项目的成功来源于个人英雄主义而非机构行为,因此它不是可重复的。

    第二级:可重复级(The Repeatable Level)

    概述:

    第二级软件机构的主要特点是:项目计划和跟踪的稳定性,项目过程的可控性和以往成功的可重复性。更具体的说:

    机构建立了管理软件项目的策略和实现这些策略的过程。
    新项目的计划和管理基于类似项目的经验。
    过程能力的增强基于以各个项目为基础的有纪律的基本过程管理。
    不同的项目可有不同的过程,而对机构的要求是具有指导项目建立适当管理过程的策略。
    每个项目都确定了基本的软件管理控制,包括:
    基于前面项目的经验和新项目特点,做出现实的项目承诺(如预算、交付期、软件质量等);
    软件项目管理者要跟踪开支、日程、软件功能;
    满足承诺的过程中的出现的问题要及时发现,妥善解决;
    定义了软件项目标准,且机构确保其被遵守。

    构成: 

    需求管理(Requirements Management)

    客户的需求是软件项目的基础。软件需求管理的目的是在客户和软件项目之间达成对客户需求的一致理解。 

    软件项目计划(Software Project Planning)

    为软件工程和项目管理建立一个合理的计划。 

    软件项目的跟踪和监督(Software Project Tacking and Oversight)

    使管理者对实际的软件项目进展过程有足够的了解,以在项目效能偏离计划太多是采取有效措施。 

    软件子合同管理(Software Subcontract Management)

    选择合格的分包商,并有效管理之。 

    软件质量保证(Software Quality Assurance)

    对软件项目过程及其间生产的各个产品进行监管以保证最终软件质量。 

    软件配置管理(Software Configuration Management)

    在整个软件生命周期里建立并维护软件项目的工作产品的完整性。 

    第三级:已定义级(The Defined Level)

    概述

    第三级的主要特征在于软件过程已被提升成标准化过程,从而更加具有稳定性、可重复性和可控性。处于第三级的企业具有如下一些特征:

    机构采用标准的软件过程,软件工程和管理活动被集成为一个有机的整体。标准化的目的是使之可使管理者和技术人员有效工作。
    有一组人员专门负责机构的软件过程,并且在机构中有培训计划来确保stuff和manager有知识和技能完成所赋予的角色。
    标准的软件过程结合项目的特点即形成定义的软件过程,它包括一组集成的定义良好的软件工程和管理过程。
    一个定义良好的过程包括就绪准则、输入、完成工作过程、验证机制、输出和完成准则。
    在已建立的产品线上cost, schedule, functionality 均可控制,软件质量被加以跟踪。
    过程能力体现在在机构范围内对一个定义的软件过程活动、角色和责任的共同理解。

0
相关文章