當前位置:文書都 >

實用範文 >論文 >

軍用軟件維護方法探析論文

軍用軟件維護方法探析論文

【摘 要】為了提高我軍保障力和戰鬥力,本文通過研究軍用軟件維護的現狀,提出了軟件維護的重要性,並根據實際情況提出了軟件維護的具體方法。

軍用軟件維護方法探析論文

【關鍵詞】軟件維護;軍用軟件;保障力

隨着社會信息化的迅猛發展,軍用裝備正在朝着軟件密集型裝備方向發展,部隊使用的武器裝備中軟件的成分日益增加[1]。隨着裝備投入、訓練使用時間的增加,軟件故障已經越來越多地暴露出對裝備性能、維護、恢復的制約[2]。軟件維護也越來越體現出其重要性,國外對裝備中軟件保障問題非常重視[3]。美國從20世紀80年代已開始大規模研究軟件保障問題,而我國軟件保障研究才開始起步[4]。

1 軟件維護定義

軟件維護,是指軟件產品已經交付使用之後,為糾正錯誤、改進性能或其他屬性或使產品適應改變了的環境而進行的修改活動

按性質不同,一般將軟件維護劃分為如下四類:

1.1 糾錯性維護

用户在使用軟件時仍會發現在前期的測試中沒有揭露的軟件系統中的潛在錯誤,診斷和改正這些錯誤的過程稱為糾錯性維護。

1.2 適應性維護

由於操作系統或編譯系統的升級,為了使軟件能適應新的環境而引起的程序修改活動。

1.3 完善性維護

在軟件的使用過程中,為了滿足用户新的需求而增加或擴充軟件功能的活動。

1.4 預防性維護

為了提高軟件的可維護性和可靠性,為未來的進一步改進打下基礎而修改軟件的活動。

2 軟件維護的國內現狀

隨着武器裝備複雜性的增長,出現了使用和保障費用高,戰備完好性差等問題。軟件維護逐漸引起各國軍方和工業界的普遍注意,不同程度地開展了軟件維護、保障性分析及設計,國內目前處於起步階段。

2.1 可維護性差

在裝備的研製過程中,國內企業的軟件開發大都採用“手工作坊”式的開發方式,由軟件開發設計人員自行設計、自行編碼、自行測試、自行包維護,甚至完全由一個人完成。

近幾年剛剛有所改觀。山於無法對軟件開發過程進行有效的監督與管理,軟件的可理解性、可測試性、可修改性差,使得軟件出現故障後只能由開發者自行維護,其它人員難以介入。軟件人員“跳槽”後對軟件維護影響極大,甚至可以使軟件維護工作處於癱瘓狀態(軟件無人能讀懂,無人能維護)。

在軟件需要進行維護的時候,才發現設計的時候不重視可維護性,存在軟件代碼無註釋、軟件文檔與代碼小符、開發時用的開發工具無處查找、某些模塊無源碼等問題。

2.2 可靠性低

計算機軟件已經成為武器裝備中最重要的一部分[5]。但據目前統計,軟件可靠性整整比硬件低一個數量級。有的系統故障統計結果是軟件故障佔系統故障的60%~70%。軟件儘管與硬件小同,在使用過程中沒有磨損,沒有消耗,但軟件是有生命的,在使用過程中更需要維護,需要保障。

2.3 軟件維護的力度小夠

鑑於軟件的自身特點,任何軟件都難以做得盡善盡美。據美軍統計:軟件即使在裝備研製過程中經過了嚴格的工程化及測試後仍會有多達15%的缺陷遺留在軟件之中未被暴露。

美軍1997年的軟件保障費用高達200億美元,每行代碼的年維護費用為110美元,為裝備正常使用提供了保證。

目前國內關於軟件維護經費如何處理處於一個非常時期,軍品審定價時完全不考慮軟件經費,軟件維護經費更無從談起。而現在軟件使用階段的保障經費已遠遠超過了軟件的購置經費,並非一筆可有可無的經費。只有軟件研製經費,沒有軟件維護經費,是嚴重的比例失調。缺乏經費己成為嚴重製約軟件保障的因素,這對於開展軟件維護工作十分不利。

3 軟件維護的重要性

軟件維護對軟件可靠性產生的影響,比硬件維護對硬件可靠性產生的影響要大。主要表現在兩個方面,一是通過正確的糾錯性維護可以使軟件可靠性不斷地提高,失效率不斷下降。而硬件進行維護後,可靠性一般不會提高(多為恢復到某一定值),失效率也不會下降。另一方面,軟件維護對軟件全系統產生的關聯影響較大,而硬件維護對全系統產生的關聯影響相對較小。可見軟件維護性對於軟件而言,是一個比硬件維護性更重要的屬性,而且軟件維護性與軟件可靠性相一致。

軟件與硬件不同,在使用過程中沒有磨損、沒有消耗。但軟件是有生命的,在使用過程中是需要維護、需要保障的。軟件維護是軟件生命週期的最後一個階段,處於系統投入生產性運行以後的時期。軟件維護是軟件生命週期中耗費最多,延續時間最長的活動。通常大型軟件的維護成本是開發成本的4倍左右,軟件開發組織中60%以上的人力用於軟件維護。要想延長軟件生命,充分發揮軟件的作用,必須搞好軟件維護。例如,在沙漠風暴作戰行動中,E-3空中預警飛機作為戰場保障的中介部分,起着跟蹤所有戰場空中目標並指揮攔截的作用,被譽為神眼。而在當時戰場上電磁信號太多造成擁塞,以致E-3的能力大打折扣,不得不對E-3雷達中的許多軟件進行修改。為此,專門派出軟件保障組直接進行軟件維修,使E-3預警機的雷達軟件在96小時內得到修正後完成飛行檢測並投入使用。

4 如何做好軟件維護

4.1 軟件維護準備工作

當接到軟件維護任務時,第一步需要做的準備工作為熟悉所維護的軟件功能、軟件架構體系。熟悉所維護軟件功能的主要方法是閲讀該軟件的設計文檔或軟件使用維護説明書[6]。

熟悉軟件功能的同時,我們還需要熟悉軟件的架構體系。熟悉軟件架構體系就等於站在軟件維護的最高點。在面向對象分析與設計技術流行的今天,沒有理解軟件的'架構體系,要去維護軟件是很困難的。

4.2 如何收集並解決軟件問題

裝備定型後,技術狀態固,軟件的技術狀態也同時固化。當出現軟件質量問題時,大部分承製單位都以能不改就不改,必須改再説的思想去解決軟件質量問題,原因是因為一旦軟件出現問題,大部分都需要修改源代碼,哪怕幾個字符的修改都需要重新編譯並生成新的版本,導致了軟件技術狀態的變更。 基於這種情況,如何既保證技術狀態的管理又能有效解決部隊的軟件問題是值得我們深思的。我個人認為應從以下幾方面進行:

4.2.1 承製單位應建立軟件維護部門

軟件維護部門隸屬於售後部門,與部隊建立一種簡單而有效的機制。對部隊反映的軟件問題予以登記,“軟件維護登記表”內容包括:編號,日期,反映單位,反映人,聯繫電話,問題描述,記錄員,軟件維護人員,單位領導,軟件更改單號等內容。

4.2.2 軟件修改保持原有代碼的編碼規範

為了保證編碼規範的統一性,必須保持所維護的軟件的編碼規範。如果整個系統中沒有統一的編碼規範,那至少在模塊的層次上的編碼規範應該是統一的,因為一般情況下都是一個人負責開發一個模塊。

4.2.3 軟件修改後進行測試

為確保對軟件的修改並沒有破壞它的核心功能,好的做法用一個測試用例來重新測試,這樣就可以知道當你修改其他部分時有沒有再引入bug。有時,可能只是對代碼做了一點修改,並要把它提交到源代碼控制系統中,但是運行整個的迴歸測試卻會花費很長的時間。這種情況下,我們可以取出迴歸測試集的一個子集進行一次“冒煙測試”,即只覆蓋了迴歸測試集中的一部分測試用例的測試。每次修改後都應進行“冒煙測試”。

4.2.4 保留修改記錄

如何清楚記錄軟件維護過程,正確統計所做的維護工作的工作量並做好後續的相關文檔更新是非常重要的。軟件維護人員到現場維護完成後,應填寫“軟件維護記錄單”,其包括

軟件維護類別:糾錯性維護,適應性維護,完善性維護,預防性維護;

難度係數:範圍0.1-1;

維護日期:開始到結束的日期;

完成工時:最小單位為1小時;

完成人:完成該軟件維護的程序員;

反映單位:具體的單位名稱和地址;

問題描述:對反映問題的具體描述;

解決措施:描述解決問題的步驟和方法,儘量描述到需要修改系統多層架構中哪一層的哪個方法;

軟件更改單號:若存在軟件更改的情況,則填寫對應的軟件更改的編號;

程序員建議:該解決方案有什麼要注意或不能滿足的地方,現有系統的不合理性等;

影響的設計文檔:由程序員填寫。當對設計文檔資料有影響時填寫,須填寫對應的設計文檔資料的名稱,具體內容需另填設計(工藝)更改單。

解決程度:已解決,未完全解決,未解決。對於未完全解決,未解決的情況應説明哪些問題還沒有解決,此處應有反映單位的簽字和蓋章;

備註:其他未盡事宜。

4.3 軟件更改上報

軟件維護所涉及的軟件更改,應每年向上級機關上報,上級機關應對軟件更改是否執行予以回覆。

5 結束語

隨着軟件密集型裝備的增多,軟件的質量問題已成影響裝備質量的重要因素,軟件維護與保障方案的順利實施離不開領導的深入重視,離不開各部門、各行業的合作,離不開承製單位內部的管理。只有我們充分認識其獨特之處,儘早重視和規劃,才能不斷提高我軍裝備整體的保障水平和戰鬥力。

【參考文獻】

[1]劉棟,劉向宏,劉媛,蹇強,孟慶鑫.對大型複雜軍用軟件維護工作難點及對策的研究[J].標準科學,2015,2:19-24.

[2]常雲麗,鄔欣明,鄭威.軍用軟件需求分析研究[J].火力與指揮控制,2013,1:126-128.

[3]高明賀.淺析計算機軟件維護[J].計算機光盤軟件與應用,2012,12:21-22.

[4]彭漢國,張淵博,雷波.淺析軟件維護[J].軟件工程師,2014,17(4):61-62.

[5]石柱.軍用軟件能力成熟度模型及應用[M].北京:中國標準出版社,2003.

[6]徐勇.軍用軟件管理中構件化技術應用研究[J].計算機與數字工程,2013,4,587-590.

  • 文章版權屬於文章作者所有,轉載請註明 https://wenshudu.com/shiyongfanwen/lunwen/e8lxv9.html
專題