軟體基線

專業術語

軟體基線是項目儲存庫中每個工件版本在特定時期的一個“快照”。它提供一個正式標準,隨後的工作基於此標準,並且只有經過授權后才能變更這個標準。建立一個初始基線后,以後每次對其進行的變更都將記錄為一個差值,直到建成下一個基線。

簡介


基線是軟體文檔或源碼(或其它產出物)的一個穩定版本,它是進一步開發的基礎。所以,當基線形成后,項目負責SCM的人需要通知相關人員基線已經形成,並且哪兒可以找到這基線了的版本。這個過程可被認為內部的發布。至於對外的正式發布,更是應當從基線了的版本中發布.
參與項目的開發人員將基線所代表的各版本的目錄和文件填入他們的工作區。隨著工作的進展,基線將合併自從上次建立基線以來開發人員已經交付的工作。變更一旦併入基線,開發人員就採用新的基線,以與項目中的變更保持同步。調整基線將把集成工作區中的文件併入開發工作區。
建立基線的三大原因是:重現性、可追蹤性和報告。
重現性是指及時返回並重新生成軟體系統給定發布版的能力,或者是在項目中的早些時候重新生成開發環境的能力。可追蹤性建立項目工件之間的前後繼承關係。其目的在於確保設計滿足要求、代碼實施設計以及用正確代碼編譯可執行文件。報告來源於一個基線內容同另一個基線內容的比較。基線比較有助於調試並生成發布說明。
建立基線后,需要標註所有組成構件和基線,以便能夠對其進行識別和重新建立。
建立基線有以下幾個優點:
基線為開發工件提供了一個定點和快照。
新項目可以從基線提供的定點之中建立。作為一個單獨分支,新項目將與隨後對原始項目(在主要分支上)所進行的變更進行隔離。
各開發人員可以將建有基線的構件作為他在隔離的私有工作區中進行更新的基礎。
當認為更新不穩定或不可信時,基線為團隊提供一種取消變更的方法。
您可以利用基線重新建立基於某個特定發布版本的配置,這樣也可以重現已報告的錯誤。
使用
定期建立基線以確保各開發人員的工作保持同步。但是,在項目過程中,應該在每次迭代結束點(次要里程碑),以及與生命周期各階段結束點相關聯的主要里程碑處定期建立基線:
生命周期目標里程碑(先啟階段)
生命周期構架里程碑(精化階段)
初始操作性能里程碑(構建階段)
產品發布里程碑(產品化階段)
第一次提出的軟體配置項就構成基線配置項。

分類列表


–系統功能說明。系統模型,項目計劃,進度安排;
–軟體需求規格說明。包括:圖形分析模型、過程、原型、數學規格說明;
–設計規格說明。包括:數據設計、體系結構設計界面設計、對象的描述等;驗收規格說明;
–測試規格說明。包括:測試計劃、測試用例、測試預期結果、測試記錄等;
–資料庫描述。包括:數據模式、記錄結構、數據項描述;
–模塊規格說明。包括:模塊功能、模塊演演算法、模塊介面等描述;
–運行系統。包括:模塊代碼、鏈接模塊、資料庫、支持及工具程序等;
–用戶文檔。包括:安裝說明、操作說明、用戶手冊等;培訓計劃;維護文檔,包括:故障報告、維護要求、更改記錄等;
–項目採用的有關標準和規程。

用處


軟體基線是對一個大的軟體版本的代碼打上標籤,在小版本更新失敗時可以回退到一個安全的防守版本。開發軟體,滿足具體的需求,不可避免用戶的需求經常改變,或者在上線過程中突然有重大的變化。這就需要做好測試,對每一個進行重大修改的版本進行詳細測試並做好標籤,這樣當它上線后,如果因為客戶或者產品經理的需求,有可能進行頻繁的更新,導致不可知的錯誤。由於中間小版本的修改很多並沒有進行充分測試,出現問題的比例比較高,如果正在進行一個關鍵業務的同時系統崩潰不可用,如搶購。這時,大部分研發人員都來不及在這麼短的時間裡發現問題並更改,此時就可以把系統回退到上一個基線,以便用一個更為穩定的版本來滿足用戶的需求,同時緊急修復現有的問題,以便出現下一個穩定的基線版本。