四川九洲電器集團(tuán)有限責(zé)任公司 龍 燕 羅 勇 楊 彬
裝備發(fā)展部為了能夠保證軍用軟件產(chǎn)品的研制質(zhì)量,并根據(jù)實(shí)際要求發(fā)布了GJB5000A-2008《軍用軟件研制能力成熟度模型》,再以這個(gè)模型來評價(jià)軟件研制單位是否具備相應(yīng)的軟件研制能力。其中,這個(gè)標(biāo)準(zhǔn)自發(fā)布以來便受到了人們的廣泛關(guān)注,而裝備發(fā)展部通過GJB5000A的實(shí)施來規(guī)范我國軍用軟件研制的過程,著力于增強(qiáng)軟件的質(zhì)量,切實(shí)保證我國軍用裝備的質(zhì)量。當(dāng)前通過結(jié)合GJB5000A,并根據(jù)自身軟件項(xiàng)目研制的實(shí)際情況,合理設(shè)計(jì)4種軟件的開發(fā)周期。
一般瀑布模型被應(yīng)用在通用的開發(fā)模型中,而這種瀑布模型又主要分為線性模型和生存周期模型。同時(shí),這些應(yīng)用軟件主要是以生存周期模型為基礎(chǔ)。這樣軟件模型在生存周期開展活動(dòng)的時(shí)候應(yīng)該嚴(yán)格按照分析、設(shè)計(jì)、編碼、測試、驗(yàn)收交付的順序開展,并需要對整個(gè)活動(dòng)開展的程序進(jìn)行明確的界定。通常開發(fā)模型能夠?qū)⒄麄€(gè)軟件開發(fā)過程合理的劃分為多個(gè)具有典型性的區(qū)別階段,并需要在每一個(gè)階段內(nèi)嚴(yán)格按照自上而下和相互銜接的順序來開展。
同時(shí),通過全方面評審和審查各個(gè)階段的工作開展情況,這樣便能夠在每一個(gè)階段的目標(biāo)完成之后順利進(jìn)入到下一個(gè)階段工作。目前,該模型主要適合應(yīng)用于新研發(fā)軟件的關(guān)鍵軟件及規(guī)模大于5000行的一般軟件。
GJB5000A主要是被應(yīng)用到軟件開發(fā)中,例如當(dāng)直升機(jī)的綜合顯示控制軟件在開發(fā)時(shí)主要涉及到直升機(jī)飛行控制軟件和操縱軟件。同時(shí),整個(gè)軟件的開發(fā)模型具體包括軟件需求分析、軟件設(shè)計(jì)、軟件實(shí)現(xiàn)、單元測試和系統(tǒng)集成、軟件驗(yàn)收幾個(gè)階段。同時(shí)還應(yīng)該構(gòu)建功能基線、分配基線、產(chǎn)品基線,并全面的滲透到項(xiàng)目管理的全過程。通用開發(fā)模型的具體情況如圖1所示。
圖1 通用開發(fā)模型
增量模型是一種復(fù)雜模型,主要利用瀑布模型來實(shí)現(xiàn)軟件的累積開發(fā)。在軟件開發(fā)和系統(tǒng)需求分析的過程中,大型軟件被劃分為若干個(gè)較小的產(chǎn)品。通常增量模型可以使大多數(shù)用戶在短時(shí)間內(nèi)完成一些功能性產(chǎn)品產(chǎn)生增量,這相當(dāng)于推出一個(gè)新版本。同時(shí),整個(gè)過程在不斷重復(fù)的時(shí)候才能夠產(chǎn)生出完美的產(chǎn)品,讓整個(gè)周期內(nèi)的項(xiàng)目管理工作更好的開展。
圖2 增量模型
增量模型在應(yīng)用的過程中就是整合廣大用戶的實(shí)際需求所提出的一種漸進(jìn)式的變更模式,并根據(jù)廣大用戶在需求的階段中來合理的確定一次性所交付的功能情況。這種軟件模型在應(yīng)用的過程中就是如某一個(gè)課題的軟件主要分為多個(gè)開發(fā)序列,且每一個(gè)序列在進(jìn)行的時(shí)候主要使用的是瀑布模型,讓發(fā)布的量得到切實(shí)增加。增量模型在應(yīng)用過程中的不同階段的基本要求基本上與瀑布模型相吻合,所以在進(jìn)行單元測試、軟件集成測試和系統(tǒng)集成測試的過程中可借助瀑布模型。同時(shí),一般軟件需求分析能夠一次性完成,并且能夠?qū)⒏鱾€(gè)增量的開發(fā)軟件需求真正合并起來,所以便應(yīng)該在進(jìn)行系統(tǒng)需求設(shè)計(jì)和分析的過程中統(tǒng)籌進(jìn)行軟件需求分析,再分別開展增量式設(shè)計(jì)、實(shí)現(xiàn)、測試、驗(yàn)收與發(fā)布。
原型演化模型這種開發(fā)模型就是通過在原型實(shí)施軟件的開發(fā)基礎(chǔ)上所提出的。這種開發(fā)模型主要選取的是一個(gè)原型,通過將其作為重要的基礎(chǔ)來開展更改工作,積極進(jìn)行迭代測試與評價(jià),這樣才能夠在進(jìn)行綜合測試的過程中全面開展測試和評價(jià)工作,讓廣大用戶的需求真正得到滿足,讓全周期內(nèi)強(qiáng)調(diào)的項(xiàng)目獲得較大的支持力度和管理力度。通常這個(gè)模型所選取的是軟件產(chǎn)品內(nèi)的飛控系統(tǒng)軟件、航電系統(tǒng)軟件、機(jī)電管理系統(tǒng)軟件和自動(dòng)測試設(shè)備頂層管理軟件。同時(shí),通過選擇一些型號較為相似的軟件產(chǎn)品作為重要的原型,再采取合理的措施來進(jìn)行更改,讓相關(guān)的資源能夠得到更好的利用,這樣才能夠更好的開發(fā)出更多的軟件。通常原型演化模型適合被應(yīng)用到改型的軟件項(xiàng)目內(nèi),而這個(gè)軟件模型在進(jìn)行軟件開發(fā)的過程中主要適合應(yīng)用到直升機(jī)的樣機(jī)軟件和某直型機(jī)的綜合顯示控制系統(tǒng)的軟件設(shè)計(jì)中。
快速簡化模型又被稱之為是通用的開發(fā)模型。一般這個(gè)模型在應(yīng)用的過程中需要調(diào)整8個(gè)階段,并需要簡化合并6個(gè)階段,并且整個(gè)過程中采取了全周期管理??焖俸喕P椭饕m合應(yīng)用于小于5000行的新研究中,而直某地面的操作臺軟件則是較為典型的一個(gè)軟件。
在軟件過程改進(jìn)的過程中一般可選取的模型和規(guī)則如下:
(1)改型軟件項(xiàng)目也被稱為型號研制的過程,則可以利用原型演化模型。
(2)當(dāng)廣大用戶在提出軟件項(xiàng)目時(shí)或者是在變更漸進(jìn)式的用戶需求的同時(shí),則應(yīng)該在廣大用戶的需求階段中明確要求一次性交付的功能,而這個(gè)功能又被稱之為是增量模型。
(3)在開展新的軟件項(xiàng)目時(shí),當(dāng)軟件項(xiàng)目是一種新研發(fā)的軟件時(shí),而這樣則可以選取通用開發(fā)模型或者是快速簡化模型。同時(shí),這兩種模型在應(yīng)用的過程中均能夠根據(jù)不同軟件的級別或者是軟件的大小來進(jìn)行選取。通常在選取過程中的標(biāo)準(zhǔn)如表1所示。
表1 軟件過程改進(jìn)模型選擇準(zhǔn)則
通過全面分析測量與分析過程,其項(xiàng)目負(fù)責(zé)人便緊密結(jié)合《過程改進(jìn)行動(dòng)計(jì)劃》內(nèi)容的組織測量目標(biāo),明確項(xiàng)目測量的目標(biāo)。其中,較為典型的項(xiàng)目在測量時(shí)便需要明確項(xiàng)目進(jìn)度存在的偏差,以及該項(xiàng)目在實(shí)施過程中所需要花費(fèi)的成本,綜合分析項(xiàng)目開展存在的缺陷率。通常軟件的負(fù)責(zé)人主要負(fù)責(zé)的是制定項(xiàng)目測量的分析計(jì)劃,而測量目標(biāo)和測量項(xiàng)則是主要涉及的內(nèi)容。同時(shí),各個(gè)測量項(xiàng)的數(shù)據(jù)在采集的時(shí)候需要準(zhǔn)確把握采集時(shí)機(jī),采用合理的采集方式和存儲方式,選取科學(xué)的測量數(shù)據(jù)分析方法。此外,通常選取的測量結(jié)果報(bào)告時(shí)機(jī)一般分為階段結(jié)束、里程碑評審和項(xiàng)目結(jié)項(xiàng)。當(dāng)項(xiàng)目在完成的過程中應(yīng)該為GJB 5000A的推進(jìn)營造良好的分為,保證GJB 5000A這種先進(jìn)的理念能夠更好的推廣。
通過在GJB 5000A軟件過程改進(jìn)中合理選取改進(jìn)模型,這樣則能夠有效解決軟件質(zhì)量管理職責(zé)不清楚、管理過程不透明和內(nèi)部測試不充分等問題,以此來規(guī)范軟件管理過程,有效提升軟件管理水平和軟件質(zhì)量。這樣根據(jù)軟件過程改進(jìn)的經(jīng)驗(yàn)和提出改進(jìn)的模型,便能夠?yàn)槠渌愃破髽I(yè)開發(fā)軍用軟件和強(qiáng)化過程質(zhì)量管理提供重要的參考。