(中國電子科學研究院 信息化辦公室,北京 100041)
隨著我軍武器裝備信息化程度的不斷提高,軟件在武器裝備中的比例越來越高,軟件的“核心地位”和“神經(jīng)中樞”作用也日益突出,給武器裝備的質量監(jiān)督管理工作帶來了巨大的挑戰(zhàn)。因此,做好軟件質量監(jiān)督對武器裝備質量監(jiān)督具有重要的現(xiàn)實意義。
軟件質量監(jiān)督目的是預防、發(fā)現(xiàn)和糾正質量問題,為定型和檢驗驗收軟件產(chǎn)品提供證據(jù)。其研制過程的監(jiān)督要點為:軟件文檔、軟件測試、軟件評審、軟件配置管理、軟件技術狀態(tài)更改、定型條件和定型遺留問題[1]。
過程和產(chǎn)品質量保證是GJB5000A二級的支持類過程域,是軟件質量監(jiān)督的重要環(huán)節(jié)。在軟件研制能力成熟度中發(fā)揮著重要的作用。過程和產(chǎn)品質量保證過程通過在項目整個生存周期,向項目員工和各層次的經(jīng)理,提供對過程和相關工作產(chǎn)品適當?shù)目梢曅院头答仯灾С纸桓陡哔|量的產(chǎn)品和服務過程。
軟件配置管理管理著項目策劃、研制過程產(chǎn)生的全部工作產(chǎn)品,包含文檔、代碼、執(zhí)行程序、運行環(huán)境、數(shù)據(jù)等,與各專業(yè)緊密結合,通過監(jiān)督軟件配置管理過程活動的質量和進入軟件配置庫工作產(chǎn)品的質量,可以全面掌握產(chǎn)品的技術狀態(tài)及質量情況。
對工作產(chǎn)品進行質量評價是過程和產(chǎn)品質量保證過程中的重要組成活動。然而,在開展工作產(chǎn)品評價時,有以下問題需要解決:提交評價的工作產(chǎn)品是否可控?是否為有效版本?研制過程發(fā)現(xiàn)問題的是否全部完成整改?階段中間如何進行質量控制?這些問題,都需要通過軟件配置管理來解決。
利用軟件配置管理的標識能力,每一份工作產(chǎn)品都將被分配唯一標識符,并對其進行版本控制,從而保證評價的工作產(chǎn)品的有效性;研制過程發(fā)現(xiàn)的問題,將記錄到問題報告單中,通過變更控制,確保每一項問題的整改落實到位;每一份工作產(chǎn)品在完成后需要提交配置管理庫,在進入配置管理庫前需要進行評審或者測試,從而確保了工作產(chǎn)品的質量。因此,配置管理可以有效解決工作產(chǎn)品質量控制的產(chǎn)品來源和缺陷閉環(huán)情況[2]。
由于軟件具有“無形”的特征,軟件質量監(jiān)督管理最困難也最重要的一點就是技術狀態(tài)控制。軟件配置管理通過對納入管理的各配置項進行版本控制,每一個工作產(chǎn)品的版本演進及變化情況得到記錄和控制,通過配置管理狀態(tài)報告功能,使軟件產(chǎn)品研制過程的技術狀態(tài)透明。同時,軟件配置管理會設定若干基線,如功能基線、分配基線、開發(fā)基線、聯(lián)試基線、產(chǎn)品基線等,在各階段結束后,由各專業(yè)人員組成的軟件配置控制委員會對基線產(chǎn)品進行評審和驗證,使軟件的研制在一個開放透明、狀態(tài)可控的條件下進行。
在軟件配置管理過程中,基線表示將一個標識符賦予一配置項或配置項集及其相關實體,是一組經(jīng)過正式評審同意后,作為進一步開發(fā)或交付基礎的規(guī)格說明或工作產(chǎn)品。確保階段產(chǎn)品(即基線產(chǎn)品)的質量是保障下一階段工作產(chǎn)品質量的前提,上一階段的工作產(chǎn)品如果出現(xiàn)缺陷,則后續(xù)依據(jù)此工作產(chǎn)品作為輸入而輸出的一系列工作產(chǎn)品都將出現(xiàn)問題。如需求分析階段會產(chǎn)生運行方案、規(guī)格說明等如若出現(xiàn)缺陷,必將導致設計文件出現(xiàn)錯誤。
在軟件配置管理過程中建立基線需要履行一套完整的工作程序,基線所需的全部工作產(chǎn)品均通過功能審核和物理審核,以確保工作產(chǎn)品的功能特性、物理特性符合功能基線的要求,全部工作產(chǎn)品應文文一致、文實一致。只要控制好基線的建立過程,落實配置管理的功能審核、物理審核,就能控制好階段產(chǎn)品的質量。
產(chǎn)品研制過程中各專業(yè)所產(chǎn)生的所有文檔、代碼、數(shù)據(jù)等工作產(chǎn)品均納入軟件配置管理,通過監(jiān)督各專業(yè)產(chǎn)生工作產(chǎn)品的實際入庫時間與計劃入庫時間的偏離,可以有效幫助項目管理人員、質量保證人員監(jiān)控開發(fā)的進度,當進度發(fā)生嚴重偏離時,需及時對計劃進行調整,以控制開發(fā)進度和監(jiān)督計劃。
軟件產(chǎn)品是一個有機整體,各軟件模塊間通過接口相互傳遞信息,一個信息傳遞錯誤,將會影響整個產(chǎn)品的運行,帶來致命的隱患。因此,對變更的控制是質量監(jiān)督的重點。
然而,變更是軟件研制過程不可避免的。與用戶在需求上理解的不一致,以及用戶新的想法,在聯(lián)試和測試過程發(fā)現(xiàn)的軟件缺陷,設計上的優(yōu)化等,都會帶來軟件的變更。產(chǎn)品只有通過不斷地變更才能逐步提升質量,同時,在不斷地變更的過程中又可能會引入新的質量問題。
軟件變更管理是軟件配置管理的重要功能。首先,對出現(xiàn)的軟件問題,應進行集中的記錄和跟蹤,對變更帶來的影響要進行充分分析,如:對接口的影響,對計劃的影響,對需求的影響,對上下游配置項的影響,對基線的影響等。其次,禁止出現(xiàn)未經(jīng)批準的變更,防止未按程序處理變更而引入新的缺陷。最后,變更后的工作產(chǎn)品要經(jīng)過充分驗證,適當時可將驗證擴展到全系統(tǒng),防止變更影響到其他工作產(chǎn)品。
軟件配置管理是企業(yè)體系的重要組成部分,與其他各專業(yè)息息相關,窺一斑而見全豹,軟件配置管理做不好,產(chǎn)品的質量管理過程必定是混亂的,軟件配置管理能力的提升,也會促進其他專業(yè)過程的規(guī)范性。因此,軟件質量監(jiān)督不可脫離軟件配置管理,要充分利用軟件配置管理的配置標識、配置控制、配置審核、配置狀態(tài)報告功能,提升軟件質量監(jiān)督能力。打造軟件配置管理的核心地位,促進軟件各專業(yè)的規(guī)范性和有機聯(lián)系。