APP下载

基于GJB 5000A的雷达系统软件开发文档剪裁方法的研究

2017-01-03王小平苏艺博2徐天宇

雷达与对抗 2016年4期
关键词:剪裁软件测试军用

王小平,陆 峻,苏艺博2,,徐天宇

(1.南京航空航天大学 经济与管理学院,南京211106;2.中国人民解放军理工大学,南京210072;3.中国船舶重工集团公司第七二四研究所,南京211153)



基于GJB 5000A的雷达系统软件开发文档剪裁方法的研究

王小平1,3,陆 峻3,苏艺博2,3,徐天宇3

(1.南京航空航天大学 经济与管理学院,南京211106;2.中国人民解放军理工大学,南京210072;3.中国船舶重工集团公司第七二四研究所,南京211153)

在军用软件开发中,需要对大量的文档进行剪裁。为研究满足GJB 5000A二级要求,并符合雷达系统软件特点的文档剪裁方法,本文以分类分析的方法将软件开发文档按照用途分成计划、需求、设计、软件测试、手册、清单和总结等7类分别加以分析,提出各类文档的剪裁准则,建立了各类文档的裁剪矩阵。

GJB 5000A;文档剪裁;GJB 438B;雷达软件;软件工程化

0 引 言

软件开发过程中的文档既是软件设计和开发的重要记录又是软件过程的记录,是软件的重要资料。编写文档既是软件开发必不可少的过程,也是软件工程化管理的具体体现。

在推行采用GJB 5000A模型的软件工程化工作中发现,大量的文档需要编写,往往被软件开发者认为是一件艰难、枯燥的工作,不认可其为软件开发的一部分,而被当成负担。要让文档对软件开发有所裨益,而不是成为软件开发的累赘或障碍,必须要对软件开发中应编制的文档进行顶层设计。本文尝试结合雷达系统的特点,将雷达系统软件开发过程中要产生的文档分成了7类分类,对不同类别的文档加以分析。通过分析,得出适用于雷达系统软件开发的文档剪裁方法,也为其他领域的软件开发文档剪裁提供了参考。

1 软件开发文档的分类

GJB 438B-2009规定了军用软件开发文档的通用要求。在GJB 438B标准中,规定了软件开发中可能产生的28种文档。这些文档以类似瀑布模型的顺序列出,每种文档都是对软件或软件开发过程某一方面的描述[1]。

雷达系统是一种重要的军用设备,在雷达系统软件的开发过程中产生的文档应按照GJB 438B的要求编写。在推行采用GJB 5000A模型的软件工程化工作中,为便于对文档规定的理解和对文档进行剪裁,基于GJB 438B-2009标准的要求,将软件开发文档分为7类。

1.1 计划类文档

正如GJB9001B《质量管理体系要求》所指出的,PDCA(策划-实施-检查-处置)的方法适用于所有过程[2]。软件过程也是从策划开始。开发方应为标准要求和合同要求的所有活动制定计划[3]。GJB 438B给出了5种计划类的文档,包括:

(1) 软件开发计划(SDP),主要描述软件开发工作中一些基础性的内容,如,语言、工具、资源、问题的解决、变更管理、测试、验证、阶段、进度等,是项目主计划;

(2) 软件配置管理计划(SCMP),主要描述软件开发中如何实施配置管理;

(3) 软件质量保证计划(SQAP),主要描述软件开发中如何进行产品和过程的质量保证;

(4) 软件安装计划(SIP),主要描述如何在用户现场安装软件;

(5) 软件移交计划(STrP),主要描述如何向独立保障结构移交合同交付物。

1.2 需求类文档

这个类别下的文档有5种,尽管名称有所不同,但都属于需求规格说明的范畴[4],分别是:

(1) 运行方案说明(OCD),以用户的语言表达的项目的需求,是需方、开发方、保障机构和用户之间达成共识的桥梁;

(2) 软件研制任务书(SDTD),下达软件开发的任务;

(3) 系统/子系统规格说明(SSS),提出系统的需求及其检验方法,其"系统"适用于纯软件系统(硬件只是计算机),也适用于硬件-软件系统(硬件包括计算机和非计算机设备);

(4) 软件需求规格说明(SRS),提出计算机软件配置项(CSCI)的需求及其检验方法;

(5) 接口需求规格说明(IRS),提出与一个或多个系统、子系统、硬件配置项、CSCI及人工操作之间接口的需求。

1.3 设计类文档

设计类的文档有4种,分别是:

(1) 系统/子系统设计说明(SSDD),给出系统结构的设计,对应的需求是SSS;

(2) 软件设计说明(SDD),给出每个CSCI的设计,对应的需求是SRS;

(3) 接口设计说明(IDD),给出各个接口的设计,对应的需求是IRS;

(4) 数据库设计说明(DBDD),给出数据库的设计,以及如何存取数据或操纵数据的软件的设计。

1.4 软件测试文档

作为验证需求合格的行为,软件测试单独作为一类,包括:

(1) 软件测试计划(STP),主要描述执行合格性测试的计划;

(2) 软件测试说明(STD),给出合格性测试的测试用例/规程;

治疗后,观察组治疗总有效率100.0%,痊愈28例、显效3例、有效2例,对照组总有效率为84.8%(28/33),痊愈5例、显效13例、有效10例,观察组总有效率明显高于对照组,差异有统计学意义(P<0.05);未发现由于应用藏医霍尔麦疗法导致的不良反应。

(3) 软件测试报告(STR),陈述合格性测试的测试结果。

1.5 手册类文档

手册类的文档包括用户使用的操作手册和支持用的编程手册,包括:

(1) 软件用户手册(SUM),从用户的角度说明如何安装和使用软件;

(2) 软件输入/输出手册(SIOM),说明用户如何访问安装在计算机中心的批处理或交互式软件系统,是一种用于说明API的文档;

(3) 软件中心操作员手册(SCOM),说明用户如何安装和操作装在计算机中心的批处理或交互式软件系统,一般在计算机中心托管的软件中有用;

(4) 计算机操作手册(COM),说明用户如何使用一台新开发计算机;

(5) 计算机编程手册(CPM),说明程序员如何对新开发的计算机进行编程;

(6) 固件保障手册(FSM),说明程序员如何对固件设备进行编程。

1.6 清单类文档

有2种文档用于软件清单,包括:

(1) 软件产品规格说明(SPS),用于支持的可执行软件、源文件等信息;

(2) 软件版本说明(SVD),用于发布和跟踪的软件清单。

1.7 总结类文档

项目的总结分成3个报告编写:

(1) 软件研制总结报告(SDSR),总结项目开发的情况;

(2) 软件研制总结报告(SCMR),总结项目配置管理的情况;

(3) 软件质量保证报告(SQAR),总结项目软件质量保证的情况。

2 软件开发文档剪裁的要求

为适应不同项目的不同情况而进行剪裁是GJB 5000A-2008《软件研制能力成熟度模型》3级的一个根本要求。GJB 5000A模型采用成熟度等级来衡量一个软件研发企业或组织的能力,1级(ML1)为初始级,达到2级(ML2)要求的组织称为已管理级,3级(ML3)为已定义级,4级(ML4)为已定量管理级,5级(ML5)为优化级。成熟度等级之间的关系如图1所示[5]。

图1 GJB 5000A成熟度模型的5个等级

GJB 5000A对一个软件研发企业的软件研制能力的评价、自我评估和不断的过程改进大有帮助。在GJB 5000A的模型中,各个等级具有如下特点:

(1) 在ML1成熟度等级下,一般建立了基本的软件过程,但过程的实施严重依赖于团队或个人的素质。在项目开发过程中,定义了基本的生存周期,但通常仅作编程和简单的测试活动。项目的完成主要靠个人的能力和努力,项目经常超期,提供的软件功能和质量特性一般也是不可预测的;

(2) 在ML2等级下,企业需建立基本的软件过程能力,项目应具有一致的策划、监控能力,项目能够按照文档化的计划进行实施和管理,工作产品的状态在计划节点(如里程碑、阶段结束)的状态和完成是受控和可见的;

(3) 在ML3等级下,企业建立了标准过程集,具体项目的软件过程从组织的标准过程集中选择,为适应项目的不同情况而进行剪裁,同时过程的执行也比ML2更加严格;

(4) ML4、ML5等级,则是在ML3等级已定义的软件过程的基础上进行的更加细化的定量管理和进一步的优化。等级评定的起点是ML2。在向2级提升过程中,企业建立软件的过程管理文件,定义软件开发过程的基本要求,对生存周期各个阶段的工作产品提出要求,文档便是其中一种重要的工作产品。

在从2级向3级升级过程中,必须要提出生存周期各阶段编写的文档的要求。这也提出了需求,要求企业结合自身的和产品的特点,对开发过程中产生的软件开发文档给出剪裁的准则。

3 雷达系统软件开发文档的剪裁方法

在雷达系统中,软件与硬件的关系紧密,软件与硬件往往共同协作完成某个特定功能,而不会界限清楚地划分为纯软件和纯硬件的子系统。这就造成适用于纯计算机软件系统的软件文档可能不适用于雷达系统软件的开发。

在第1章中,将软件开发文档分为7类,所有类的软件文档都适用于雷达系统软件的开发。但是,并非每个类别中的全部文档都适用于雷达系统,如更适用于计算机软件系统的文档可能并不适用于雷达系统的软件。

3.1 剪裁原则

一般情况下,需要根据雷达系统研制的具体情况不同针对生存周期特点加以剪裁。不适用于雷达系统软件开发的文档主要可以分为两个方面:

(1) SIOM、COM、CPM。这3种文档一般适用于计算机,而不适用于目前我国的军用雷达系统软件;

(2) STrP、SIP。通常,我国军用雷达系统的保障工作也由研发单位负责,一般不需要移交到独立保障单位,涉及到的软件移交计划(STrP)一般可以剪裁;一般雷达系统的软件是随硬件一同交付用户的,开发人员在用户交付现场进行最后的调试服务,涉及到的软件安装计划(SIP)一般可以剪裁。

雷达系统软件开发项目中,还有另一种情况,即SRS、SDD一般需要编写多份,划分为多个CSCI的软件项目,往往需要编写多份SRS和SDD。

3.2 剪裁矩阵

表1~表7建立了以雷达系统软件开发中各类开发文档的剪裁矩阵,每个矩阵提供了每类文档下各个文档的代码、名称和该文档的剪裁准则。

表1 计划类文档剪裁矩阵

表2 需求类文档剪裁矩阵

表3 设计类文档剪裁矩阵

表4 软件测试文档剪裁矩阵

表5 手册类文档剪裁矩阵

表6 软件清单剪裁矩阵

表7 总结类文档剪裁矩阵

4 结束语

在雷达软件开发中,应遵循GJB438B-2009标准来编制文档。GJB438B-2009是军用软件开发的顶层标准之一,在2015年被评为“最具影响力通用国军标”[6]之一,提供了军用软件开发文档的全集,对军用软件的开发具有普适性。

根据本文提出的软件开发文档分类方法和每类文档的剪裁原则,利用本文建立的简洁的文档剪裁矩阵,并根据雷达系统软件的特点,可剪裁出适应项目特点的文档子集,可用于军用软件研制能力成熟度模型(三级)对软件开发文档进行剪裁的要求。

[1] 中国人民解放军总装备部. GJB 438B-2009军用软件开发文档通用要求[S]. 北京:总装备部军标出版发行部,2009.

[2] 中国人民解放军总装备部.GJB 9001B-2009质量管理体系要求[S]. 北京:总装备部军标出版发行部,2009.

[3] 中国人民解放军总装备部.GJB 2786A-2009军用软件开发通用要求[S]. 北京:总装备部军标出版发行部,2009.

[4] 中国人民共和国国家标准化指导性技术文件. GB/Z 31102-2014软件工程知识体系指南[S]. 北京:中国标准出版社,2014.10.

[5] 中国人民解放军总装备部. GJB 5000A-2008军用软件研制能力成熟度模型[S]. 北京:总装备部军标出版发行部,2008.

[6] 工业与信息化标准网. 最具影响力通用国军标“光荣榜”隆重出炉[EB/OL].(2014-03-04). www. cape. com.cn /wenzhang /zixun/2015/1102/ 1511535.html.

[7] 维基百科.美国军用标准MIL-STD-498[EB/OL].(2015-06-09). https://en.wikipedia.org/wiki/MIL-STD-498.

[8] Kristóf Kovács. A forgotten military standard that saves weeks of work[EB/OL].(2014-07-09). http://kkovacs.eu/free-project-management-template-mil-std-498.

A document clipping method in software development of radar system based on GJB 5000A

WANG Xiao-ping1,3, LU Jun3, SU Yi-bo2,3, XU Tian-yu3

(1.College of Economics and Management of NUAA, Nanjing 211106;

2.PLA University of Science and Technology, Nanjing 210072;

3.No. 724 Research Institute of CSIC, Nanjing 211153)

A lot of documents need to be tailored in the development of military softwares. In order to reach maturity level 2, we promote the software engineering. The preparation of documents is the work of an organization concerned. GJB 438B provides 28 DIDs. Based on the needs of GJB 5000A, and complied with the characteristics of the RADAR system, the 28 DIDs are divided by the different purposes into 7 categories. The last section of this paper establishes the tailoring matrixes and the tailoring criteria.

GJB 5000A; tailoring documentation; GJB 438B; RADAR software; software engineering

2016-01-05;

2016-01-10

王小平(1982-),男,工程师,博士研究生,研究方向:软件工程与软件项目管理;陆峻(1976-),女,高级工程师,研究方向:计算机软件工程化;苏艺博(1991-),女,硕士研究生,研究方向:软件工程;徐天宇(1989-),男,工程师,硕士,研究方向:软件工程与软件设计开发。

TP311.52

A

1009-0401(2016)04-0064-05

猜你喜欢

剪裁软件测试军用
软件测试方向人才培养“1+X”融合研究
大话军用卡车
威力无比的军用霰弹枪
基于OBE的软件测试课程教学改革探索
航天软件测试模型构建与应用
EXCEL和VBA实现软件测试记录管理
浑然一体有玄奥——写人作文之人事“剪裁”与“拼接”
归来
猜谜
吐鲁番杏花诗社活动剪裁