APP下载

实施GJ5000A二级的必要性和措施

2016-10-13

船电技术 2016年3期
关键词:供方军用研制

康 锋 , 陈 馨



实施GJ5000A二级的必要性和措施

康 锋 , 陈 馨

(武汉船用电力推进装置研究所,武汉 430064)

军工企业承担着国家和军队重点工程的研发任务,整个系统装备已经或即将借助计算机技术来增强作战能力,因而软件在军工产品中得到大量应用。2013年,总装备部发布了GJB8000-2013《军用软件研制能力等级要求》,该标准明确规定了各军用软件研制单位应根据其承担的软件研制任务的重要性等级和规模等级[1],通过相应的军用软件研制能力等级评价。本文着重从项目策划、项目监控、需求管理、配置管理、测量与分析、过程和产品质量保证、供方协议管理等七个过程域,阐述了述了GJB5000A二级的特点,并结合军用嵌入式软件的特点及管理现状,重点介绍了实施GB5000A二级必须经历的四个阶段,以及各阶段的具体措施及要点。

GJB5000A 军用软件 过程域 措施 要点

0 引言

2005年9月2日,总装备部颁布了《军用软件质量管理规定》([2005]装字第4号)。该文件明确要求:未达到规定的软件研制能力要求的单位,不能承担软件研制任务。

2013年,总装备部发布了 GJB8000-2013《军用软件研制能力等级要求》,该文件明确规定,承担军用软件研制任务的企业的应具备相应的资质。

随着嵌入式技术的迅速发展,软件在军用装备中的应用已非常广泛而深入,无论是在应用规模上,还是在功能上均呈快步上升的趋势。在这种环境下,计算机软件起着神经中枢的作用,一旦软件失效,就可能导致整个操作控制系统的失灵,引起严重后果。

为保证军用软件的质量,总装提出了《军用软件研制能力成熟度模型》,现行版本为 GJB5000A-2008,简称 GJB5000A。GJB5000A 是一个过程改进参考模型,核心思想把软件开发视为一个过程,并根据这一原则对软件开发和维护进行过程监控和研究,以使其更加科学化、标准化,使企业能够更好地实现商业目标;GJB5000A 引入了软件过程成熟度的概念(成熟度概念蕴含的意义是组织能力提高是需要一个演化的进程,有一个从不成熟到相对成熟的过程),这个概念保证特定软件过程得到清晰的定义、管理、测量、控制,帮助企业人士所处位置,找到前进目标。

目前,总装对 GJB5000A 的推进工作提出了更高的要求。从 2010 年开始,总装已经正式委托新时代全面组织、管理和实施 GJB5000A 的推进和评价工作。随着计算机软件在型号产品领域应用的日益广泛,如何结合企业实际状况,有效地贯彻和实施 GJB5000A,使软件产品的研制过程更科学、更完善,已成为所有军工企业都面临的问题。

1 军用嵌入式软件的特点及管理现状

军用软件存在三方面的特点:一为中小型嵌入式软件,大部分软件规模为 30000 行以下;二为重要类别均为C级以上(包括C级);三为硬件产品的衍生产品,而未单独作为产品进行交付。同时,各军工企业针对此类软件的管理存在以下特点:

1)未把软件看成单独的产品,未单独考虑软件的研制费用和周期,而只把其作为硬件的衍生物对待,特别是对嵌入式软件。

2)软件开发组织管理结构较为分散,各项目组彼此之间缺乏技术、资源及经验的共享。

3)在软件开发过程中对软件的资源投入(包括人员、设备、工具等)不足。由于软件开发人员不足,因此软件开发人员角色和职责定义不明确,经常是一人多职,可能既做管理,又负责需求、设计、编码,甚至测试和维护。

4)对软件测试的概念和过程认识模糊,由于对软件产品缺乏单独的测试工具,普遍存在将设备调试等同于软件测试。

5)软件开发过程没有统一、规范的过程标准和有效的计划。

2 GJB5000A 二级的特点[2]

GJB5000A二级也称已管理级,其最大的特点就是组织的项目已确保其过程按照方针进行策划并得到执行。在此阶段,建立了基本的项目管理过程,并用来跟踪项目的成本、进度和功能性,必要的过程纪律已经就位, 使具有类似应用的项目能够重复以前的成功。它包括7个过程域,如表1所示。

GJB5000A二级已管理级主要是建立项目管理体系,以软件项目组为核心,在项目层级对项目策划、项目监控、需求管理、配置管理、测量分析、质量保证、供方协议管理七个过程制定方针、过程、规程和相关模板文件,建立项目管理体系,对七个方面进行规范管理。

项目策划的主要活动是在项目立项后,对项目进行科学合理的策划,制定项目计划。首先,根据项目的生存周期模型,建立项目的工作分解结构(WBS)。其次,通过工作结构分解,采用数理统计中的科学估算方法来估算项目总工作量、每个任务工作包的工作量,以及估算项目的资源等。同时,对项目可能存在的风险进行识别,对风险的优先级进行排序。制定详细的项目计划,作为项目监控的依据。

项目监控主要活动是在项目计划制定后,按照规定频次逐步细化计划、监控计划的完成情况,并适时调整计划。软件项目负责人根据计划定期监控计划完成情况,监控计划中策划的各参数,根据上周期的工作情况以及项目计划安排下周期的工作任务,实施进展、绩效和问题评审。如果在项目监控中如发现项目显著偏离计划时,提出问题、分析问题,采取纠正措施直到关闭为止。

需求管理过程在GJB5000A二级中是唯一的工程类过程域,即是针对工程活动、面向产品的要求。需求的提供者和接收者要一起对需求进行分析,以确保对需求的含义达成共识。需求的表达必须是无二义性的唯一表达、有唯一标识、可验证、可追溯、相互一致的等要求。其次,需求基线必须纳入配置管理得到维护和控制。建立需求和工作产品(文档和源程序)双向可追溯性,即从软件研制任务书、需求规格说明、设计说明、源程序、测试说明和测试报告中的需求正方向均应追溯,正向跟踪以确保需求没有遗漏,反向跟踪以确保需求没有多余。

配置管理即是软件的技术状态管理。配置管理首先是要建立基线。建立基线的要素:一是标识配置项(纳入配置管理的文档和源程序);二是建立配置管理系统,软件配置管理系统实行“三库”管理规定,包括开发库、受控库和产品库,在开发库中项目成员可以自由检入、检出,受控库和产品库则有专门的配置管理员来进行出入库权限管理;三是在不同的阶段生成和发布基线,并将基线纳入受控库和产品库中进行管理。四是建立配置管理记录,执行配置审核,维护基线的完整性,并对配置项和基线进行跟踪和更改控制。

测量分析过程主要目的是对管理和技术活动中产生的数据进行测量和分析提供管理决策以支持管理和技术活动的改进。根据组织的方针,提出项目的测量目标,明确测量项采集的测量时段、频次、采集人和存储规程,明确如何对测量数据进行分析和报告。测量分析结果在评审项目进展、绩效的会议上与利益相关方进行交流。

过程和产品质量保证过程要求客观地评价所实施的过程、工作产品(文档和源程序)及服务对适用的过程说明、标准和规程的符合性。与ISO9000标准要求一致,不同点在于每个项目均设置项目级质量保证人员,随着项目演进层层把关。项目级质量保证人员(QA)根据质量保证计划对所实施的过程及形成的文档、源程序进行审核。同时,设置了组织级质量保证人员,对项目级质量保证人员的工作进行审核。

供方协议管理目的是管理供方产品的获取工作。与ISO9000标准的供方管理相类似,评价供方的能力,选择供方,通过与供方建立协议,明确获取产品的方式,执行供方协议,监督供方的过程,评价供方提供的产品并接收产品。

3 实施 GJB5000A 二级的具体措施

3. 1启动阶段

3. 1. 1组建实施机构

相比较一般的组织活动而言, GJB5000A 的体系建设和实施过程是一项涉及时间长(从启动到通过认证时间一般为 2~3 年)、人员广(需要计划、 质量和软件工程人员等的全面参与) 的系统性工程。需要结合企业软件产品的特点,发动各个层次上员工的主动性和创造性。因此配备相关的人员,落实相关的职责,保障相关的资源是必要的。根据近年来 GJB5000A 的实践经验,以下三类角色是必不可少的:

① 推进领导小组:由最高行政领导担任推进领导小组组长,管理者代表担任推进领导小组副组长,各部门质量负责人担任组员。

职责:负责提供推进 GJB5000A 的必要资源,并组织过程体系在其部门的实施。

② 软件工程过程组: 由各部门与项目相关的人员组成。

职责:负责制定组织的软件过程体系, 对体系的实施提供咨询与指导。

③ 软件质量保证人员:由软件相关研制部门二级质量机构人员和质量部门相关人员组成。

职责:监督企业内过程体系在各部门的实施情况。

3. 1. 2向上级机关提交软件研制能力评价申请

根据上级机关的要求,各承担软件研制任务的企业,应提前1.5~2年向有关部门提交《军用软件研制能力评价申请书》,经审批后报请总装备部列入认证工作计划。

3. 1. 3调研并收集相关信息

目前,已有不少企、事业单位通过 GJB5000A 的评价或正在落实 GJB5000A 的各项要求。因此,可以通过学习其它单位在实施 GJB5000A 过程中的经验和心得,找出本企业在软件管理方面的薄弱环节和差距,达到又快又好地构建本企业 GJB5000A 体系的目的。

3. 1. 4购置相应工具

GJB5000A 强调过程控制, 较高的过程控制要求必然产生大量过程控制的输出。为了提高工作效率,适宜的项目管理工具和辅助研发工具不可或缺。

3. 1. 5开展 GJB5000A 培训

组织培训是落实 GJB5000A 要求的重要环节。对软件项目成员、维持 GJB5000A 体系运行的人员和相关领导进行 GJB5000A 及评价准则的培训,使各相关人员对实施 GJB5000A 的意义、框架、标准内容和评价准则等有一个基本而系统的认识,为 GJB5000A 的实施打下良好的基础。除此之外,还应对其它软件相关人员进行培训和宣贯。

3. 2过程定义阶段

3. 2. 1制定过程文件编制计划

基于目标的计划制定应该是容易的。对EPG成员职责进行分工,做好过程体系文件编制前的准备和策划工作。

3. 2. 2编制相关软件过程文件及配套制度

为有效开展 GJB5000A 的推进工作,必须制定相应的指导文件和规章制度,要结合企业软件产品的特点和软件管理现状,将 GJB5000A 的各项要求落实细化到上述文件中。然而, GJB5000A 只是对过程管理提出了若干要求,并未提供实现这些要求的方法。为使编制的文件更具指导性,必须结合其它软件类国军标,如 GJB5235、GJB5236、GJB6386 等对配置管理过程、软件度量、软件评审等单个过程提出了更为具体的要求的国军标。

3. 3过程实施阶段

在完成软件过程体系的初次建立后应选择在一定范围开展项目运行工作, 以此检验软件过程体系与组织自身的适宜性。为此, 应做好试点项目的选择、培训和监督检查三方面的工作。

① 试点项目选择:为使试运行工作取得成效, 应选取典型项目参与运行活动,应具备的特点包括:覆盖企业的软件产品范围、覆盖企业软件相关部门、覆盖项目全生存周期模型(从立项到结项)、覆盖企业重点型号产品和覆盖所有过程域(供方协议除外)。

② 培训:在开展试运行前和试运行过程中对项目组成员进行培训, 培训的内容包括: GJB5000A 二级的要求、本企业软件过程体系的规定、软件工程专项技术等,并根据项目实施的具体情况进行相应的调整。

③ 监督检查:应制定对试运行情况监督检查的计划, 明确监督检查的方法, 完善监督检查机制。监督检查的计划应与组织试运行的计划保持一致, 并随着试运行情况进行调整。

3. 4评价阶段

3. 4. 1开展试点项目内部评价工作

在预评价工作之前应进行一次内部评价工作,及时发现试点项目在执行过程体系文件中存在的问题,以便及时整改,为预评价工作做好铺垫工作。

3. 4. 2开展试点项目预评价工作

在正式评价工作之前向新时代认证中心提交预评价申请,由新时代认证中心组织审核专家对企业的试点项目进行就绪调查(预评价工作),及时发现试点项目在执行过程体系文件中存在的问题,以便及时整改,为正式评价工作做好铺垫工作。

3. 4. 3体系修订

修订体系过程改进是一个循环的过程, 按照 PDCA 的思想,在开展建立体系、试运行、 监督检查的基础上还应建立定期修订体系的机制。根据运行、内部评价及预评价中暴露出来的问题, 对过程体系实施必要的修订, 确保体系运行更有效。

3. 4. 4开展试点项目正式评价工作

GJB5000A 的认证由总装备部负责组织实施,在认为自身条件具备时可向总装备部主管机关提出认证申请。认证活动严格按照过程改进用的标准 CMMI 评估方法开展。

4实施 GJB5000 二级的要点

4. 1领导重视

GJB5000A 推进是一个系统工程,在组织体系上需要一定的管理压力传导才能够保证有效落实。高层领导如果不重视,则资源和监管等得不到保证,这就使 GJB5000A 体系无法运行。

4. 2认识到位

GJB5000A 推进最大的思想障碍是:实施初期,烦琐的过程控制要求和规范性要求必然会降低软件的研发效率,随着 GJB5000A 推进的逐步铺开,会产生要效率还是要规范的不同认识与困惑。这样就很可能会引发看似正确的抵触情绪和行动。因此管理层必须认识到位,认识到实施 GJB5000A 二级并不仅仅是一项行政任务,认识到通过这种循序渐进的改进一定能提高软件产品的质量同时降低成本。这样才能加大宣贯力度,使整个组织达成统一的认识,保证实施工作的有效进行。

4. 3责任到位

必须将标准中的角色与企业管理系统中的角色对应起来,落实人员,落实职责,落实组织机构,以使各类人员各司其职,协同合作。为了有效推进 GJB5000A,应成立专门的推进机构:软件工程过程组,简称 EPG。EPG 成员应熟知软件管理方面的标准和精通软件工程方面的知识。

4. 4工具到位

GJB5000A 强调过程控制,会产生大量过程控制的输出,适宜的项目管理工具和辅助研发工具不可或缺。

5 结论

实施 GJB5000A 在整个软件研制过程中是一个逐步深化,不断提高的过程。既不能因为 GJB5000A 对过程控制和规范性的高要求影响研制效率而产生抵触;也不能抱有“一劳永逸” 的思想,把 GJB5000A 当成行政任务,评价通过后就不再重视。企业应不断提高 GJB5000A 的实践水平,按 PDCA 的思想不断完善的软件项目生命周期中的各个过程,这样才能持续提高企业的软件研制能力,提高企业软件产品的质量。

[1] 军用软件研制能力等级要求(GJB8000-2013).

[2] 军用软件研制能力成熟度模型(GJB5000A-2008).


Necessity and Measures of Implementing the GJB5000A Two Level

Kang Feng, Chen Xin

(Wuhan Institute of Marine Electric Propulsion, Wuhan 430064, China)

Military enterprises take on the development of the national and military key projects , the whole system is equipped with or will use the computer technology to enhance the operational capability, and thus the software in the military products are widely used. In 2013,the general equipment department released the GJB8000-2013 “level of military software development requirements” .The standard specifies the importance and scale of the development of military software, and the evaluation of the level for the military software development capability. This paper mainly focuses on seven processes, such as project planning, project monitoring, requirement management, configuration management, measurement and analysis, process and product quality assurance, supplier agreement management ,etc. This paper expounds the characteristics of GJB5000A two level combining with the characteristics of military embedded software and management status, and introduces the four stages of the implementation of GJB5000A two level , the specific measures and key points of each stage.

GJB5000A; military software; processes; measures; key point

TP311

A

1003-4862(2016)03-0008-05

2014-11-09

康锋(1982-),男,工程师。研究方向:软件工程化。

猜你喜欢

供方军用研制
威力无比的军用霰弹枪
中国船级社大力推进海外供方认可服务
一种新型固定翼无人机的研制
军用机器人揭秘
XV-24A垂直起降验证机的研制与发展
中国工农红军军用号谱
如何建立供方管理体系
一种轻型手摇绞磨的研制及应用
猜谜
供方体制应尽快走向市场化