◎海裝天津局 彭瑾 李木易
隨著武器裝備信息化程度的不斷提高,軟件的“核心地位”和“神經(jīng)中樞”作用也日益突出。軟件質(zhì)量已成為武器裝備形成戰(zhàn)斗力的關(guān)鍵所在。
裝備軟件的質(zhì)量管理是一個(gè)系統(tǒng)工程,需要科學(xué)策劃、認(rèn)真實(shí)施、持續(xù)改進(jìn)。只有大力加強(qiáng)軟件研制過(guò)程中的質(zhì)量控制管理,才能提高軟件的研制質(zhì)量,從而提高武器裝備的整體作戰(zhàn)效能。
在過(guò)去的十幾年中,裝備軟件的承制方對(duì)軟件的開(kāi)發(fā)、管理進(jìn)行了有效地探索,并取得了初步成果,但裝備軟件的開(kāi)發(fā)現(xiàn)狀并不樂(lè)觀,主要表現(xiàn)在:一是有的軟件開(kāi)發(fā)項(xiàng)目缺乏有效的組織和手段,仍處在“自編、自導(dǎo)、自演”的手工階段;二是在實(shí)際開(kāi)發(fā)過(guò)程中,由于型號(hào)研制、生產(chǎn)任務(wù)繁重等因素,在質(zhì)量與進(jìn)度發(fā)生沖突時(shí),往往疏于按質(zhì)量管理體系要求開(kāi)展軟件質(zhì)量管理工作,不重視過(guò)程控制;三是裝備軟件的測(cè)試,特別是第三方測(cè)試沒(méi)有引起足夠的重視。因此,有必要認(rèn)清當(dāng)前裝備軟件質(zhì)量管理中存在的主要問(wèn)題,并積極研究對(duì)策,以促使我軍戰(zhàn)斗力得到不斷提升。
現(xiàn)階段,裝備軟件只是作為硬件產(chǎn)品的一個(gè)附件來(lái)對(duì)待,還未作為單獨(dú)產(chǎn)品列入武器系統(tǒng)計(jì)劃和技術(shù)配套表,因此將導(dǎo)致以下問(wèn)題:
一是在簽訂武器系統(tǒng)研制合同時(shí),軟件作為武器系統(tǒng)的配套產(chǎn)品統(tǒng)一簽訂合同,費(fèi)用與進(jìn)度往往納入系統(tǒng)或裝備的統(tǒng)一安排。而費(fèi)用并未考慮軟件的特殊性,進(jìn)度安排也未考慮軟件開(kāi)發(fā)周期的特殊性。
二是針對(duì)嵌入式軟件,更存在一個(gè)誤區(qū),認(rèn)為嵌入式軟件最終是嵌入到目標(biāo)計(jì)算機(jī)中,因此將嵌入式軟件的開(kāi)發(fā)過(guò)程完全與硬件混為一談而未考慮其特殊性。通常表現(xiàn)在軟件沒(méi)有單獨(dú)的研制任務(wù)書(shū),是按硬件的研制過(guò)程開(kāi)發(fā);軟件沒(méi)有單獨(dú)的測(cè)試而是與硬件一起聯(lián)試;軟件沒(méi)有單獨(dú)的評(píng)審,有的甚至連文檔也是與硬件合在一起編寫,違背了按軟件工程化方法的要求開(kāi)發(fā)和管理軟件。
三是武器系統(tǒng)的可靠性指標(biāo)百分之百分配給了硬件,軟件沒(méi)有單獨(dú)的可靠性指標(biāo),但從統(tǒng)計(jì)資料看,實(shí)際上軟件可靠性遠(yuǎn)遠(yuǎn)低于硬件可靠性。
目前,裝備軟件的開(kāi)發(fā)主要集中在軍隊(duì)院校、科研院所和相關(guān)部門。參與軟件開(kāi)發(fā)的單位較多,但大多數(shù)單位內(nèi)部沒(méi)有建立較為完善的軟件質(zhì)量保證體系,即使建立了軟件質(zhì)量體系的單位, 其體系文件也有待通過(guò)實(shí)踐進(jìn)一步補(bǔ)充完善。由于質(zhì)量體系不完善和承制方普遍管理水平不高,加之研發(fā)資金、人員的不足,導(dǎo)致軟件開(kāi)發(fā)過(guò)程缺乏行之有效的管理和監(jiān)督,軟件的質(zhì)量保證工作基本上是由軟件開(kāi)發(fā)者自行完成的。實(shí)踐證明,采用這種方法開(kāi)發(fā)裝備軟件很難保證產(chǎn)品質(zhì)量。
軟件需求是度量軟件質(zhì)量的基礎(chǔ),不符合需求的軟件就不符合質(zhì)量要求。美軍的一項(xiàng)調(diào)查表明,裝備軟件70%的錯(cuò)誤出現(xiàn)在需求分析階段。在當(dāng)前的型號(hào)研制中,由于裝備軟件需求定義階段缺少軍方的有效參與,使得軟件開(kāi)發(fā)人員無(wú)法全面、準(zhǔn)確地理解和定義裝備的作戰(zhàn)使用需求,導(dǎo)致最終的產(chǎn)品不能完全符合部隊(duì)的實(shí)際需求;由于部隊(duì)對(duì)裝備軟件隱含的需求重視不夠,導(dǎo)致軟件開(kāi)發(fā)人員在后續(xù)工作中修改返工頻繁,不但影響了軟件研制進(jìn)度,而且也將一些質(zhì)量問(wèn)題和缺陷帶進(jìn)了后面階段的工作中,軟件質(zhì)量難以保證。
裝備軟件不僅僅指程序,還包括一整套符合國(guó)家軍用標(biāo)準(zhǔn)要求的文檔資料。質(zhì)量管理人員可以使用它們作為依據(jù)管理和評(píng)價(jià)軟件研制的情況。但在實(shí)際工作中,存在軟件設(shè)計(jì)文檔的編制不規(guī)范、文檔的編制水平和質(zhì)量參差不齊等諸多問(wèn)題,特別是大多數(shù)單位的文檔是在軟件完成后補(bǔ)寫的,失去了以設(shè)計(jì)文檔指導(dǎo)軟件實(shí)現(xiàn)的作用。
針對(duì)目前裝備軟件在質(zhì)量管理上存在的若干問(wèn)題,軍方及承制方在結(jié)合型號(hào)研制過(guò)程中不斷摸索規(guī)律,提出了一系列解決問(wèn)題的方法和思路,并制定了相關(guān)規(guī)范和原則,為裝備軟件質(zhì)量的健康發(fā)展提供了堅(jiān)實(shí)基礎(chǔ)。
國(guó)防科工局在質(zhì)量發(fā)展綱要中要求:“加強(qiáng)軟件質(zhì)量管理,要將軟件作為單獨(dú)產(chǎn)品,納入型號(hào)產(chǎn)品配套表,與硬件產(chǎn)品一樣實(shí)施管理?!币虼?,要從質(zhì)量管理觀念上提高對(duì)裝備軟件的認(rèn)識(shí),不能把武器裝備軟件誤認(rèn)為是單純的計(jì)算機(jī)軟件技術(shù)。要把武器裝備軟件作為關(guān)鍵件、重要件、單獨(dú)產(chǎn)品與硬件產(chǎn)品一樣實(shí)施質(zhì)量管理,才能有效地對(duì)裝備軟件質(zhì)量進(jìn)行全面的考核、評(píng)定、驗(yàn)收,使對(duì)裝備軟件的質(zhì)量管理達(dá)到空前的深度和廣度。
為了全面提高裝備軟件質(zhì)量,承制方必須按照國(guó)家軍用標(biāo)準(zhǔn)要求建立軟件質(zhì)量保證體系。這樣,軟件開(kāi)發(fā)才能實(shí)現(xiàn)從個(gè)體開(kāi)發(fā)階段向軟件工程化階段的根本性跨越,從而為提高軟件質(zhì)量創(chuàng)造必要的前提條件。建立裝備軟件質(zhì)量保證體系,需要正確認(rèn)識(shí)四個(gè)方面的問(wèn)題:
一是領(lǐng)導(dǎo)重視是關(guān)鍵。承制方的最高管理者首先要清楚地認(rèn)識(shí)到建立軟件質(zhì)量保證體系是武器裝備建設(shè)和發(fā)展的需要,同時(shí)也是新形勢(shì)下參與市場(chǎng)競(jìng)爭(zhēng)的需要。只有領(lǐng)導(dǎo)重視了,下級(jí)負(fù)責(zé)人和第一線的操作人員才能順利解決一些實(shí)際問(wèn)題。
二是組織監(jiān)督是保證。軟件開(kāi)發(fā)單位應(yīng)建立能夠監(jiān)督軟件質(zhì)量保證體系的機(jī)制,從組織上為質(zhì)量保證體系建設(shè)提供可靠保證。這種內(nèi)部質(zhì)量體系的監(jiān)督將有力地推動(dòng)質(zhì)量管理和質(zhì)量保證活動(dòng)的順利開(kāi)展。軍方應(yīng)加強(qiáng)對(duì)軟件質(zhì)量保證體系的審核,促使承制方不斷完善軟件質(zhì)量保證體系,持續(xù)質(zhì)量改進(jìn),不斷提高軟件質(zhì)量。
三是全員參與是基礎(chǔ)。軟件質(zhì)量與設(shè)計(jì)人員和管理人員密切相關(guān),沒(méi)有全員積極、主動(dòng)的參與,軟件質(zhì)量保證便無(wú)從談起。
四是經(jīng)費(fèi)投入是保障。質(zhì)量保證體系的建設(shè)需要人力、物力和財(cái)力的巨大投入。從全面和長(zhǎng)遠(yuǎn)來(lái)看,這些投入是用在增強(qiáng)企業(yè)素質(zhì)和自身實(shí)力上的。
在需求定義時(shí),要形成真正反映軍方需要并切合實(shí)際的需求不是一件簡(jiǎn)單的事。因此在這個(gè)階段需要做好以下工作:
一是要加強(qiáng)軍方在需求定義階段的主導(dǎo)作用。需求定義工作主要由開(kāi)發(fā)人員承擔(dān),但必須強(qiáng)調(diào)軍方的有效參與,發(fā)揮軍方在需求定義中的主導(dǎo)作用,這是軍方從總體上把握軟件質(zhì)量的根本措施。軍方可以在適當(dāng)工具和環(huán)境的輔助下,運(yùn)用圖表及某種限定性的語(yǔ)言等熟悉的表達(dá)方式參與定義系統(tǒng)的相關(guān)工作,從而最大限度地將自己的需求和想法反映給軟件設(shè)計(jì)者。這對(duì)于軟件需求及其正確性、一致性和完整性大有幫助。
二是要給予需求定義階段充分的時(shí)間。由于大部分軟件開(kāi)發(fā)人員對(duì)軍事應(yīng)用領(lǐng)域的知識(shí)不了解,無(wú)法很快理解軍方所提需求的真正含義,需要充分的時(shí)間進(jìn)行學(xué)習(xí)和消化。
三是要加強(qiáng)需求定義的階段評(píng)審。需求分析階段所犯的錯(cuò)誤是一些比較大的、整體性的錯(cuò)誤。其修改涉及面廣,糾正錯(cuò)誤的代價(jià)比較大,因此必須進(jìn)行嚴(yán)格評(píng)審。需求分析評(píng)審的重點(diǎn)是根據(jù)總體任務(wù)書(shū)的要求,對(duì)軟件需求說(shuō)明進(jìn)行評(píng)審,包括功能、性能、接口、數(shù)據(jù)、環(huán)境需求等。主要審查需求分析的完整性、正確性和一致性,審查需求的每一項(xiàng)條款是否正確,軟件功能是否覆蓋了系統(tǒng)的要求,條款之間是否相互沖突,以及工程應(yīng)用中的可行性、可維護(hù)性、經(jīng)濟(jì)性等問(wèn)題。
四是實(shí)現(xiàn)系統(tǒng)分析員與程序員的“雙崗”分離。為提高復(fù)雜軟件系統(tǒng)的質(zhì)量和可靠性,軟件開(kāi)發(fā)小組中系統(tǒng)分析員與程序員應(yīng)相互獨(dú)立。軟件系統(tǒng)分析員不但要熟練地掌握計(jì)算機(jī)硬、軟件專業(yè)知識(shí),同時(shí)還要對(duì)軍事應(yīng)用領(lǐng)域的知識(shí)有充分的了解,而普通的程序員是達(dá)不到這一要求的。為此,當(dāng)前承制方必須加緊制定措施,培養(yǎng)具有較高專業(yè)水平的系統(tǒng)分析員隊(duì)伍,從根本上解決軟件的“雙崗”分離問(wèn)題。
軟件文檔管理是一項(xiàng)十分艱巨而又瑣碎的工作,應(yīng)按照國(guó)家軍用標(biāo)準(zhǔn)《軟件文檔管理指南》、《武器系統(tǒng)軟件開(kāi)發(fā)文檔》和《軍用計(jì)算機(jī)軟部件文檔編制格式和內(nèi)容》的要求開(kāi)展軟件文檔管理工作。裝備軟件的文檔在程序的編制過(guò)程中要不斷地更新,對(duì)于一段程序、一組語(yǔ)句等都應(yīng)有相應(yīng)的文檔記錄。文檔可以使用中文,在文檔中要清楚地說(shuō)明代碼的意義、存儲(chǔ)器的標(biāo)號(hào)、數(shù)據(jù)的入口和出口、信息處理的方式、嵌套的作用、實(shí)現(xiàn)相關(guān)功能的途徑等。在修改程序的同時(shí)也要修改文檔,以切實(shí)做到文檔編寫規(guī)范、文實(shí)相符,描述具有一致性、確切性和簡(jiǎn)明性,簽署完整、職責(zé)明確。
隨著計(jì)算機(jī)技術(shù)的迅猛發(fā)展,使得武器裝備系統(tǒng)越來(lái)越多地采用了計(jì)算機(jī)軟件,其性能的發(fā)揮也越來(lái)越多地依賴于裝備軟件的質(zhì)量。為更好地發(fā)揮裝備軟件在武器裝備中的作用,軍方和承制方需要不斷地加強(qiáng)對(duì)裝備軟件的研究工作,以滿足裝備軟件的發(fā)展要求。
我國(guó)裝備軟件的質(zhì)量管理起步較晚,同發(fā)達(dá)國(guó)家相比還存在很大的差距。在過(guò)去的十幾年中,為了進(jìn)一步推動(dòng)軟件工程化的深入開(kāi)展,實(shí)現(xiàn)以測(cè)試促開(kāi)發(fā)、以測(cè)試促管理的目的,裝備軟件承制方建立起了相應(yīng)的測(cè)評(píng)體系,制定了相應(yīng)的軟件開(kāi)發(fā)規(guī)范,強(qiáng)化了軟件的評(píng)審工作。這些工作的推進(jìn)取得了良好的效果,但由于裝備軟件承制方的能力參差不齊,軟件開(kāi)發(fā)規(guī)范的制定和軟件評(píng)測(cè)工作落實(shí)的力度存在較大差異。因此,很有必要對(duì)裝備軟件承制方的軟件能力進(jìn)行評(píng)價(jià),建立起承制裝備軟件的準(zhǔn)入制度。
裝備軟件承制方的軟件能力評(píng)價(jià)可先從軟件過(guò)程評(píng)估入手,并逐步過(guò)渡到軟件承制方的軟件能力評(píng)價(jià)。軟件過(guò)程評(píng)估的關(guān)鍵是要把握六項(xiàng)原則:一是采用一個(gè)標(biāo)準(zhǔn)作為過(guò)程的參考模型;二是采用一個(gè)預(yù)先定義的形式化評(píng)估過(guò)程來(lái)進(jìn)行過(guò)程評(píng)估;三是評(píng)估的發(fā)起者應(yīng)是參評(píng)者所在單位的高層管理者;四是評(píng)估應(yīng)根據(jù)發(fā)起者的業(yè)務(wù)目標(biāo)和需求來(lái)進(jìn)行;五是采用嚴(yán)格保密的原則,即應(yīng)保證任何屬于個(gè)人或項(xiàng)目的信息不被泄漏;六是評(píng)估組和組織的參評(píng)者之間是一種協(xié)同的工作關(guān)系。
在完成軟件過(guò)程評(píng)估的預(yù)定目標(biāo)后,可開(kāi)展裝備軟件承制方的軟件能力評(píng)價(jià)工作。通過(guò)對(duì)裝備軟件承制方軟件能力的評(píng)價(jià)活動(dòng)獲得該單位的過(guò)程能力。對(duì)達(dá)到設(shè)定軟件能力級(jí)別的裝備軟件承制方,允許其開(kāi)展裝備軟件的研制。
裝備軟件配置管理的重要性已逐步被裝備軟件承制方所認(rèn)識(shí),并在裝備軟件研制過(guò)程中配備了一定的軟件開(kāi)發(fā)工具和環(huán)境。但因?yàn)檠b備軟件的承制方在配置管理上發(fā)展不平衡,有的還處在手工階段,有的雖然已借助相應(yīng)的工具進(jìn)行管理,但配置管理的實(shí)時(shí)性、有效性、可控性和可追溯性并沒(méi)有得到很好的體現(xiàn),達(dá)不到配置管理的目的,因此,很有必要繼續(xù)加強(qiáng)軟件的配置管理。
加強(qiáng)軟件配置管理需要從三個(gè)方面考慮:一是做好配置標(biāo)識(shí)工作,使所采用的配置標(biāo)識(shí)易于理解、識(shí)別;二是做好配置控制工作,主要把握實(shí)時(shí)性、有效性、可控性和可追溯性;三是做好配置審計(jì)工作。
裝備軟件承制方相繼建立了由軟件評(píng)測(cè)中心、軟件檢測(cè)站和軟件開(kāi)發(fā)項(xiàng)目組組成的三級(jí)軟件評(píng)測(cè)體系。但在實(shí)際的軟件測(cè)試過(guò)程中并沒(méi)有嚴(yán)格按照單元測(cè)試、組件測(cè)試、確認(rèn)測(cè)試和系統(tǒng)聯(lián)試的順序進(jìn)行,交付的裝備軟件大部分只進(jìn)行確認(rèn)測(cè)試和系統(tǒng)聯(lián)試。由于系統(tǒng)聯(lián)試只進(jìn)行軟件的功能和性能測(cè)試,并不能全部真實(shí)地反映被測(cè)軟件的實(shí)際情況,因此確認(rèn)測(cè)試就顯得非常重要。但承擔(dān)確認(rèn)測(cè)試的測(cè)試機(jī)構(gòu)并不是真正意義上的第三方獨(dú)立測(cè)試機(jī)構(gòu),其與軟件承制方存在或多或少的連帶關(guān)系,這就使得測(cè)試結(jié)論的權(quán)威性有所降低,因此很有必要開(kāi)展第三方獨(dú)立測(cè)試。其主要優(yōu)勢(shì)體現(xiàn)在:一是發(fā)揮專業(yè)技術(shù)優(yōu)勢(shì),使測(cè)試結(jié)果具有一定的權(quán)威性;二是發(fā)揮獨(dú)立機(jī)構(gòu)優(yōu)勢(shì),可以比較客觀地開(kāi)展工作,更有利于發(fā)現(xiàn)被測(cè)軟件存在的問(wèn)題;三是進(jìn)一步促進(jìn)軟件承制方的工作。
裝備軟件的第三方獨(dú)立性測(cè)試由于被測(cè)軟件的一些特殊性(如專業(yè)性強(qiáng)、保密性高),使得進(jìn)行第三方獨(dú)立測(cè)試存在一些困難。因此,可以在第三方獨(dú)立測(cè)試過(guò)程中考慮如下因素:一是讓承制方承擔(dān)軟件測(cè)試,但必須確保第三方獨(dú)立測(cè)試機(jī)構(gòu)的組織權(quán)和監(jiān)督權(quán),即軟件測(cè)試過(guò)程的組織權(quán)和測(cè)試小組測(cè)試過(guò)程的監(jiān)督權(quán)。
二是強(qiáng)調(diào)用戶的參與。裝備軟件由于其使用領(lǐng)域的特殊性,因此在第三方獨(dú)立測(cè)試中應(yīng)強(qiáng)調(diào)用戶的參與。一方面,用戶的參與可以使第三方測(cè)試項(xiàng)目工作中的很多具體問(wèn)題得到迅速解決,對(duì)工作展開(kāi)和切實(shí)推進(jìn)起到重要的推動(dòng)作用;另一方面,用戶方的嚴(yán)格監(jiān)督和管理有助于測(cè)試方更全面、細(xì)致地完成各個(gè)環(huán)節(jié)的測(cè)試工作,使測(cè)試結(jié)果更有效。
裝備軟件的質(zhì)量管理是我軍武器裝備現(xiàn)代化建設(shè)的需要,也是軍事斗爭(zhēng)準(zhǔn)備的需要。因此,我們必須下大力氣抓好裝備軟件質(zhì)量保證工作,探索裝備軟件質(zhì)量管理的新途徑、新方法,切實(shí)把裝備軟件質(zhì)量和可靠性提高到一個(gè)新的水平。