前言
需求分析和總體流程設計完成後,我們接下來開始設計系統結構。本篇將向大家介紹使用VisualStudio 2010中對Component Diagram(組件圖)的支持,和使用VisualStudio 2010為系統設計邏輯結構的方法。
背景
前篇:使用VisualStudio 2010從分析到實施(4)——使用Sequence Diagram設計消息序列
對組件圖不熟悉的兄弟請參考:http://www.ibm.com/developerworks/cn/rational/rationaledge/content/feb05/bell/bell.html
在系統需求確定之後,我們進入基於UML的OOD系統設計階段,在這個階段中,將通過以下三篇文章來為大家呈現VS2010在設計階段的支持和應用:
使用VisualStudio 2010從分析到實施(4)——使用Sequence Diagram設計消息序列
使用VisualStudio 2010從分析到實施(5)——使用Component Diagram設計系統結構
使用VisualStudio 2010從分析到實施(6)——使用Logical Class Diagram實現系統組件
組件圖
在OOAD中,我們使用組件圖來為系統和行為提供接口。
理論上來說,一個組件應該能夠展示系統中一個獨立的主要功能模塊,例如Web services, .NET, COM, CLR或用戶界面(UI)。一個組件圖能夠幫助我們從一個系統服務的“提供”與“消費”來理解系統的邏輯結構。
當然,我們還可以設計好用來定義好一些組件之間交流的協議接口,以待下一步靜態類設計中實現這些接口。
Component Diagram 建立步驟
1.新建解決方案
2.新建Project(項目),類型為“ModelingProjects”
3.在解決方案管理器中右擊剛剛新建的ModelingProject,添加新item
4.選擇“Component Diagram” 然後OK即可,文件擴展名為“.component”
5.從左邊的工具欄拖放元素到用例圖中。
Visual Studio 2010提供的Component Diagram支持:
在Visual Studio 2010 CTP中,Component Diagram元素如下:
1.Component:組件模型
2.Dependency:依賴關系
3.Delegation:代理關系
4.ProvidedInterface:提供接口,也稱棒棒糖接口
5.RequiredInterface:需求接口,也稱插座接口
6.CommentLink:注釋鏈接,用來將注釋鏈接到相對應的元素
7.Comment:注釋
8.Generalization:泛化關系
Component Diagram繪制步驟:1. 繪制系統組件:
從ToolBox中拖出Component 到組件圖中,命名組件,並設置屬性。
對於初步學習OOAD的設計者來說,組件的設計對象主要是:終端(如浏覽器)、應用級別的系統組件(application)、系統級別的組件(system)以及相應的網關組件(gateway)等。
2. 組件之間的關系設計:
組件之間的關系主要是通過接口(interface)來表達的,正如上面所屬,組件圖中的接口分為棒棒糖接口和插座接口,分別表示interface provider relationships和interface cusumer relationships。在一般的設計中,我們會先設計提供型接口,再定義消費型接口。
3. 設計組件之間的通訊協議:
在Toolbox中選擇Dependency元素,並用它來將相應的棒棒糖接口和插座接口鏈接起來。然後將這個依賴關系進行命名,名稱一般設定為通訊協議名,比如HTTP, SOAP(Web Service)等。
4. 設計組件與數據庫之間的依賴:
類似與上個步驟,將系統組件與數據庫組件用Dependency元素鏈接起來,如果有必要的話,再設置相關屬性。
使用Component Diagram設計系統結構:
組件圖經常是一個架構師在項目的初期就建立的非常重要的圖。然而,組件圖的有用性跨越了系統的壽命。組件圖是無價的,因為它們模型化和文檔化了一個系統的架構。因為組件圖文檔化了系統的架構,開發者和系統可能的系統管理員會發現這一工作的關鍵產品有助於他們理解系統。
另外,在設計組件圖時,我們還可以利用模型查看器來對模型列表進行縱覽,在實際設計中很有作用:
下文預告:
使用VisualStudio 2010從分析到實施(6)——使用Logical Class Diagram實現系統組件