GJB5000A需求管理过程域的管理和实现
陈素青
(北方通用电子集团公司无锡分公司 无锡 214145)
摘要:需求管理是GJB5000A-2008《军用软件研制能力成熟度模型》中的一个重要过程域,贯穿于软件研制的全生命周期,结合我单位实施二级认证时的一些经验,简要地阐述了该过程域的管理和实现方法。
关键词:GJB5000A-2008,过程域,需求管理
The Manage and Realize of ReqM in GJB5000A
Chen Shu-qing
(North General Electionics Group co.,Ltd Wuxi 214145 ,China)
Abstract: ReqM is one of the most important PA of GJB5000A-2008(Capability maturity model for military software development),it run through the full life cycle of software product.In this paper,the writer link up with the experiences of practice,introduce the the methods to manage and realize this PA.
Keywords: GJB5000A-2008,Rrocess Area(PA),Requirement Management(ReqM)
引言
GJB5000A-2008《军用软件研制能力成熟度模型》是GJB5000-2003的修订版,代替GJB5000-2003。【2005】装字第4号部长令,2005年9月2日发布第四条:总装备部按照国家军用标准和有关规定对软件研制单位进行软件研制能力评价,对软件测评机构进行认可,并以合格名录形式予以发布。未达到规定的软件研制能力要求的单位,不能承担软件研制任务;未经认可的软件测评机构不能承担软件测评任务。另外还明确阶段目标,共分三个阶段:2015年前,所有研制单位达到二级,部分单位达到三、四级;2020年前,所有应达到三级单位的全部达到;2025年前所有单位达到规定等级。因此,对于承担软件研制和软件测评的单位来说,通过二级资质评价已经刻不容缓。
需求管理是二级成熟度达标所要求的七个过程域中的一个,贯穿于整个软件研制周期,是连接用户和开发者的一座桥梁。开发软件系统最困难的部分就是准确说明开发什么,最困难的概念性工作是编写出详细的需求,包括所有面向用户、面向机器和其他软件系统的接口。此工作一旦做错,将会给系统带来极大的损害,并且以后对它修改也极为困难。因此,需求阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基础。需求也是在整个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。简单概括,获取需求和管理需求变更便是需求管理过程域大致的工作内容。
1 需求管理简介
1.1 什么是需求工程
需求工程组成图如图1所示,内容包括需求开发和需求管理两大部分。需求开发是指在技术层面对需求的实现过程。需求管理是指在管理层面对软件全生命周期内对需求的管理。
图1 需求工程组成图
1.2 需求管理的目的和目标
需求管理的目的和目标可以简单概括为:
目的:管理对项目的产品和产品构件的需求并且识别出这些需求与计划和工作产品的不一致之处。
目标:管理需求,并识别需求与计划和工作产品间的不一致性。
2 管理和实现
2.1 过程规范
结合我单位软件工程化实际,拟定了如下需求管理过程规范。该过程涵盖了GJB5000A《军用软件研制能力成熟度模型》关于“需求管理”子过程的所有专用实践和共用实践。需求管理过程流程如图2所示,主要流程描述如下。
图2 需求管理过程流程图
(1)软件研制任务书拟制。
根据《设计任务书》的内容,项目软件负责人同相关人员在充分沟通的前提下,形成《软件研制任务书》草稿,完成对分配需求的一致性理解。
(2)“软件任务书”评审。
通过组织相关专家和人员对《软件研制任务书》开展评审,并对评审中存在的潜在问题的分配需求通过协商,进行必要的修订,从而获得对需求的承诺。
(3)建立功能基线。
《软件研制任务书》通过评审和批准后,连同《软件研制任务书评审报告》纳入配置管理,建立软件功能基线。
(4)需求双向跟踪。
软件的开发过程,进行分配需求的横向跟踪,检查《软件研制任务书》的每个需求是否都能在后续工作产品的相应元素中得到体现,并进行反向跟踪,实现需求双向跟踪。
(5)标识需求与计划和工作产品之间不一致性。
当需求跟踪矩阵更新后,软件项目负责人及时标识《软件研制任务书》同计划和工作产品的不一致性,提供相应的纠正措施。
(6)分配需求更改控制。
若分配需求发生更改,及时组织相关人员进行影响性分析和一致性检查,保证分配需求、软件需求以及软件设计各种状态得到有效更新。
2.2 需求管理中的关键技能和证据
2.2.1 关键技能
在需求管理中,需要重点掌握以下关键技能。
● 掌握软件任务书的模板和要求。
● 正确掌握需求跟踪矩阵的使用。
➢ 什么时机填写、填写要求、正确的状态值;
➢ 结合相关文档正向抽查内容、反向抽查内容。
● 控制需分配求变更的流程。
➢ 需求管理范畴:申请、分析、批准;
➢ 软件配置管理范畴:出库、更改、复审、入库、基线。
● 控制分配需求评审。
● 理解需求管理的测量和分析。
➢ 数据的完整性;
➢ 对数据的理解和分析。
2.2.2 关键证据
在需求管理中,需要重点保留以下关键证据。
● 软件任务书(多版本)。
● 需求跟踪矩阵(双向)。
➢ 什么时机填写、填写要求、正确的状态值;
➢ 结合相关文档横向抽查内容、纵向抽查内容。
● 需求变更的表格。
➢ 需求管理范畴:申请、分析、批准;
➢ 软件配置管理范畴:出库、更改、复审、入库、基线。
● 需求评审记录。
● 理解需求管理的测量和分析。
➢ 数据的完整性;
➢ 对数据的理解和分析。
3 结论
本文概述了GJB5000A需求管理过程域的内容和含义,结合实际工作,总结了一些实践过程中的注意事项和经验,为正在进行二级认证工作的单位提供一些借鉴,由于篇幅有限,不能详细说明。
作者简介
陈素青(1980—),女,山东单县人,大学本科,助工,研究方向:档案和标准化。