王小平,陸 峻,蘇藝博2,,徐天宇
(1.南京航空航天大學(xué) 經(jīng)濟(jì)與管理學(xué)院,南京211106;2.中國(guó)人民解放軍理工大學(xué),南京210072;3.中國(guó)船舶重工集團(tuán)公司第七二四研究所,南京211153)
?
基于GJB 5000A的雷達(dá)系統(tǒng)軟件開(kāi)發(fā)文檔剪裁方法的研究
王小平1,3,陸 峻3,蘇藝博2,3,徐天宇3
(1.南京航空航天大學(xué) 經(jīng)濟(jì)與管理學(xué)院,南京211106;2.中國(guó)人民解放軍理工大學(xué),南京210072;3.中國(guó)船舶重工集團(tuán)公司第七二四研究所,南京211153)
在軍用軟件開(kāi)發(fā)中,需要對(duì)大量的文檔進(jìn)行剪裁。為研究滿足GJB 5000A二級(jí)要求,并符合雷達(dá)系統(tǒng)軟件特點(diǎn)的文檔剪裁方法,本文以分類分析的方法將軟件開(kāi)發(fā)文檔按照用途分成計(jì)劃、需求、設(shè)計(jì)、軟件測(cè)試、手冊(cè)、清單和總結(jié)等7類分別加以分析,提出各類文檔的剪裁準(zhǔn)則,建立了各類文檔的裁剪矩陣。
GJB 5000A;文檔剪裁;GJB 438B;雷達(dá)軟件;軟件工程化
軟件開(kāi)發(fā)過(guò)程中的文檔既是軟件設(shè)計(jì)和開(kāi)發(fā)的重要記錄又是軟件過(guò)程的記錄,是軟件的重要資料。編寫文檔既是軟件開(kāi)發(fā)必不可少的過(guò)程,也是軟件工程化管理的具體體現(xiàn)。
在推行采用GJB 5000A模型的軟件工程化工作中發(fā)現(xiàn),大量的文檔需要編寫,往往被軟件開(kāi)發(fā)者認(rèn)為是一件艱難、枯燥的工作,不認(rèn)可其為軟件開(kāi)發(fā)的一部分,而被當(dāng)成負(fù)擔(dān)。要讓文檔對(duì)軟件開(kāi)發(fā)有所裨益,而不是成為軟件開(kāi)發(fā)的累贅或障礙,必須要對(duì)軟件開(kāi)發(fā)中應(yīng)編制的文檔進(jìn)行頂層設(shè)計(jì)。本文嘗試結(jié)合雷達(dá)系統(tǒng)的特點(diǎn),將雷達(dá)系統(tǒng)軟件開(kāi)發(fā)過(guò)程中要產(chǎn)生的文檔分成了7類分類,對(duì)不同類別的文檔加以分析。通過(guò)分析,得出適用于雷達(dá)系統(tǒng)軟件開(kāi)發(fā)的文檔剪裁方法,也為其他領(lǐng)域的軟件開(kāi)發(fā)文檔剪裁提供了參考。
GJB 438B-2009規(guī)定了軍用軟件開(kāi)發(fā)文檔的通用要求。在GJB 438B標(biāo)準(zhǔn)中,規(guī)定了軟件開(kāi)發(fā)中可能產(chǎn)生的28種文檔。這些文檔以類似瀑布模型的順序列出,每種文檔都是對(duì)軟件或軟件開(kāi)發(fā)過(guò)程某一方面的描述[1]。
雷達(dá)系統(tǒng)是一種重要的軍用設(shè)備,在雷達(dá)系統(tǒng)軟件的開(kāi)發(fā)過(guò)程中產(chǎn)生的文檔應(yīng)按照GJB 438B的要求編寫。在推行采用GJB 5000A模型的軟件工程化工作中,為便于對(duì)文檔規(guī)定的理解和對(duì)文檔進(jìn)行剪裁,基于GJB 438B-2009標(biāo)準(zhǔn)的要求,將軟件開(kāi)發(fā)文檔分為7類。
1.1 計(jì)劃類文檔
正如GJB9001B《質(zhì)量管理體系要求》所指出的,PDCA(策劃-實(shí)施-檢查-處置)的方法適用于所有過(guò)程[2]。軟件過(guò)程也是從策劃開(kāi)始。開(kāi)發(fā)方應(yīng)為標(biāo)準(zhǔn)要求和合同要求的所有活動(dòng)制定計(jì)劃[3]。GJB 438B給出了5種計(jì)劃類的文檔,包括:
(1) 軟件開(kāi)發(fā)計(jì)劃(SDP),主要描述軟件開(kāi)發(fā)工作中一些基礎(chǔ)性的內(nèi)容,如,語(yǔ)言、工具、資源、問(wèn)題的解決、變更管理、測(cè)試、驗(yàn)證、階段、進(jìn)度等,是項(xiàng)目主計(jì)劃;
(2) 軟件配置管理計(jì)劃(SCMP),主要描述軟件開(kāi)發(fā)中如何實(shí)施配置管理;
(3) 軟件質(zhì)量保證計(jì)劃(SQAP),主要描述軟件開(kāi)發(fā)中如何進(jìn)行產(chǎn)品和過(guò)程的質(zhì)量保證;
(4) 軟件安裝計(jì)劃(SIP),主要描述如何在用戶現(xiàn)場(chǎng)安裝軟件;
(5) 軟件移交計(jì)劃(STrP),主要描述如何向獨(dú)立保障結(jié)構(gòu)移交合同交付物。
1.2 需求類文檔
這個(gè)類別下的文檔有5種,盡管名稱有所不同,但都屬于需求規(guī)格說(shuō)明的范疇[4],分別是:
(1) 運(yùn)行方案說(shuō)明(OCD),以用戶的語(yǔ)言表達(dá)的項(xiàng)目的需求,是需方、開(kāi)發(fā)方、保障機(jī)構(gòu)和用戶之間達(dá)成共識(shí)的橋梁;
(2) 軟件研制任務(wù)書(SDTD),下達(dá)軟件開(kāi)發(fā)的任務(wù);
(3) 系統(tǒng)/子系統(tǒng)規(guī)格說(shuō)明(SSS),提出系統(tǒng)的需求及其檢驗(yàn)方法,其"系統(tǒng)"適用于純軟件系統(tǒng)(硬件只是計(jì)算機(jī)),也適用于硬件-軟件系統(tǒng)(硬件包括計(jì)算機(jī)和非計(jì)算機(jī)設(shè)備);
(4) 軟件需求規(guī)格說(shuō)明(SRS),提出計(jì)算機(jī)軟件配置項(xiàng)(CSCI)的需求及其檢驗(yàn)方法;
(5) 接口需求規(guī)格說(shuō)明(IRS),提出與一個(gè)或多個(gè)系統(tǒng)、子系統(tǒng)、硬件配置項(xiàng)、CSCI及人工操作之間接口的需求。
1.3 設(shè)計(jì)類文檔
設(shè)計(jì)類的文檔有4種,分別是:
(1) 系統(tǒng)/子系統(tǒng)設(shè)計(jì)說(shuō)明(SSDD),給出系統(tǒng)結(jié)構(gòu)的設(shè)計(jì),對(duì)應(yīng)的需求是SSS;
(2) 軟件設(shè)計(jì)說(shuō)明(SDD),給出每個(gè)CSCI的設(shè)計(jì),對(duì)應(yīng)的需求是SRS;
(3) 接口設(shè)計(jì)說(shuō)明(IDD),給出各個(gè)接口的設(shè)計(jì),對(duì)應(yīng)的需求是IRS;
(4) 數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明(DBDD),給出數(shù)據(jù)庫(kù)的設(shè)計(jì),以及如何存取數(shù)據(jù)或操縱數(shù)據(jù)的軟件的設(shè)計(jì)。
1.4 軟件測(cè)試文檔
作為驗(yàn)證需求合格的行為,軟件測(cè)試單獨(dú)作為一類,包括:
(1) 軟件測(cè)試計(jì)劃(STP),主要描述執(zhí)行合格性測(cè)試的計(jì)劃;
(2) 軟件測(cè)試說(shuō)明(STD),給出合格性測(cè)試的測(cè)試用例/規(guī)程;
治療后,觀察組治療總有效率100.0%,痊愈28例、顯效3例、有效2例,對(duì)照組總有效率為84.8%(28/33),痊愈5例、顯效13例、有效10例,觀察組總有效率明顯高于對(duì)照組,差異有統(tǒng)計(jì)學(xué)意義(P<0.05);未發(fā)現(xiàn)由于應(yīng)用藏醫(yī)霍爾麥療法導(dǎo)致的不良反應(yīng)。
(3) 軟件測(cè)試報(bào)告(STR),陳述合格性測(cè)試的測(cè)試結(jié)果。
1.5 手冊(cè)類文檔
手冊(cè)類的文檔包括用戶使用的操作手冊(cè)和支持用的編程手冊(cè),包括:
(1) 軟件用戶手冊(cè)(SUM),從用戶的角度說(shuō)明如何安裝和使用軟件;
(2) 軟件輸入/輸出手冊(cè)(SIOM),說(shuō)明用戶如何訪問(wèn)安裝在計(jì)算機(jī)中心的批處理或交互式軟件系統(tǒng),是一種用于說(shuō)明API的文檔;
(3) 軟件中心操作員手冊(cè)(SCOM),說(shuō)明用戶如何安裝和操作裝在計(jì)算機(jī)中心的批處理或交互式軟件系統(tǒng),一般在計(jì)算機(jī)中心托管的軟件中有用;
(4) 計(jì)算機(jī)操作手冊(cè)(COM),說(shuō)明用戶如何使用一臺(tái)新開(kāi)發(fā)計(jì)算機(jī);
(5) 計(jì)算機(jī)編程手冊(cè)(CPM),說(shuō)明程序員如何對(duì)新開(kāi)發(fā)的計(jì)算機(jī)進(jìn)行編程;
(6) 固件保障手冊(cè)(FSM),說(shuō)明程序員如何對(duì)固件設(shè)備進(jìn)行編程。
1.6 清單類文檔
有2種文檔用于軟件清單,包括:
(1) 軟件產(chǎn)品規(guī)格說(shuō)明(SPS),用于支持的可執(zhí)行軟件、源文件等信息;
(2) 軟件版本說(shuō)明(SVD),用于發(fā)布和跟蹤的軟件清單。
1.7 總結(jié)類文檔
項(xiàng)目的總結(jié)分成3個(gè)報(bào)告編寫:
(1) 軟件研制總結(jié)報(bào)告(SDSR),總結(jié)項(xiàng)目開(kāi)發(fā)的情況;
(2) 軟件研制總結(jié)報(bào)告(SCMR),總結(jié)項(xiàng)目配置管理的情況;
(3) 軟件質(zhì)量保證報(bào)告(SQAR),總結(jié)項(xiàng)目軟件質(zhì)量保證的情況。
為適應(yīng)不同項(xiàng)目的不同情況而進(jìn)行剪裁是GJB 5000A-2008《軟件研制能力成熟度模型》3級(jí)的一個(gè)根本要求。GJB 5000A模型采用成熟度等級(jí)來(lái)衡量一個(gè)軟件研發(fā)企業(yè)或組織的能力,1級(jí)(ML1)為初始級(jí),達(dá)到2級(jí)(ML2)要求的組織稱為已管理級(jí),3級(jí)(ML3)為已定義級(jí),4級(jí)(ML4)為已定量管理級(jí),5級(jí)(ML5)為優(yōu)化級(jí)。成熟度等級(jí)之間的關(guān)系如圖1所示[5]。
圖1 GJB 5000A成熟度模型的5個(gè)等級(jí)
GJB 5000A對(duì)一個(gè)軟件研發(fā)企業(yè)的軟件研制能力的評(píng)價(jià)、自我評(píng)估和不斷的過(guò)程改進(jìn)大有幫助。在GJB 5000A的模型中,各個(gè)等級(jí)具有如下特點(diǎn):
(1) 在ML1成熟度等級(jí)下,一般建立了基本的軟件過(guò)程,但過(guò)程的實(shí)施嚴(yán)重依賴于團(tuán)隊(duì)或個(gè)人的素質(zhì)。在項(xiàng)目開(kāi)發(fā)過(guò)程中,定義了基本的生存周期,但通常僅作編程和簡(jiǎn)單的測(cè)試活動(dòng)。項(xiàng)目的完成主要靠個(gè)人的能力和努力,項(xiàng)目經(jīng)常超期,提供的軟件功能和質(zhì)量特性一般也是不可預(yù)測(cè)的;
(2) 在ML2等級(jí)下,企業(yè)需建立基本的軟件過(guò)程能力,項(xiàng)目應(yīng)具有一致的策劃、監(jiān)控能力,項(xiàng)目能夠按照文檔化的計(jì)劃進(jìn)行實(shí)施和管理,工作產(chǎn)品的狀態(tài)在計(jì)劃節(jié)點(diǎn)(如里程碑、階段結(jié)束)的狀態(tài)和完成是受控和可見(jiàn)的;
(3) 在ML3等級(jí)下,企業(yè)建立了標(biāo)準(zhǔn)過(guò)程集,具體項(xiàng)目的軟件過(guò)程從組織的標(biāo)準(zhǔn)過(guò)程集中選擇,為適應(yīng)項(xiàng)目的不同情況而進(jìn)行剪裁,同時(shí)過(guò)程的執(zhí)行也比ML2更加嚴(yán)格;
(4) ML4、ML5等級(jí),則是在ML3等級(jí)已定義的軟件過(guò)程的基礎(chǔ)上進(jìn)行的更加細(xì)化的定量管理和進(jìn)一步的優(yōu)化。等級(jí)評(píng)定的起點(diǎn)是ML2。在向2級(jí)提升過(guò)程中,企業(yè)建立軟件的過(guò)程管理文件,定義軟件開(kāi)發(fā)過(guò)程的基本要求,對(duì)生存周期各個(gè)階段的工作產(chǎn)品提出要求,文檔便是其中一種重要的工作產(chǎn)品。
在從2級(jí)向3級(jí)升級(jí)過(guò)程中,必須要提出生存周期各階段編寫的文檔的要求。這也提出了需求,要求企業(yè)結(jié)合自身的和產(chǎn)品的特點(diǎn),對(duì)開(kāi)發(fā)過(guò)程中產(chǎn)生的軟件開(kāi)發(fā)文檔給出剪裁的準(zhǔn)則。
在雷達(dá)系統(tǒng)中,軟件與硬件的關(guān)系緊密,軟件與硬件往往共同協(xié)作完成某個(gè)特定功能,而不會(huì)界限清楚地劃分為純軟件和純硬件的子系統(tǒng)。這就造成適用于純計(jì)算機(jī)軟件系統(tǒng)的軟件文檔可能不適用于雷達(dá)系統(tǒng)軟件的開(kāi)發(fā)。
在第1章中,將軟件開(kāi)發(fā)文檔分為7類,所有類的軟件文檔都適用于雷達(dá)系統(tǒng)軟件的開(kāi)發(fā)。但是,并非每個(gè)類別中的全部文檔都適用于雷達(dá)系統(tǒng),如更適用于計(jì)算機(jī)軟件系統(tǒng)的文檔可能并不適用于雷達(dá)系統(tǒng)的軟件。
3.1 剪裁原則
一般情況下,需要根據(jù)雷達(dá)系統(tǒng)研制的具體情況不同針對(duì)生存周期特點(diǎn)加以剪裁。不適用于雷達(dá)系統(tǒng)軟件開(kāi)發(fā)的文檔主要可以分為兩個(gè)方面:
(1) SIOM、COM、CPM。這3種文檔一般適用于計(jì)算機(jī),而不適用于目前我國(guó)的軍用雷達(dá)系統(tǒng)軟件;
(2) STrP、SIP。通常,我國(guó)軍用雷達(dá)系統(tǒng)的保障工作也由研發(fā)單位負(fù)責(zé),一般不需要移交到獨(dú)立保障單位,涉及到的軟件移交計(jì)劃(STrP)一般可以剪裁;一般雷達(dá)系統(tǒng)的軟件是隨硬件一同交付用戶的,開(kāi)發(fā)人員在用戶交付現(xiàn)場(chǎng)進(jìn)行最后的調(diào)試服務(wù),涉及到的軟件安裝計(jì)劃(SIP)一般可以剪裁。
雷達(dá)系統(tǒng)軟件開(kāi)發(fā)項(xiàng)目中,還有另一種情況,即SRS、SDD一般需要編寫多份,劃分為多個(gè)CSCI的軟件項(xiàng)目,往往需要編寫多份SRS和SDD。
3.2 剪裁矩陣
表1~表7建立了以雷達(dá)系統(tǒng)軟件開(kāi)發(fā)中各類開(kāi)發(fā)文檔的剪裁矩陣,每個(gè)矩陣提供了每類文檔下各個(gè)文檔的代碼、名稱和該文檔的剪裁準(zhǔn)則。
表1 計(jì)劃類文檔剪裁矩陣
表2 需求類文檔剪裁矩陣
表3 設(shè)計(jì)類文檔剪裁矩陣
表4 軟件測(cè)試文檔剪裁矩陣
表5 手冊(cè)類文檔剪裁矩陣
表6 軟件清單剪裁矩陣
表7 總結(jié)類文檔剪裁矩陣
在雷達(dá)軟件開(kāi)發(fā)中,應(yīng)遵循GJB438B-2009標(biāo)準(zhǔn)來(lái)編制文檔。GJB438B-2009是軍用軟件開(kāi)發(fā)的頂層標(biāo)準(zhǔn)之一,在2015年被評(píng)為“最具影響力通用國(guó)軍標(biāo)”[6]之一,提供了軍用軟件開(kāi)發(fā)文檔的全集,對(duì)軍用軟件的開(kāi)發(fā)具有普適性。
根據(jù)本文提出的軟件開(kāi)發(fā)文檔分類方法和每類文檔的剪裁原則,利用本文建立的簡(jiǎn)潔的文檔剪裁矩陣,并根據(jù)雷達(dá)系統(tǒng)軟件的特點(diǎn),可剪裁出適應(yīng)項(xiàng)目特點(diǎn)的文檔子集,可用于軍用軟件研制能力成熟度模型(三級(jí))對(duì)軟件開(kāi)發(fā)文檔進(jìn)行剪裁的要求。
[1] 中國(guó)人民解放軍總裝備部. GJB 438B-2009軍用軟件開(kāi)發(fā)文檔通用要求[S]. 北京:總裝備部軍標(biāo)出版發(fā)行部,2009.
[2] 中國(guó)人民解放軍總裝備部.GJB 9001B-2009質(zhì)量管理體系要求[S]. 北京:總裝備部軍標(biāo)出版發(fā)行部,2009.
[3] 中國(guó)人民解放軍總裝備部.GJB 2786A-2009軍用軟件開(kāi)發(fā)通用要求[S]. 北京:總裝備部軍標(biāo)出版發(fā)行部,2009.
[4] 中國(guó)人民共和國(guó)國(guó)家標(biāo)準(zhǔn)化指導(dǎo)性技術(shù)文件. GB/Z 31102-2014軟件工程知識(shí)體系指南[S]. 北京:中國(guó)標(biāo)準(zhǔn)出版社,2014.10.
[5] 中國(guó)人民解放軍總裝備部. GJB 5000A-2008軍用軟件研制能力成熟度模型[S]. 北京:總裝備部軍標(biāo)出版發(fā)行部,2008.
[6] 工業(yè)與信息化標(biāo)準(zhǔn)網(wǎng). 最具影響力通用國(guó)軍標(biāo)“光榮榜”隆重出爐[EB/OL].(2014-03-04). www. cape. com.cn /wenzhang /zixun/2015/1102/ 1511535.html.
[7] 維基百科.美國(guó)軍用標(biāo)準(zhǔn)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-),男,工程師,博士研究生,研究方向:軟件工程與軟件項(xiàng)目管理;陸峻(1976-),女,高級(jí)工程師,研究方向:計(jì)算機(jī)軟件工程化;蘇藝博(1991-),女,碩士研究生,研究方向:軟件工程;徐天宇(1989-),男,工程師,碩士,研究方向:軟件工程與軟件設(shè)計(jì)開(kāi)發(fā)。
TP311.52
A
1009-0401(2016)04-0064-05