軟體配置管理的概念
軟體配置管理(software configuration management, scm)是指通過執行版本控制、變更控制等規程,以及使用合適的配置管理軟體,來保證所有配置項的完整性和可跟蹤性。配置管理是對工作成果的一種有效保護。
軟體開發和管理過程中會產生許許多多的工作成果,例如文件、程式和資料等,它們都應當被妥善地保管起來,以便查閱和修改。如果把所有檔案一股腦地塞進計算機裡,那麼使用起來肯定很麻煩。毫無疑問,人們應當將檔案分門別類、有條理地儲存起來。
凡是納入配置管理範疇的工作成果統稱為配置項(configuration item),配置項主要有兩大類:軟體**(包括源**和二進位制**)和文件。
每個配置項的主要屬性有:名稱、識別符號、檔案狀態、版本、作者、日期等。所有配置項都被儲存在配置庫里,確保不會混淆、丟失。配置項及其歷史記錄反映了軟體的演化過程。
基線(baseline)由一組配置項組成,這些配置項構成了乙個相對穩定的邏輯實體。基線中的配置項被「凍結」了,不能再被任何人隨意修改(即變更控制)。基線通常對應於開發過程中的里程碑(milestone),乙個產品可以有多個基線,也可以只有乙個基線。基線的主要屬性有:名稱、識別符號、版本、日期等。通常將交付給客戶的基線稱為乙個「release」,為內部開發用的基線則稱為乙個「build」。
軟體**管理的一般規則
軟體**管理的特徵:
開發人員可能在一天之內多次更新**,可能對整個目錄進行checkout/checkin操作,檔案數量多,對實時性要求比較高。
軟體**的版本結構可能比較複雜(例如產生分支),對**管理工具的功能要求比較高。
一般地只有開發人員可以checkout/checkin**,非開發人員不必(也不該)訪問**庫。
開發人員應當採用專業配置管理工具來管理所有的軟體**,常見配置管理工具有cvs、sourcesafe、clearcase等。軟體**管理的一般規則如下:
·先請配置管理員在配置管理工具中建立對應的**庫,其目錄結構與開發環境的目錄結構保持一致。
·配置管理員為每個專案成員分配**庫的操作許可權。一般地,專案成員擁有add, checkin/checkout等許可權,但是不能擁有「刪除」許可權。具體操作視所採用的配置管理工具而定。
·專案成員根據自己的許可權操作**,例如add, checkin/checkout 等,專案組成員要保證**及時checkin(建議時間間隔不能超過1天,最好能夠每日build所有**)。
·如果要修改已經發布了的**,必須遵循 「申請-審批-執行」的變更管理流程。在開發進度壓力比較大的情況下,為了提高工作效率,允許省略「變更控制報告」,但是至少要得到專案經理的口頭批准,並告知受影響的相關人員。
·有關責任人定期備份**庫。
文件管理的一般規則
文件管理的特徵:
·文件的主要用途是交流,交流越充分則文件的價值就越高。所以除了開發人員,不少相關人員(例如領導、市場人員等)都可能訪問文件庫。
·人們一般不會頻繁地修改文件,文件的版本結構很簡單(一般不會產生版本分支),對管理工具的功能要求不高。
·人們並不侷限在辦公室裡使用文件,可能出差在外地、也可能在家裡使用文件。
·一般地,企業領導和市場人員基本上不會使用cvs、sourcesafe、clearcase檢視文件(對他們而言這些工具都太複雜了),使用web方式對他們而言最方便。
儘管專業的配置管理工具既可以管理軟體**也可以管理文件,由於軟體**和文件有比較大的差異,業界傾向於將軟體**和文件分開管理:
·採用專業配置管理工具(如cvs、sourcesafe、clearcase等)來管理軟體**。
·方式訪問他需要的文件(前提條件是擁有訪問許可權),非常方便。
文件管理的一般規則如下:
·配置管理員建立文件庫,至少確定文件庫的第一級目錄。
·配置管理員為每個專案成員分配文件庫的操作許可權。一般地,專案成員擁有add, checkin/checkout等許可權,但是不能擁有「刪除」許可權。具體操作視所採用的文件管理軟體而定。
·專案成員根據自己的許可權操作文件,例如add, checkin/checkout 等,專案組成員要保證文件及時checkin(建議時間間隔不能超過1周)。
·配置管理員用檔案袋或檔案櫃妥善保管紙質文件(例如客戶提供的紙質檔案)。
·如果要修改已經發布了的重要文件(例如需求文件、設計文件、專案計畫),必須遵循「申請-審批-執行」的變更管理流程。在開發進度壓力比較大的情況下,為了提高工作效率,允許省略「變更控制報告」,但是至少要得到專案經理的口頭批准,並告知受影響的相關人員。
·有關責任人定期備份文件庫(見配置管理計畫,一般由配置管理員備份)。
整合化研發管理平台rdms提供了「基於web的文件管理系統doccenter」,是對軟體配置管理工具的補充,滿足上述文件管理的要求。
軟體配置管理
軟體配置管理,它為軟體開發提供了一套管理辦法和活動原則,成為貫穿軟體開發始終的重要質量保證活動。配置管理的過程實際是軟體開發過程中質量管理的精髓所在,版本管理提高了開發者的工作效率,而變更控制則提高了整個開發團隊的工作效率。兩者的緊密結合,將為軟體開發專案提供一道堅實的質量防火牆,使軟體開發專案的質...
資訊文件管理與配置管理
1.軟體文件三類 2.文件的質量可分為4級 3.管理資訊系統文件的規範化體現在4個方面 eg 第1位 生命週期法各階段 第2位 各階段的文件 第3 4位 文件內容 第5 6位 流水碼 4.配置管理 5,配置項 在資訊系統的開發流程中需加以控制的配置項可分為基線配置項和非基線配置項 基線配置項 所有的...
scm 軟體配置管理
4 版本控制工具 1.更改原始檔,但不知道哪個是最新的 2.我不了解檔案的修改過程,尤其是最後修改了哪幾行以及為什麼修改 1.make時,經常用錯檔案的版本 多人修改乙個檔案,有些人的結果被沖掉了 程式誤刪了,只能重寫 花了一周時間,終於查出了乙個錯誤,但發現有個同事上週前已經修改了同樣的錯誤,但我...