軍用軟件維護(hù)方法探析論文
【摘 要】為了提高我軍保障力和戰(zhàn)斗力,本文通過研究軍用軟件維護(hù)的現(xiàn)狀,提出了軟件維護(hù)的重要性,并根據(jù)實際情況提出了軟件維護(hù)的具體方法。
【關(guān)鍵詞】軟件維護(hù);軍用軟件;保障力
隨著社會信息化的迅猛發(fā)展,軍用裝備正在朝著軟件密集型裝備方向發(fā)展,部隊使用的武器裝備中軟件的成分日益增加[1]。隨著裝備投入、訓(xùn)練使用時間的增加,軟件故障已經(jīng)越來越多地暴露出對裝備性能、維護(hù)、恢復(fù)的制約[2]。軟件維護(hù)也越來越體現(xiàn)出其重要性,國外對裝備中軟件保障問題非常重視[3]。美國從20世紀(jì)80年代已開始大規(guī)模研究軟件保障問題,而我國軟件保障研究才開始起步[4]。
1 軟件維護(hù)定義
軟件維護(hù),是指軟件產(chǎn)品已經(jīng)交付使用之后,為糾正錯誤、改進(jìn)性能或其他屬性或使產(chǎn)品適應(yīng)改變了的環(huán)境而進(jìn)行的修改活動。
按性質(zhì)不同,一般將軟件維護(hù)劃分為如下四類:
1.1 糾錯性維護(hù)
用戶在使用軟件時仍會發(fā)現(xiàn)在前期的測試中沒有揭露的軟件系統(tǒng)中的潛在錯誤,診斷和改正這些錯誤的過程稱為糾錯性維護(hù)。
1.2 適應(yīng)性維護(hù)
由于操作系統(tǒng)或編譯系統(tǒng)的升級,為了使軟件能適應(yīng)新的環(huán)境而引起的程序修改活動。
1.3 完善性維護(hù)
在軟件的使用過程中,為了滿足用戶新的需求而增加或擴(kuò)充軟件功能的活動。
1.4 預(yù)防性維護(hù)
為了提高軟件的可維護(hù)性和可靠性,為未來的進(jìn)一步改進(jìn)打下基礎(chǔ)而修改軟件的活動。
2 軟件維護(hù)的國內(nèi)現(xiàn)狀
隨著武器裝備復(fù)雜性的增長,出現(xiàn)了使用和保障費用高,戰(zhàn)備完好性差等問題。軟件維護(hù)逐漸引起各國軍方和工業(yè)界的普遍注意,不同程度地開展了軟件維護(hù)、保障性分析及設(shè)計,國內(nèi)目前處于起步階段。
2.1 可維護(hù)性差
在裝備的研制過程中,國內(nèi)企業(yè)的軟件開發(fā)大都采用“手工作坊”式的開發(fā)方式,由軟件開發(fā)設(shè)計人員自行設(shè)計、自行編碼、自行測試、自行包維護(hù),甚至完全由一個人完成。
近幾年剛剛有所改觀。山于無法對軟件開發(fā)過程進(jìn)行有效的監(jiān)督與管理,軟件的可理解性、可測試性、可修改性差,使得軟件出現(xiàn)故障后只能由開發(fā)者自行維護(hù),其它人員難以介入。軟件人員“跳槽”后對軟件維護(hù)影響極大,甚至可以使軟件維護(hù)工作處于癱瘓狀態(tài)(軟件無人能讀懂,無人能維護(hù))。
在軟件需要進(jìn)行維護(hù)的`時候,才發(fā)現(xiàn)設(shè)計的時候不重視可維護(hù)性,存在軟件代碼無注釋、軟件文檔與代碼小符、開發(fā)時用的開發(fā)工具無處查找、某些模塊無源碼等問題。
2.2 可靠性低
計算機(jī)軟件已經(jīng)成為武器裝備中最重要的一部分[5]。但據(jù)目前統(tǒng)計,軟件可靠性整整比硬件低一個數(shù)量級。有的系統(tǒng)故障統(tǒng)計結(jié)果是軟件故障占系統(tǒng)故障的60%~70%。軟件盡管與硬件小同,在使用過程中沒有磨損,沒有消耗,但軟件是有生命的,在使用過程中更需要維護(hù),需要保障。
2.3 軟件維護(hù)的力度小夠
鑒于軟件的自身特點,任何軟件都難以做得盡善盡美。據(jù)美軍統(tǒng)計:軟件即使在裝備研制過程中經(jīng)過了嚴(yán)格的工程化及測試后仍會有多達(dá)15%的缺陷遺留在軟件之中未被暴露。
美軍1997年的軟件保障費用高達(dá)200億美元,每行代碼的年維護(hù)費用為110美元,為裝備正常使用提供了保證。
目前國內(nèi)關(guān)于軟件維護(hù)經(jīng)費如何處理處于一個非常時期,軍品審定價時完全不考慮軟件經(jīng)費,軟件維護(hù)經(jīng)費更無從談起。而現(xiàn)在軟件使用階段的保障經(jīng)費已遠(yuǎn)遠(yuǎn)超過了軟件的購置經(jīng)費,并非一筆可有可無的經(jīng)費。只有軟件研制經(jīng)費,沒有軟件維護(hù)經(jīng)費,是嚴(yán)重的比例失調(diào)。缺乏經(jīng)費己成為嚴(yán)重制約軟件保障的因素,這對于開展軟件維護(hù)工作十分不利。
3 軟件維護(hù)的重要性
軟件維護(hù)對軟件可靠性產(chǎn)生的影響,比硬件維護(hù)對硬件可靠性產(chǎn)生的影響要大。主要表現(xiàn)在兩個方面,一是通過正確的糾錯性維護(hù)可以使軟件可靠性不斷地提高,失效率不斷下降。而硬件進(jìn)行維護(hù)后,可靠性一般不會提高(多為恢復(fù)到某一定值),失效率也不會下降。另一方面,軟件維護(hù)對軟件全系統(tǒng)產(chǎn)生的關(guān)聯(lián)影響較大,而硬件維護(hù)對全系統(tǒng)產(chǎn)生的關(guān)聯(lián)影響相對較小。可見軟件維護(hù)性對于軟件而言,是一個比硬件維護(hù)性更重要的屬性,而且軟件維護(hù)性與軟件可靠性相一致。
軟件與硬件不同,在使用過程中沒有磨損、沒有消耗。但軟件是有生命的,在使用過程中是需要維護(hù)、需要保障的。軟件維護(hù)是軟件生命周期的最后一個階段,處于系統(tǒng)投入生產(chǎn)性運行以后的時期。軟件維護(hù)是軟件生命周期中耗費最多,延續(xù)時間最長的活動。通常大型軟件的維護(hù)成本是開發(fā)成本的4倍左右,軟件開發(fā)組織中60%以上的人力用于軟件維護(hù)。要想延長軟件生命,充分發(fā)揮軟件的作用,必須搞好軟件維護(hù)。例如,在沙漠風(fēng)暴作戰(zhàn)行動中,E-3空中預(yù)警飛機(jī)作為戰(zhàn)場保障的中介部分,起著跟蹤所有戰(zhàn)場空中目標(biāo)并指揮攔截的作用,被譽(yù)為神眼。而在當(dāng)時戰(zhàn)場上電磁信號太多造成擁塞,以致E-3的能力大打折扣,不得不對E-3雷達(dá)中的許多軟件進(jìn)行修改。為此,專門派出軟件保障組直接進(jìn)行軟件維修,使E-3預(yù)警機(jī)的雷達(dá)軟件在96小時內(nèi)得到修正后完成飛行檢測并投入使用。
4 如何做好軟件維護(hù)
4.1 軟件維護(hù)準(zhǔn)備工作
當(dāng)接到軟件維護(hù)任務(wù)時,第一步需要做的準(zhǔn)備工作為熟悉所維護(hù)的軟件功能、軟件架構(gòu)體系。熟悉所維護(hù)軟件功能的主要方法是閱讀該軟件的設(shè)計文檔或軟件使用維護(hù)說明書[6]。
熟悉軟件功能的同時,我們還需要熟悉軟件的架構(gòu)體系。熟悉軟件架構(gòu)體系就等于站在軟件維護(hù)的最高點。在面向?qū)ο蠓治雠c設(shè)計技術(shù)流行的今天,沒有理解軟件的架構(gòu)體系,要去維護(hù)軟件是很困難的。
4.2 如何收集并解決軟件問題
裝備定型后,技術(shù)狀態(tài)固,軟件的技術(shù)狀態(tài)也同時固化。當(dāng)出現(xiàn)軟件質(zhì)量問題時,大部分承制單位都以能不改就不改,必須改再說的思想去解決軟件質(zhì)量問題,原因是因為一旦軟件出現(xiàn)問題,大部分都需要修改源代碼,哪怕幾個字符的修改都需要重新編譯并生成新的版本,導(dǎo)致了軟件技術(shù)狀態(tài)的變更。 基于這種情況,如何既保證技術(shù)狀態(tài)的管理又能有效解決部隊的軟件問題是值得我們深思的。我個人認(rèn)為應(yīng)從以下幾方面進(jìn)行:
4.2.1 承制單位應(yīng)建立軟件維護(hù)部門
軟件維護(hù)部門隸屬于售后部門,與部隊建立一種簡單而有效的機(jī)制。對部隊反映的軟件問題予以登記,“軟件維護(hù)登記表”內(nèi)容包括:編號,日期,反映單位,反映人,聯(lián)系電話,問題描述,記錄員,軟件維護(hù)人員,單位領(lǐng)導(dǎo),軟件更改單號等內(nèi)容。
4.2.2 軟件修改保持原有代碼的編碼規(guī)范
為了保證編碼規(guī)范的統(tǒng)一性,必須保持所維護(hù)的軟件的編碼規(guī)范。如果整個系統(tǒng)中沒有統(tǒng)一的編碼規(guī)范,那至少在模塊的層次上的編碼規(guī)范應(yīng)該是統(tǒng)一的,因為一般情況下都是一個人負(fù)責(zé)開發(fā)一個模塊。
4.2.3 軟件修改后進(jìn)行測試
為確保對軟件的修改并沒有破壞它的核心功能,好的做法用一個測試用例來重新測試,這樣就可以知道當(dāng)你修改其他部分時有沒有再引入bug。有時,可能只是對代碼做了一點修改,并要把它提交到源代碼控制系統(tǒng)中,但是運行整個的回歸測試卻會花費很長的時間。這種情況下,我們可以取出回歸測試集的一個子集進(jìn)行一次“冒煙測試”,即只覆蓋了回歸測試集中的一部分測試用例的測試。每次修改后都應(yīng)進(jìn)行“冒煙測試”。
4.2.4 保留修改記錄
如何清楚記錄軟件維護(hù)過程,正確統(tǒng)計所做的維護(hù)工作的工作量并做好后續(xù)的相關(guān)文檔更新是非常重要的。軟件維護(hù)人員到現(xiàn)場維護(hù)完成后,應(yīng)填寫“軟件維護(hù)記錄單”,其包括
軟件維護(hù)類別:糾錯性維護(hù),適應(yīng)性維護(hù),完善性維護(hù),預(yù)防性維護(hù);
難度系數(shù):范圍0.1-1;
維護(hù)日期:開始到結(jié)束的日期;
完成工時:最小單位為1小時;
完成人:完成該軟件維護(hù)的程序員;
反映單位:具體的單位名稱和地址;
問題描述:對反映問題的具體描述;
解決措施:描述解決問題的步驟和方法,盡量描述到需要修改系統(tǒng)多層架構(gòu)中哪一層的哪個方法;
軟件更改單號:若存在軟件更改的情況,則填寫對應(yīng)的軟件更改的編號;
程序員建議:該解決方案有什么要注意或不能滿足的地方,現(xiàn)有系統(tǒng)的不合理性等;
影響的設(shè)計文檔:由程序員填寫。當(dāng)對設(shè)計文檔資料有影響時填寫,須填寫對應(yīng)的設(shè)計文檔資料的名稱,具體內(nèi)容需另填設(shè)計(工藝)更改單。
解決程度:已解決,未完全解決,未解決。對于未完全解決,未解決的情況應(yīng)說明哪些問題還沒有解決,此處應(yīng)有反映單位的簽字和蓋章;
備注:其他未盡事宜。
4.3 軟件更改上報
軟件維護(hù)所涉及的軟件更改,應(yīng)每年向上級機(jī)關(guān)上報,上級機(jī)關(guān)應(yīng)對軟件更改是否執(zhí)行予以回復(fù)。
5 結(jié)束語
隨著軟件密集型裝備的增多,軟件的質(zhì)量問題已成影響裝備質(zhì)量的重要因素,軟件維護(hù)與保障方案的順利實施離不開領(lǐng)導(dǎo)的深入重視,離不開各部門、各行業(yè)的合作,離不開承制單位內(nèi)部的管理。只有我們充分認(rèn)識其獨特之處,盡早重視和規(guī)劃,才能不斷提高我軍裝備整體的保障水平和戰(zhàn)斗力。
【參考文獻(xiàn)】
[1]劉棟,劉向宏,劉媛,蹇強(qiáng),孟慶鑫.對大型復(fù)雜軍用軟件維護(hù)工作難點及對策的研究[J].標(biāo)準(zhǔn)科學(xué),2015,2:19-24.
[2]常云麗,鄔欣明,鄭威.軍用軟件需求分析研究[J].火力與指揮控制,2013,1:126-128.
[3]高明賀.淺析計算機(jī)軟件維護(hù)[J].計算機(jī)光盤軟件與應(yīng)用,2012,12:21-22.
[4]彭漢國,張淵博,雷波.淺析軟件維護(hù)[J].軟件工程師,2014,17(4):61-62.
[5]石柱.軍用軟件能力成熟度模型及應(yīng)用[M].北京:中國標(biāo)準(zhǔn)出版社,2003.
[6]徐勇.軍用軟件管理中構(gòu)件化技術(shù)應(yīng)用研究[J].計算機(jī)與數(shù)字工程,2013,4,587-590.
【軍用軟件維護(hù)方法探析論文】相關(guān)文章:
關(guān)于軍用軟件裝備開發(fā)設(shè)計方法的研究論文04-14
基于模型的軟件測試技術(shù)探析論文05-03
濕地景觀設(shè)計方法探析論文04-20
軟件工程的安全檢測與維護(hù)分析論文07-09
軟件維護(hù)合同04-21