详解CSMM软件能力成熟度模型

当前,我国软件产业蓬勃发展,产业增速连续多年位居国民经济前列,发展韧性和潜力进一步凸显。但我国多数软件企业仍采用国外标准进行能力成熟度评估,国外利用长期的经验积累,已改变我国软件企业的管理模式,并广泛渗透于我国软件产业各环节,阻碍了我国自主产业发展。同时,国外基于评估等手段,可直接获取我国软件企业的大量敏感信息,深入了解我国软件企业的技术水平、发展路线,是我国信息安全和国家安全的隐患。  
软件能力成熟度模型标准充分吸收了软件工程、项目管理、产品管理、组织治理、质量管理、卓越绩效管理、精益软件开发等领域的优秀实践,提出了符合国内软件产业发展实际的成熟度等级模型。主要适用于寻求软件开发提供商、确保软件开发质量的软件服务需求方,以及希望展现其软件开发和交付能力成熟度的组织。  
软件能力成熟度模型,是基于组织的软件能力成熟度水平,指导组织构建自身软件能力提升的最佳发展路径,将过去随意的、不成熟的等级划分升级为有序的、高效的软件能力成熟度等级评价标准,由低到高划分为五个等级,初始级、项目规范级、组织改进级、量化提升级、创新引领级。  
  

达到每个等级后的总体特征见表1.

等级 结果特征 行为特征
1级:初始级 软件过程和结果具有不确定性 a) 能实现初步的软件交付和项目管理活动;
b) 项目没有完整的管理规范,依赖于个人的主动性和能力
2级:项目规范级 项目基本可按计划实现预期的结果 a) 项目依据选择和定义管理规范,执行软件开发和管理的基础过程;
b) 组织按照一定的规范,为项目活动提供了支持保障工作
3级:组织改进级 在组织范围内能够稳定的实现预 期的项目目标 a) 在2级充分实施的基础之上进行持续改进;
b) 依据组织的业务目标、管理要求以及外部监管需求,建立并持续改进组织标准过程和过程资产;
c) 项目根据自身特征,依据组织标准过程和过程资产,实现项目目标,并贡献过程资产
4级:量化提升级 在组织范围内能够量化的管理和实现预期的组织和项目目标 a) 在3级充分实施的基础上使用统计分析技术进行管理;
b) 组织层面认识到能力改进的重要性,了解软件能力在业务目标实现、绩效提升等方面的重要作用,在制定业务战略时可获得项目数据的支持;
C)组织和项目使用统计分析技术建立了量化的质量与过程绩效目标,支持组织业务目标的实现;
d) 建立了过程绩效基线与过程绩效模型;
e) 釆用有效的数据分析技术,分析关键软件过程的能力,预测结果,识别和解决目标实现的问题以达成目标;
f) 应用先进实践,提升软件过程效率或质量
5级:创新引领级 通过技术和管理的创新,实现组织业务目标的持续提升,引领行业发展 a) 在4级充分实施的基础上进行优化革新;
b) 通过软件过程的创新提升组织竞争力;
c) 能够使用创新的手段实现软件过程能力的持续提升,支持组织业务目标的达成;
d) 能将组织自身软件能力建设的经验作为行业最佳案例进行推广
表1 成熟度等级的总体特征
软件过程能力成熟度模型框架包括4个能力域:  
a)治理:包括战略与治理、目标管理能力子域,确定组织的战略、产品的方向、组织的业务目标,并确保目标的实现;  
b)开发与交付:包括需求、设计、开发、测试、部署、服务、开源应用能力子域,这些能力子域确保通过软件工程过程交付满足需求的软件,为顾客与利益相关方增加价值;  
c)管理与支持:包括项目策划、项目监控、质量保证、风险管理、配置管理、供应商管理能力子域,这些能力子域覆盖了软件开发项目的全过程,以确保软件项目能够按照既定的成本、进度和质量交付,能够满足顾客与利益相关方的要求;  
d)组织管理:包括过程管理、人员能力管理、组织资源管理、过程能力管理能力子域,对软件组织能力进行综合管理。  
软件能力成熟度模型,聚焦软件价值创造能力,围绕治理、开发与交付、管理与支持和组织管理,高度提炼了影响组织战略目标和业务价值的四个核心管理域。同时,根据成熟度等级要求,围绕不同实践活动,创新提出了17个实践域和132个实践。旨在通过多维度量化关键实践的要求,支持组织战略的达成和革新,提升产业创新能力。