資料介紹
1 引言
配置管理系統[ 3, 9]是軟件開發的關鍵支撐工具之一,是一種管理軟件開發和維護過程以及其中各中間軟件產品的系統,是ISO與CMM質量保證體系的核心支持工具。配置管理研究怎樣在不同時刻標識軟件系統的配置,以便系統化地控制配置的改變,并在整個軟件系統的生命周期內維護配置的完整性和可追蹤性[ 1] 。其中,版本管理是基礎和核心。傳統的版本管理系統以文件作為管理的基本粒度。版本管理系統記錄、維護每個文件的演化歷史。在大型軟件開發中,系統往往包含較多文件,這使得傳統方式版本管理的工作量很大,而且不易于描述文件間內在的組合關系。目前,基于構件的軟件開發方法已成為發展趨勢[ 7, 8] 。構件作為系統的有機構成成分,在物理上可以表現為多個文件的集合體,而在開發過程中是作為一個原子單位使用的。系統的開發者關心的是構件整體的開發、演化,組裝和維護。這種大粒度的開發方法,對版本管理提出了新的要求[ 3] 。這些要求包括:
#應能有效存儲和管理構件演化歷史。
#操作模型應有利于體現構件的整體性, 降低系統開發的復雜程度。
#需要保證并行開發構件時的正確性, 同時不減少項目組協同工作的靈活性。
本文研究了構件的版本控制策略,提出了基于構件的版本管理模型。針對并行開發問題,又提出了分別在構件和文件粒度上進行版本管理和并發控制的方法。在此基礎上,設計實現了一個產品化的配置管理系統JBCM.該系統既提升了管理的粒度,又能確保團隊開發具有較好的并行性。
2 以構件為粒度的版本管理
2.1 版本管理系統中的構件定義
在基于構件復用的青鳥軟件生產線中,軟件構件定義如下: /構件是可以被多個軟件系統復用的具有獨立功能的系統構成成分0 [8] 。構件在實際形態上可表現為通過目錄結構組織起來的一些文件的集合,并且是系統中可以明確辨識的構成成分。需要指出的是,在以前許多有關版本管理的文獻中都出現了構件的概念[ 4] ,但其中的構件一般指的就是文件。本文中的構件則是應用系統中多個相關文件構成的一個邏輯整體,例如一個類的定義及其實現,一個完整的功能模塊等。構件版本是構件組成文件版本的集合。構件版本的變化不僅體現了組成文件的版本變化,同時也反映了構件中文件組成的變化。也就是說,組成文件發生版本演化,或者增加和刪除構件中的文件,都會引起構件版本的演化。在基于構件的系統中,文件版本由系統內部控制,用戶只關注構件版本,從而提升了管理層次。圖1反映了構件版本與文件版本的關系:

圖 中虛線箭頭表示構件和文件與其不同版本的關系, 實線箭頭表示構件版本由文件版本組成的關系。從圖中可以看出構件的版本2 比版本1 增加了一個文件3, 而且文件版本也發生了演化。 構件版本的演化與文件版本的演化同步進行, 并且隨著文件的版本演化自動產生。基于上述構件與文件關系模型, 提出并實現了基于構件的軟件版本管理系統。
2.2 構件的版本管理
(1) 以構件為粒度的版本管理特點
與 基于文件的版本管理相比, 基于構件的版本管理有以下主要特點: 1 構件的抽象級別比文件高。 構件是應用系統中可以明確辨識的構成成分。 記錄、維護構件的版本比文件的版本管理更有意義。 o 構件的粒度可以比文件大很多。 一個項目中可能有諸多分布的邏輯單元, 這些邏輯單元與構件相對應。構件的數量較少, 而且整體邏輯意義明顯, 可以更清晰地體現項目的演化歷史。 ? 在構件基礎上, 可以體現出系統的層次性、構造性等特征。 同時, 構件版本管理也可以滿足對文件版本的管理需求, 使版本管理既有大粒度, 又有靈活性。
(2) 構件版本管理的基本模式
基 于構件的版本管理系統采用/ 檢出( Check Out) 、修改、檢入( Check In)0 的基本操作模型, 操作的基本單位是構件。 使用者需要先將構件從版本庫檢出到工作區, 隨后在工作區中完成對構件的修改, 最后將修改的結果檢入版本庫。 構件組成文件的增刪以及其中任何一個文件的修改都被視為對整個構件的修改。 因此, 作為檢入操作的結果, 版本管理系統會自動生成構件的一個新版本。 以構件版本為粒度的版本管理系統記錄和管理了開發人員對構件修改的歷史。
配置管理系統[ 3, 9]是軟件開發的關鍵支撐工具之一,是一種管理軟件開發和維護過程以及其中各中間軟件產品的系統,是ISO與CMM質量保證體系的核心支持工具。配置管理研究怎樣在不同時刻標識軟件系統的配置,以便系統化地控制配置的改變,并在整個軟件系統的生命周期內維護配置的完整性和可追蹤性[ 1] 。其中,版本管理是基礎和核心。傳統的版本管理系統以文件作為管理的基本粒度。版本管理系統記錄、維護每個文件的演化歷史。在大型軟件開發中,系統往往包含較多文件,這使得傳統方式版本管理的工作量很大,而且不易于描述文件間內在的組合關系。目前,基于構件的軟件開發方法已成為發展趨勢[ 7, 8] 。構件作為系統的有機構成成分,在物理上可以表現為多個文件的集合體,而在開發過程中是作為一個原子單位使用的。系統的開發者關心的是構件整體的開發、演化,組裝和維護。這種大粒度的開發方法,對版本管理提出了新的要求[ 3] 。這些要求包括:
#應能有效存儲和管理構件演化歷史。
#操作模型應有利于體現構件的整體性, 降低系統開發的復雜程度。
#需要保證并行開發構件時的正確性, 同時不減少項目組協同工作的靈活性。
本文研究了構件的版本控制策略,提出了基于構件的版本管理模型。針對并行開發問題,又提出了分別在構件和文件粒度上進行版本管理和并發控制的方法。在此基礎上,設計實現了一個產品化的配置管理系統JBCM.該系統既提升了管理的粒度,又能確保團隊開發具有較好的并行性。
2 以構件為粒度的版本管理
2.1 版本管理系統中的構件定義
在基于構件復用的青鳥軟件生產線中,軟件構件定義如下: /構件是可以被多個軟件系統復用的具有獨立功能的系統構成成分0 [8] 。構件在實際形態上可表現為通過目錄結構組織起來的一些文件的集合,并且是系統中可以明確辨識的構成成分。需要指出的是,在以前許多有關版本管理的文獻中都出現了構件的概念[ 4] ,但其中的構件一般指的就是文件。本文中的構件則是應用系統中多個相關文件構成的一個邏輯整體,例如一個類的定義及其實現,一個完整的功能模塊等。構件版本是構件組成文件版本的集合。構件版本的變化不僅體現了組成文件的版本變化,同時也反映了構件中文件組成的變化。也就是說,組成文件發生版本演化,或者增加和刪除構件中的文件,都會引起構件版本的演化。在基于構件的系統中,文件版本由系統內部控制,用戶只關注構件版本,從而提升了管理層次。圖1反映了構件版本與文件版本的關系:

圖 中虛線箭頭表示構件和文件與其不同版本的關系, 實線箭頭表示構件版本由文件版本組成的關系。從圖中可以看出構件的版本2 比版本1 增加了一個文件3, 而且文件版本也發生了演化。 構件版本的演化與文件版本的演化同步進行, 并且隨著文件的版本演化自動產生。基于上述構件與文件關系模型, 提出并實現了基于構件的軟件版本管理系統。
2.2 構件的版本管理
(1) 以構件為粒度的版本管理特點
與 基于文件的版本管理相比, 基于構件的版本管理有以下主要特點: 1 構件的抽象級別比文件高。 構件是應用系統中可以明確辨識的構成成分。 記錄、維護構件的版本比文件的版本管理更有意義。 o 構件的粒度可以比文件大很多。 一個項目中可能有諸多分布的邏輯單元, 這些邏輯單元與構件相對應。構件的數量較少, 而且整體邏輯意義明顯, 可以更清晰地體現項目的演化歷史。 ? 在構件基礎上, 可以體現出系統的層次性、構造性等特征。 同時, 構件版本管理也可以滿足對文件版本的管理需求, 使版本管理既有大粒度, 又有靈活性。
(2) 構件版本管理的基本模式
基 于構件的版本管理系統采用/ 檢出( Check Out) 、修改、檢入( Check In)0 的基本操作模型, 操作的基本單位是構件。 使用者需要先將構件從版本庫檢出到工作區, 隨后在工作區中完成對構件的修改, 最后將修改的結果檢入版本庫。 構件組成文件的增刪以及其中任何一個文件的修改都被視為對整個構件的修改。 因此, 作為檢入操作的結果, 版本管理系統會自動生成構件的一個新版本。 以構件版本為粒度的版本管理系統記錄和管理了開發人員對構件修改的歷史。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論