GJB5000B 军用软件能力成熟度模型体系
GJB5000B 军用软件能力成熟度模型体系
一、 GJB5000标准的前世今生
随着软件规模和复杂度不断增加,在规定的时间和预算内开发出符合质量要求的软件越来越难,为解决这一难题,国际上陆续推出了一些软件过程评估参考模型和方法,用于评估软件供应商的能力,其中最有影响力的是美国卡耐基•梅隆大学软件工程研究所提出的CMM/CMMI模型,该模型在世界各地得到广泛认可与实施,并取得了相当好的效果,美国宇航局NASA-GB-001-95资料指出,随着某单位实施CMMI模型软件过程改进,项目开发周期缩短了38%,任务成本降低了55%,平均每千行代码缺陷数从4~5个降为1个。
为加强我国军用软件产品的研制质量,提出军用软件能力成熟度模型标准建设要求,并于2003年正式颁布了GJB5000《军用软件能力成熟度模型》,GJB5000引进了CMMI方法论,并结合了国内的军用软件研制过程特点,用以评价软件研制单位是否具有相应的软件研制能力。
2008年颁布了GJB5000A《军用软件研制能力成熟度模型》代替GJB5000《军用软件能力成熟度模型》。并下发了《军用软件质量管理规定》,提出未达到规定软件研制能力要求的单位,不能承担相应的软件研制任务。
2021年颁布了最新的GJB5000B《军用软件能力成熟度模型》代替GJB5000A-2008《军用软件研制能力成熟度模型》,GJB5000B对成熟度等级、实践域名称及其内容等进行了本地化改进,通过新增、合并、调整,22个过程域变为21个实践域。GJB5000B规定了军用软件能力成熟度的模型和军用软件论证、研制、试验和维护活动中的相关实践,适用于军用软件论证、研制、试验和维护能力的评价和过程改进。
二、 GJB5000B 军用软件能力成熟度模型评价(认证)
2017年,装备发展部发布了第73号文件,“十三五”期间要全面建立军用软件研制能力评价体系,到2020年12月份严格落实军用软件研制能力评价制度,未达到规定的军用软件研制能力研制要求的单位,不得软件研制任务。同时,贯彻装备市场准入管理精简高效的政策导向,将军用软件能力评价工作纳入装备承制单位资格审查工作一体实施。
国家军用标准GJB 5000B-2021《军用软件能力成熟度模型》自2022年3月1日起正式实施:
2022年3月至2024年2月为标准换版过渡期。过渡期间,按照GJB 5000B标准开展有关培训,编制体系文件,试运行并完成内部评估;可按GJB 5000A标准或者GJB 5000B标准进行军用软件研制能力评价。2024年3月后,不再接收A版,全部贯彻实施GJB 5000B标准,并按此进行军用软件研制能力评价。
2024年3月后,软件相关研制单位如果没有通过相应等级的GJB 5000B-2021 军用软件能力成熟度模型评价,将没有资格参与军工研制任务的招投标、订购。
三、GJB5000B《军用软件能力成熟度模型》标准 介绍
GJB5000B-2021《军用软件能力成熟度模型》代替GJB5000A-2008《军用软件研制能力成熟度模型》。GJB5000B-2021《军用软件能力成熟度模型》是军用软件全生存周期过程技术和管理最佳实践的集合。这些实践按照实践域进行分类,指导组织实施精细化过程管理,不断改进组织过程,提高质量和过程绩效,提升顾客满意度。
GJB5000B-2021《军用软件能力成熟度模型》分为五个等级。一级为初始级,二级为规范级,三级为全面级,四级为量化级,五级为卓越级,每一等级是实现下个等级的基础,实现分级递进。组织应根据承担的任务情况及软件特点,按照GJB8000-2013《军用软件研制能力等级要求》的规定达到相应的成熟度等级。成熟度等级为一级的单位,应通过GJB9001C-2017为依据的武器装备质量管理体系认证,二级或以上等级的组织,应以本标准为依据通过GJB5000相应等级评价。
二级为规范级,主要特征:已建立过程改进组织机构和过程规范,逐步积累组织资产;基于估计和项目特点,制定和维护项目计划,获取、开发和管理项目的需求并实施验证与确认;通过开展配置管理、质量保证、测量分析活动,监督其执行,确保项目可控。该等级的组织具备在同类项目中复制成功经验的能力。
三级为全面级,主要特征:全面建立并维护组织资产;按照组织标准过程,使用组织资产全面开展全生存周期项目管理、工程及支持活动。该等级的组织具备在组织范围内复制成功经验的能力。
四级为量化级,主要特征:建立了符合组织业务发展需要且较高的质量和过程绩效量化目标;采用量化分析管理技术,建立并维护过程绩效基线,对关键过程实施量化管理及原因分析,并基于量化结果进行领导决策。该等级的组织具备在组织范围内实施量化管理的能力。
五级为卓越级,主要特征:通过量化评估业务目标并分析绩效数据,识别组织内的关键问题和共性问题,主动并预测性地优化和改进组织过程,组织通过不断创新实现优质持续发展,整体绩效能力得以提升。该等级的组织具备应对复杂态势、自我优化、持续获得成功的能力。
2013年7月颁发了GJB8000,即《军用软件研制能力等级要求》,规定了军用软件研制单位应达到的军用软件研制能力等级要求。
软件重要性等级 |
软件规模等级 |
||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
巨 |
大 |
中 |
小 |
微 |
|||||||
Ⅰ |
五级 |
四级 |
三级 |
三级 |
三级 |
||||||
Ⅱ |
四级 |
三级 |
三级 |
二级 |
二级 |
||||||
Ⅲ |
三级 |
三级 |
二级 |
二级 |
一级 |
||||||
Ⅳ |
三级 |
二级 |
二级 |
一级 |
一级 |
四、 GJB5000B军用软件能力成熟度模型框架及表示方法
GJB5000B体系模型包含21个实践域,分为组织管理类、项目管理类、工程类和支持类。下表为成熟度模型分类分级表。
A、由5个成熟度等级来表达:每个成熟度等级由若干过程域组成(21个过程域(PA)分成5个级别);
B、每个过程域由目标、执行方法组成;即,成熟度等级中包含关键的过程域,每个过程域中具有一定的目标,以及为了达到这些目标必须要做到的行动步骤,即最佳实践。
类别 |
实践域名称 |
规范级 |
全面级 |
量化级 |
卓越级 |
序号 |
---|---|---|---|---|---|---|
组织管理类 |
LD 领导作用 |
● |
● |
● |
− |
1 |
OPI 组织过程改进 |
− |
● |
● |
− |
2 |
|
OAD 组织资产开发 |
− |
● |
− |
− |
3 |
|
OT 组织培训 |
− |
● |
− |
− |
4 |
|
II 实施基础 |
● |
● |
− |
− |
5 |
|
项目管理类 |
PP 项目策划 |
● |
● |
● |
− |
6 |
项目监控 |
● |
● |
− |
− |
7 |
|
ROM 风险与机遇管理 |
− |
● |
− |
− |
8 |
|
ESM 外部供方管理 |
● |
● |
− |
− |
9 |
|
工程类 |
DEM 立项论证 |
● |
● |
− |
-− |
10 |
RDM 需求开发与管理 |
● |
● |
− |
− |
11 |
|
TS 技术解决方案 |
− |
● |
− |
− |
12 |
|
PID 产品集成与交付 |
− |
● |
− |
− |
13 |
|
PR 同行评审 |
− |
● |
− |
− |
14 |
|
VV 验证与确认 |
● |
● |
− |
−- |
15 |
|
MT 运行维护 |
● |
● |
− |
− |
16 |
|
支持类 |
CM 配置管理 |
● |
− |
− |
− |
17 |
QA 质量保证 |
● |
− |
− |
− |
18 |
|
DAR 决策分析 |
− |
● |
− |
− |
19 |
|
CAR 原因分析 |
− |
● |
● |
● |
20 |
|
MPM 测量与绩效管理 |
● |
● |
● |
● |
21 |
|
类别 |
实践域名称 |
二级 |
三级 |
四级 |
五级 |
序号 |
注:“●”表示该实践域有此等级实践;“−”表示该实践域无此等级实践。 |
五、评估方法
一般采用SGAMPI(The Standard GJB5000 Appraisal Method for Process Improvement,过程改进的标准GJB5000评估方法)对研制单位进行军用软件研制能力评估。SGAMPI评估方法有3类:A类、B类、C类,其中A类方法是最严格的评估方法,一般正式评价都会采用A类方法。举个日常的例子,比方说你今天中午吃了饭,但别人不知道,别人要判断你是不是吃了饭,用A类评估方法来判断的话,需要提供以下证据:第一类证据:书面直接证据,能证明你吃了饭的书面的直接证据。如果你去餐厅吃饭的,你的账单就可以用来做直接证据,如果你在家做饭,那就麻烦了,可能没有留下直接书面证据了。
第二类证据:书面间接证据。比方说你在家做饭,之前去买菜了,你买菜的账单就可以作为间接书面证据。
第三类证据:访谈证据。如果别人问你,今天中午有没有吃饭,你能准确说出来,并且没有疑点,那就认为证据有效了,或者是如果你和别人吃饭,别人能说出跟你吃了饭,也认为证据有效了。
以上三类证据,第一类书面直接证据是必须有的,同时第二类和第三类证据,至少要有一个。以上证据都具备,才能认为你吃了饭。进行GJB5000评估的时候,每一个实践都需要提供类似这样的证据。
六、GJB5000B 军用软件能力成熟度模型评价的基本条件及认证要求
(一)基本条件
1、具备装备承制单位资格证书(现在不是必须要有),以及与申请的研制能力等级、研究领域相适应的专业技术能力和研制经历。
2、按照申请的研制能力等级要求,组织机构健全,相关部门和人员的软件研制质量管理职责明确。
3、根据相关国家军用标准,承担或拟承担的软件研制任务要求其软件研制能力等级达到二级以上(含二级)。
4、申请军用软件研制能力二级初评的,软件过程体系建立并有效运行3个月以上且完成内部评估;申请军用软件研制能力三级初评的,现有研制能力等级有效保持2年以上,拟申请研制能力等级的软件过程体系建立并有效运行6个月以上且完成内部评估。
5、近三年未发生因软件质量引发的重大质量问题。
6、复评应在研制单位资质有效期满前9个月提交申请
7、申请研制单位自收到研制等级评价通知之日起,3个月内因自身原因未能接受评价的,应重新提交申请。
(二)GJB5000B ML2/3 认证基本要求
1、认证单位必须达到组织覆盖;
2、选取的试点项目至少4个,并且必须覆盖软件全生命周期;
3、选取的项目类型必须是组织的主要主营业务;
4、选取的项目GJB5000B ML2规范级要满足12个实践域要求;GJB5000B ML3全面级要满足21个实践域要求;其中GJB5000B ML2/3中立项论证、外部供方管理和运行维护等3个实践域可作为评价考察项;
5、选取的项目人员,至少要占到认证单位软件研发人员的40%以上;
6、项目规模:达到组织内中等项目规模,工期至少4~6个月。
(三)GJB5000B ML2/3 认证申请条件
1、承担或拟承担军用软件研制任务;
2、依据GJB5000B-2021标准,建立运行软件过程文件1年以上,并通过内部评估;
3、申请日期与上次评价未通过日期的间隔时间不少于1年;
4、遵守《军用软件研制能力评价程序》要求。
七、 软件成熟度模型是什么
软件成熟度模型的核心思想是,把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化、使企业能够更好地实现商业目标。软件过程成熟度概念的引入,是为了解决路径的问题,是指一个特定软件过程得到清晰的定义、管理、测量、控制和有效的程度。
成熟度概念蕴含的意义是组织能力提高是需要一个演化的进程,有一个从不成熟到相对成熟的过程。通过软件过程评估,可以帮助企业认识所处的位置,通过软件过程模型,可以帮助企业找到前进的目标。
八、GJB5000B是什么
GJB5000B是一个产品开发模型(Product Development Model ,PDM),关注整个体系的问题,是一个过程改进参考模型,描述的是一组有效过程的特征,提供了一套最佳实践,它关注的是:生产率(Productivity)、性能(Performance)、成本(Costs)、相关方满意(Stakeholder satisfaction)。
GJB5000B是一个产品集,它包括:
A、军用软件能力成熟度模型框架 ;
B、集成模型;
C、评估方法和材料;
D、各种培训;
E、术语
GJB5000系列标准,是对标CMM系列引进而来的,引进的目的就是能够提升军用软件承制单位的软件工程能力,能够提高我国军用软件的质量。
九、GJB5000B告诉我们什么
GJB5000B告诉我们,过程管理方面优秀的软件组织是什么样的,优秀的软件组织也要分等级(1-5级)每个级别的软件组织都具备有一定的特征,即都执行了某些特殊活动。
GJB5000B是一个最佳实践的集合,不一定全部适用自己的组织,但总有一些好的做法可以借鉴。