■楊 雷 楊小良 張忠江
軟件質(zhì)量監(jiān)督的目的就是保證軍用軟件產(chǎn)品具有相對穩(wěn)定的質(zhì)量。為了能向部隊交付能用、好用、管用的武器裝備,國家目前已經(jīng)頒布一系列國家軍用標(biāo)準(zhǔn)和法規(guī)文件。作為軍事代表如何結(jié)合GJB5000A用好相關(guān)標(biāo)準(zhǔn)文件,通過有效的管理手段,提高軟件生產(chǎn)的效率,保證軟件產(chǎn)品的質(zhì)量是值得探討的問題。以下就軍事代表對軟件質(zhì)量監(jiān)督應(yīng)進(jìn)行的工作予以討論。
軍事代表應(yīng)督促承制單位建立完善的質(zhì)量保證體系,規(guī)范軟件開發(fā)過程。目前部分軍工企業(yè)雖然已經(jīng)通過GJB5000A二級甚至三級的評估,但大部分是迫于上級機關(guān)的壓力,很多人過于強調(diào)“過程”,忽略了“管理”,這是很危險的傾向。良好的管理是項目成功的保證,企業(yè)建立完善的軟件質(zhì)量體系是軟件項目成功的基石。軍事代表同時應(yīng)督促承制單位制定專項軟件質(zhì)量保證計劃,明確質(zhì)量方針和質(zhì)量目標(biāo)。
軟件需求管理是整個軟件生命周期中估算、計劃、執(zhí)行和跟蹤軟件項目活動的基礎(chǔ)。軍事代表應(yīng)提供最初的需求,要求承制單位進(jìn)行需求整理后講解需求,獲得承制單位對需求的承諾,然后再由軍事代表確認(rèn)需求,確認(rèn)后一般是評審、會簽或體現(xiàn)在會議紀(jì)要中。
軟件需求確認(rèn)后,軍事代表應(yīng)與開發(fā)人員一起就需求分析結(jié)果進(jìn)行驗證,認(rèn)真審核軟件開發(fā)計劃、配置管理計劃和測試計劃等,明確項目開發(fā)、實施過程的時間進(jìn)度安排、進(jìn)度的控制方法及活動,確認(rèn)組織機構(gòu)及其職責(zé)、各工作組的資源及工作分配、不同工作組間的組織協(xié)調(diào)方法,并了解技術(shù)接口問題,然后嚴(yán)格按照計劃對軟件的開發(fā)和維護(hù)進(jìn)行監(jiān)督和管理。隨著項目的進(jìn)展,軍事代表還應(yīng)督促承制單位不斷更新開發(fā)計劃,在生命周期模型每一階段開始之前,都要有該階段的工作計劃,并經(jīng)過確認(rèn)后實施。
進(jìn)度管理是不可能一蹴而就的,任何一個進(jìn)度管理,都需要不斷分析,不斷改進(jìn),才能真實地反映項目的進(jìn)度。軟件進(jìn)度管理是一個動態(tài)過程,要點包括達(dá)成率和預(yù)測。軍事代表應(yīng)根據(jù)項目開發(fā)計劃,實時(至少是周期性)判定項目進(jìn)展,收集軟件過程質(zhì)量數(shù)據(jù),評估項目繼續(xù)推進(jìn)的可行性和風(fēng)險,要求承制單位制定應(yīng)對措施。
軍事代表應(yīng)盡可能地融入軟件設(shè)計過程,通過與一線設(shè)計人員的溝通,交流雙方的需求與目標(biāo),指導(dǎo)與監(jiān)督設(shè)計過程,追蹤、記錄并統(tǒng)計設(shè)計過程中出現(xiàn)的問題,進(jìn)行設(shè)計與需求的直接追溯。
軟件項目的開發(fā)和實施往往都是在變化中進(jìn)行的,有效的配置管理能夠控制變化,以有效的手段應(yīng)對變化,這也就是美國空軍頒布配置管理標(biāo)準(zhǔn)的直接原因。軟件配置管理是指在整個工程期間對項目的所有軟件配置項進(jìn)行規(guī)范化管理。如采用版本控制軟件對軟件配置項版本進(jìn)行版本控制,采用基線管理方法對變化進(jìn)行控制,即在遵循軟件工程標(biāo)準(zhǔn)的基礎(chǔ)上對整個軟件進(jìn)行控制和管理,維護(hù)其完整性、一致性和可跟蹤性。軍事代表對軟件的配置管理要貫穿軟件的整個生命周期。主要工作有:
(1)加強三庫管理。按照總裝備部2005裝字第4號命令《軍用軟件質(zhì)量管理規(guī)定》中的規(guī)定“軍事代表機構(gòu)或裝備主管部門指定的其他機構(gòu)應(yīng)當(dāng)對研制單位編制的軟件配置管理計劃進(jìn)行審查和確認(rèn),并監(jiān)督其實施。軟件配置管理必須設(shè)立軟件開發(fā)庫、受控庫和產(chǎn)品庫,并規(guī)定相應(yīng)的控制和管理程序。軟件文檔的修改和完善必須納入軟件配置管理”。
(2)加強基線管理。在項目開發(fā)過程中,項目基線發(fā)生變更是不可避免的,變更的原因很多:有人為的、有客戶需求變更、有產(chǎn)品開發(fā)環(huán)境發(fā)生變化等。變更如果沒有控制好,就會產(chǎn)生很多預(yù)想不到的問題,甚至導(dǎo)致整個項目的失敗。因此軍事代表加強基線管理是至關(guān)重要的。軍事代表對基線的控制主要體現(xiàn)在變更評估、變更批準(zhǔn)和基線變更審計等方面。
(3)加強配置管理。軟件配置管理在軟件管理中有著重要的地位,軟件配置管理工作是以整個軟件流程改進(jìn)為目標(biāo),是為軟件項目管理和軟件工程的其他領(lǐng)域打好基礎(chǔ),以便穩(wěn)步推進(jìn)整個企業(yè)的能力成熟度。
用戶和承制單位一樣反感軟件改動需求。但是實踐證明,需求的改動往往是不可避免的。這就要求雙方要采用科學(xué)的產(chǎn)品控制技術(shù)來順應(yīng)這種要求,也就是要采用變動控制。當(dāng)軟件需求變動時,其他各個階段的文檔或代碼隨之相應(yīng)變動,以保證軟件的一致性。如何控制需求變更呢?主要內(nèi)容有找出影響項目變更的因素、判斷項目變更范圍是否已經(jīng)發(fā)生、執(zhí)行規(guī)范的變更流程等。變更控制的主要依據(jù)是項目開發(fā)計劃、變更請求和評估報告。為保證項目變更的規(guī)范和有效實施,承制單位和軍事代表要分析變更請求,評估變更可能帶來的風(fēng)險和修改基準(zhǔn)文件,記錄技術(shù)狀態(tài)變化并納入配置管理。涉及軟件功能的需求變更必須經(jīng)軍事代表確認(rèn)和評審。
軟件是一種看不見、摸不著的邏輯產(chǎn)品。軟件開發(fā)的工作進(jìn)展情況可見性差,難于評價和管理。為更好地進(jìn)行管理,應(yīng)根據(jù)軟件開發(fā)的總目標(biāo)及完成期限,盡量明確地規(guī)定軟件開發(fā)人員的責(zé)任和產(chǎn)品標(biāo)準(zhǔn),軍事代表定期進(jìn)行審查和總結(jié)。
按照相關(guān)規(guī)定,軍事代表應(yīng)對承制單位交付驗收的軟件、文檔、數(shù)據(jù)開展功能配置審查和物理配置審查,以確保軟件的完整、正確、協(xié)調(diào)一致。軍事代表應(yīng)參加軟件驗收工作,向驗收會議報告《軍事代表對軟件監(jiān)督的情況》。軟件通過驗收后,所屬系統(tǒng)通過初樣評審,具備軟件戰(zhàn)技指標(biāo)考核條件,軟件資料齊套、數(shù)據(jù)齊全,符合有關(guān)文件要求后,軍事代表會同承制單位按照軟件分級定型的原則,向有關(guān)定委申請測評。在軟件完成研制,源程序、相關(guān)文件資料齊套、數(shù)據(jù)齊全,并通過定型測評和部隊試用后,軍事代表應(yīng)與承制單位一起提出定型申請,并參加定型審查,出具《軍事代表對軟件產(chǎn)品定型意見》,通過定型評審后,軍事代表會同承制單位整理定型材料,及時將定型材料上報有關(guān)定委。