解析UML部署圖和組件圖
本文和大家學(xué)習(xí)一下UML部署圖和組件圖的相關(guān)內(nèi)容,因?yàn)椴渴饒D是對(duì)物理運(yùn)行情況進(jìn)行建模,系統(tǒng)的生產(chǎn)人員就可以很好地利用這種圖,而組件圖提供系統(tǒng)的物理視圖。
UML部署圖
部署圖表示該軟件系統(tǒng)如何部署到硬件環(huán)境中。它的用途是顯示該系統(tǒng)不同的組件將在何處物理地運(yùn)行,以及它們將如何彼此通信。因?yàn)椴渴饒D是對(duì)物理運(yùn)行情況進(jìn)行建模,系統(tǒng)的生產(chǎn)人員就可以很好地利用這種圖。
UML部署圖中的符號(hào)包括組件圖中所使用的符號(hào)元素,另外還增加了幾個(gè)符號(hào),包括節(jié)點(diǎn)的概念。一個(gè)節(jié)點(diǎn)可以代表一臺(tái)物理機(jī)器,或代表一個(gè)虛擬機(jī)器節(jié)點(diǎn)(例如,一個(gè)大型機(jī)節(jié)點(diǎn))。要對(duì)節(jié)點(diǎn)進(jìn)行建模,只需繪制一個(gè)三維立方體,節(jié)點(diǎn)的名稱位于立方體的頂部。所使用的命名約定與序列圖中相同:[實(shí)例名稱]:[實(shí)例類型](例如,"w3reporting.myco.com:ApplicationServer")。
圖8:部署圖。由于ReportingTool組件繪制在IBMWebSphere內(nèi)部,后者又繪制在節(jié)點(diǎn)w3.reporting.myco.com內(nèi)部,因而我們知道,用戶將通過運(yùn)行在本地機(jī)器上的瀏覽器來訪問ReportingTool,瀏覽器通過公司intranet上的HTTP協(xié)議與ReportingTool建立連接。
圖8中的UML部署圖表明,用戶使用運(yùn)行在本地機(jī)器上的瀏覽器訪問ReportingTool,并通過公司intranet上的HTTP協(xié)議連接到ReportingTool組件。這個(gè)工具實(shí)際運(yùn)行在名為w3reporting.myco.com的ApplicationServer上。這個(gè)圖還表明ReportingTool組件繪制在IBMWebSphere內(nèi)部,后者又繪制在w3.reporting.myco.com節(jié)點(diǎn)內(nèi)部。ReportingTool使用Java語言通過IBMDB2數(shù)據(jù)庫的JDBC接口連接到它的報(bào)告數(shù)據(jù)庫上,然后該接口又使用本地DB2通信方式,與運(yùn)行在名為db1.myco.com的服務(wù)器上實(shí)際的DB2數(shù)據(jù)庫通信。除了與報(bào)告數(shù)據(jù)庫通信外,ReportTool組件還通過HTTPS上的SOAP與BillboardService進(jìn)行通信。
UML組件圖
看完了UML部署圖的介紹再來看一下UML組件圖內(nèi)容。組件圖提供系統(tǒng)的物理視圖。它的用途是顯示系統(tǒng)中的軟件對(duì)其他軟件組件(例如,庫函數(shù))的依賴關(guān)系。UML組件圖可以在一個(gè)非常高的層次上顯示,從而僅顯示粗粒度的組件,也可以在組件包層次2上顯示。
UML組件圖的建模最適合通過例子來描述。圖7顯示了4個(gè)組件:ReportingTool、BillboardService、Servlet2.2API和JDBCAPI。從ReportingTool組件指向BillboardService、Servlet2.2API和JDBCAPI組件的帶箭頭的線段,表示ReportingTool依賴于那三個(gè)組件。
圖7:組件圖顯示了系統(tǒng)中各種軟件組件的依賴關(guān)系
【編輯推薦】
- UML部署圖組成元素和繪制方法解析
- UML部署圖組成元素詳解
- UML用例圖三大關(guān)系揭秘
- UML中UML部署圖和組件圖專家解析
- 深入剖析UML用例圖關(guān)系中包含 擴(kuò)展和泛化之間的聯(lián)系