官术网_书友最值得收藏!

軍用軟件研制開發的現狀與軟件工程化研究

侯玉慧

(西安電子工程研究所 西安 710100)

摘要:分析了軍用軟件研制開發的現狀,提出了軟件工程化開發和工程化過程管理并重的解決方向,研究和探討了目前軍用軟件工程化管理的辦法。

關鍵詞:軟件管理 軍用軟件 軟件工程

Method and Research of Software Engineering Management

Hou Yu-hui

(Xi’an Electronic Engineering Research Institute,Xi’an 710100,China)

Abstract:This paper analyzes the current states of military software development,and proposes that software engineering development and engineering management should be paid equal attention to . Finally,we studied and discussed the approach of current military software engineering management.

Keywords: Software Management; Military Software;Software Engineering

引言

計算機科學與技術的飛速發展,應用領域的不斷擴大,各種軟件的需求量急劇增加。軟件不再只是計算機硬件的附屬品,而已成為系統中的一個獨立部分,甚至是完成系統功能的重要部分。我國軟件業與世界先進國家相比,差距甚遠,其主要原因是軟件工程化技術沒有得到廣泛的應用。今天,軟件開發不再是軟件開發人員的個人行為而是團隊行為,對軍用軟件開發企業來說,如何在要求的時間內、合理的投資下保質保量地交付軟件產品是一個巨大的挑戰。在我國,軟件開發項目超期、超預算、最終的軟件產品的質量不能使最終用戶滿意等問題,都是困擾軟件開發企業的重大問題。

隨著市場經濟的不斷深入,軍用型號產品的更新換代速度越來越快,新型號的研制生產正向大規模集成化方向發展。其中,最典型的例子就是研制型號產品專用軟件,通過安裝在計算機中的專用軟件或集成在產品中的軟件,控制并完成軍用型號產品某些特定的功能;軟件產品的設計實現為型號產品的小型化、自動化起到了較好的推動作用。在軍用型號軟件得到推廣應用的同時,我們也應該看到,軟件的運作因其具有一定的隱蔽性,引起軍用型號軟件運作的任何一個失誤,都會給整個軍用型號研制、生產和試驗帶來不可挽回的損失。

1 軍用軟件研制開發的現狀

在GJB5000A中,4.2.2.2成熟度等級1初始級中是這樣描述的:“在成熟度等級1,過程通常都是隨意、無序的。組織通常不提供支持過程的穩定環境。在這些組織中,成功依賴于人員的能力和勤奮,而不依賴于使用已經證實的過程。盡管是這種隨意、無序的環境,成熟度等級1的組織常常仍能生產可用的產品,提供可接受的服務;不過,他們經常超出其項目的預算和進度GJB 5000A-2008.軍用軟件研制能力成熟度模型.”這就是目前很多軟件研制單位軟件的開發方式。

下面將目前大多數軍用產品研制單位的軍用軟件研制過程中,軟件開發研制的具體現狀匯總如下。

(1)在很多項目的軟件研制中,沒有完全對軟件進行基本軟件研制管理過程控制,許多軟件還是處于“自編、自導、自演”的開發方式的年代,軟件開發過程和質量處于不完全受控狀態,軟件是不透明的,質量是不高的,可靠性沒有保證。

(2)在軟件開發過程中對軟件的資源投入不足,如:人員、設備、工具等。目前還做不到軟件設計、軟件實現、軟件測試人員必須分開原則。軟件開發人員少,人員結構簡單;軟件項目開發隊伍不穩定,互相不交流,以致許多工作不得不從頭做起;軟件項目資源調度或重要決策不及時,以致造成工作停頓等待。

(3)將軟件的開發過程完全與硬件研制混在一起,軟件不按軟件研制過程開發而按硬件研制過程開發。軟件文檔的編制不規范,還有很多項目的文檔是在軟件實現編程完成后補寫的,為了完成歸軟件文檔任務而歸文檔,失去了以設計文檔指導軟件實現的作用。

(4)軟件進度難以保證,軟件項目管理缺乏嚴密的計劃或者嚴格的日程安排。軟件項目管理的管理者未能發現進度滯后,未能采取糾正措施。開發軟件的經費難以控制,軟件項目造價常常是不準確的。

軟件本身獨有的特點,確實給軟件的開發和維護帶來了一些客觀困難,但是人們在開發和使用計算機系統的長期實踐中,也積累和總結出許多成功的經驗。盡管如此,軟件的開發仍然難度很大,我們難以降低軟件的開發成本、維護費用、難以提高軟件的質量、難以縮短軟件的開發周期。要解決這些問題,就必須走軟件工程化的道路,這樣才能使得軟件的開發從個體化走向工程化,進而提高軟件的開發效率和質量。

2 軍用軟件開發管理的工程化

多年來,人們試圖采用新的方法和技術來解決軍用軟件研制的現狀,但結果卻無法令人滿意。這種現象促使人們進一步考察軟件過程,結果發現,問題的關鍵在于對軟件過程的管理不盡如人意。事實表明,在無規則和混亂的管理條件下,先進的技術和工具并不能發揮應有的作用。人們逐步認識到,改進軟件過程的管理是解決上述問題的出路石柱. 軍用軟件研制能力成熟度模型及其應用. 北京:中國標準出版社,2009.軍用軟件開發管理的工程化,是指對于軍用軟件工程項目的開發,要按照工程化的方法組織、計劃、協調和監督軟件開發的整個過程,即采用軟件工程的方法管理軟件。

2.1 軍用軟件建設和發展的重要標準GJB5000A

GJB5000A是軍用軟件建設和發展的一項重要標準,得到了軍內及國防行業的高度重視,它的發布和實施極大地促進了我國軍用軟件研制單位軟件工程化水平的提高,有效地保證了軍用軟件的質量。

在GJB5000A中,已管理級中將過程域分為,需求管理、項目策劃、項目監控、供方協議管理、過程和產品質量保證、配置管理、測量和分析共7個過程域。筆者認為項目策劃過程域(PP)和項目監控過程域(PMC)是我們軟件開發中,重點要控制管理的,也是基本的項目管理類過程域。

圖1描述了基本的項目管理類過程域之間以及它們與其他過程域類之間的關系。

圖1 基本的項目管理類過程域

項目策劃(PP)從定義產品和項目的需求開始。項目計劃覆蓋該項目將實施的各種項目管理活動和開發活動。項目從各利益相關方的角度評審影響本項目的其他計劃,并建立針對利益相關方的承諾。例如,這些計劃覆蓋配置管理、驗證、測量與分析。

項目監控過程域(PMC)包括監督活動和采取糾正措施。項目計劃規定適當的項目監督等級、進展評審的頻率以及監督進展所用的測量方法。主要通過比較項目狀態與項目計劃來確定進展情況。當實際狀態顯著偏離預期值時,采取適當的糾正措施,例如,重新策劃等。

供方協議管理過程域(SAM)涉及項目獲取供方產品的要求。要前瞻地標識可滿足項目需求的產品源。選擇供方,并建立供方協議以管理供方。借助監督所選工作產品和過程跟蹤供方的進展和績效,并在合適時修訂供方協議。對供方生產的產品部件進行驗收評審和測試。

由于篇幅的限制,下面只對項目策劃過程域(PP)和項目監控過程域(PMC)進行詳細分析,以便能夠幫助我們軍用軟件開發和研制。

2.2 項目策劃過程域(PP)分析

項目策劃的目的是為實施軟件工程和管理軟件項目制定合理的計劃。

進行軟件項目策劃過程的流程如圖2所示。

圖2 項目策劃流程

(1)制定項目策劃計劃。

根據《軟件研制任務書》的各項需求,確定項目策劃要做的工作和需要參與的人員,制定項目策劃計劃。

(2)確定軟件生命周期模型和項目環境。

根據《軟件研制任務書》的各項需求,判定需新開發的工作,根據軟件生命周期模型決定軟件生命周期,并確定項目環境(開發環境、工作環境、使用環境等)。

(3)首先工作分解結構隨著項目的進展而演化。起初,頂層工作分解結構用于初始估計。開發工作分解結構時,將總的項目分解為相互連接的可管理的部件集。

(4)軟件規模估計值應與項目需求一致,以確定項目的工作量、成本和進度。應對每一個規模屬性,賦予一個相對的困難等級或復雜性等級。

軟件規模是用于估計工作量、成本和進度的模型的主要輸入。這些模型還可以基于連續性、復雜性和結構之類的輸入。

(5)項目策劃的風險標識和風險分析,以確定其影響、發生概率,及其問題可能發生的時段,將風險排序。

(6)制定項目數據管理計劃。應根據通用的或標準的數據需求集確定對項目的數據需求,包括要產生的數據項和它們的內容與形式。統一的數據項內容和格式,便于理解數據內容,并有助于一致管理數據資源。

(7)制定培訓計劃,將知識傳遞給項目,包含項目人員的培訓和從外部獲得知識兩方面。

只有在軟件開始研制時就進行計劃管理,才有助于對軟件項目進行很好的監控。在項目策劃過程域管理中,最后需要有一個文檔化的、標明所有相關計劃項的總計劃形成,以便執行或支持這些相關計劃的個人、小組和組織達成共識、承諾和績效。為項目生成的總計劃定義以下所有方面:項目的生存周期考慮、技術和管理任務、預算和進度表、里程碑、數據管理、風險標識、資源和技能需求以及利益相關方的標識和參與,說明包括項目人員、管理和支持組織的職責和權限關系。

2.3 項目監控過程域(PMC)分析

項目監控的目的是了解項目進展情況,使得在項目績效(進度、工作量)顯著偏離計劃時,能采取適當的糾正措施。

文檔化的項目計劃是監督活動、交流狀態和采取糾正措施的基礎。主要通過在項目進度表或工作分解結構(WBS)內預定的里程碑處或控制區域內,將實際工作產品和任務屬性、工作量、成本以及進度與計劃進行比較,來確定項目的進展情況。適當的可視性,使得能夠在績效顯著偏離計劃時,及時采取糾正措施。如果偏離不被解決會妨礙項目目標的實現,那么它就是顯著的。

當實際狀態顯著偏離期望值時,就要采取適當的糾正措施。這些措施有可能要求重新進行策劃,重新策劃可能包括修正原始計劃,確立新的協議,或者在當前計劃內包括更多的緩解活動。

2.3.1 對照項目計劃,監督項目策劃參數的實際值

軟件開發組項目負責人要定期進行以下工作。

(1)收集軟件項目進展數據。

(a)軟件項目進度數據;

(b)軟件項目工作量數據;

(c)軟件項目規模數據;

(d)軟件項目缺陷數據。

(2)跟蹤和評估軟件項目工作情況。

(a)包括資源情況;

(b)知識和技能情況;

(c)風險情況數據管理情況;

(d)利益相關方參與情況;

(e)承諾兌現情況。

監督通常包括:測量項目策劃參數的實際值,比較實際值與計劃中的估計值,以及標識其顯著偏離。記錄項目策劃參數的實際值,包括記錄有關聯的關聯信息,以幫助理解測量值。分析顯著偏離對確定要采取什么糾正措施的影響。

2.3.2 定期召開項目例會

軟件開發組項目負責人完成1.2.1節要求收集的軟件項目進展數據,然后跟蹤和評估軟件項目工作情況,在例會上通報和完成下列主要事項。

(1)工作情況:規模統計與偏差分析、工作量統計與偏差分析、確認計劃完成的情況。

(2)風險情況:已識別的風險狀態,是否有新增風險。

(3)問題與糾正:跟蹤問題是否解決,提出對新問題采取的糾正措施。

(4)配置管理和質量檢查情況通報。

(5)數據管理情況及利益相關方參與情況通報。在策劃時一旦制定了項目數據管理計劃,則必須監督對數據的管理,以確保完成這些計劃。

2.3.3 實施里程碑評審和工程評審

工程評審是在工程階段工作完成時(需求、設計、測試)進行評審,這些項目評審可能是正式評審也可以同行評審,也可能并未在項目計劃中明確規定。

里程碑評審是在項目策劃期間,計劃好里程碑評審時機,且通常是正式評審。

無論何種評審,文檔化的評審結果是必須的,對評審中發現的問題,要分析原因,形成相關糾正措施。利益相關方應參會,如果因故不能參會,必須向利益相關方通報評審結果。對評審中發現的問題要跟蹤一直到解決為止。

歸根結底項目監控就是對照項目計劃中所標識的項目監督等級、進展評審的頻率以及監督進展所用的測量方法的承諾,來監督這些承諾的完成情況,當項目績效或結果顯著偏離預期值時,管理糾正措施直到問題關閉。

3 結束語

如何理解項目管理在軟件開發中的作用呢?有人會說,即使是沒有管理的開發也可能被完成,但這種開發的周期和成本以及軟件產品的質量都是不可控的。表現在軟件交付的日期大大拖后,成本可能比預計的高幾倍,而且最終開發出來的軟件很難維護。對于一個軍用軟件成本、開發周期和產品質量的不可控將必然導致信任危機,這是軍品絕對不能接受的。總之,好的項目管理并不能完全保證軟件開發的成功,但沒有管理或不適當的管理將必定導致軟件開發的失敗。

我們在軍品軟件項目中,按照軟件工程化方法,切實改進軟件研制過程之后,軍工單位獲取2級軍用軟件研制能力成熟度等級的認可評價并不困難。目前,總裝備部共發布的軍用軟件研制能力評價合格單位名錄,有二十多個單位已經通過了2級的軍用軟件研制能力成熟度等級的評定,有3個單位已經通過了3級的軍用軟件研制能力成熟度等級的評定。2015年之后,不具備2級軍用軟件研制能力成熟度等級的單位,很難獲得軍用軟件研制開發任務。

我們要認清形勢,抓緊工作改變現狀,努力規范軟件研制過程,加強軟件工程化的管理,特別是加強軍用軟件項目的過程、組織、內容、方法和工具的管理,包括:立項管理、組織管理、計劃管理、進程管理、資源管理、文檔管理、質量管理等,進一步提高我們軟件裝備研制能力和資質,提高企業核心競爭力。

作者簡介

侯玉慧(1957—),女,大學本科,高級工程師。主要研究方向:雷達終端技術、軟件工程化。

主站蜘蛛池模板: 威海市| 汉源县| 若羌县| 江津市| 明溪县| 佛冈县| 义马市| 云林县| 仁布县| 织金县| 漳州市| 廉江市| 隆德县| 亚东县| 板桥市| 丰镇市| 靖江市| 湘西| 西乌| 天津市| 江孜县| 昌乐县| 九江市| 万宁市| 郁南县| 平凉市| 鹤峰县| 进贤县| 柳林县| 滦南县| 昆山市| 武宣县| 玉溪市| 育儿| 炉霍县| 确山县| 瑞昌市| 马鞍山市| 遂昌县| 玉林市| 承德县|