section9構(gòu)件圖與部署_第1頁(yè)
section9構(gòu)件圖與部署_第2頁(yè)
section9構(gòu)件圖與部署_第3頁(yè)
section9構(gòu)件圖與部署_第4頁(yè)
section9構(gòu)件圖與部署_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余38頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

構(gòu)件圖與部署圖內(nèi)容構(gòu)件和構(gòu)件圖概述構(gòu)件圖中的元素構(gòu)件與類的比較構(gòu)件圖的作用構(gòu)件圖建模技術(shù)部署圖概述部署圖中的基本概念結(jié)點(diǎn)與構(gòu)件的比較部署圖建模技術(shù)小結(jié)實(shí)現(xiàn)圖顯示系統(tǒng)實(shí)現(xiàn)時(shí)的一些特性,包括構(gòu)件圖和配置圖。構(gòu)件圖顯示代碼本身的邏輯結(jié)構(gòu)配置圖顯示系統(tǒng)運(yùn)行時(shí)刻的結(jié)構(gòu)構(gòu)件和構(gòu)件圖概述構(gòu)件(Component)是系統(tǒng)中遵從一組接口且提供其實(shí)現(xiàn)的物理的、可替換的部分.

每個(gè)構(gòu)件體現(xiàn)了系統(tǒng)設(shè)計(jì)中特定類的實(shí)現(xiàn)。構(gòu)件圖(Componentdiagram)顯示一組構(gòu)件以及它們之間的相互關(guān)系,包括編譯、鏈接或執(zhí)行時(shí)構(gòu)件之間的依賴關(guān)系.構(gòu)件圖是對(duì)OO系統(tǒng)物理方面建模的2個(gè)圖之一.構(gòu)件圖實(shí)例構(gòu)件的類型部署構(gòu)件,這類構(gòu)件是構(gòu)成一個(gè)可執(zhí)行系統(tǒng)必要和充分的構(gòu)件,例如動(dòng)態(tài)鏈接庫(kù)、可執(zhí)行文件,另外還包括如COM+、CORBA及企業(yè)級(jí)JavaBeans、動(dòng)態(tài)Web頁(yè)、數(shù)據(jù)庫(kù)表等.工作產(chǎn)品構(gòu)件,這類構(gòu)件主要是開(kāi)發(fā)過(guò)程的產(chǎn)物,包括創(chuàng)建實(shí)施構(gòu)件的源代碼文件及數(shù)據(jù)文件。如:源代碼文件、數(shù)據(jù)文件等,這些構(gòu)件可以產(chǎn)生部署構(gòu)件.執(zhí)行構(gòu)件,作為一個(gè)正在執(zhí)行的系統(tǒng)的結(jié)果而被創(chuàng)建的.構(gòu)件圖中的元素(1)構(gòu)件基本構(gòu)件帶版型的構(gòu)件構(gòu)件圖中的元素(1)構(gòu)件Rose中的擴(kuò)展構(gòu)件子程序說(shuō)明是一組子程序集合名,其中不包括類定義.子程序體表示子程序的實(shí)現(xiàn).構(gòu)件圖中的元素(1)構(gòu)件Rose中的擴(kuò)展構(gòu)件主程序是包含程序根的文件.構(gòu)件圖中的元素(1)構(gòu)件Rose中的擴(kuò)展構(gòu)件包說(shuō)明是類的頭文件.包體包含類的操作代碼.構(gòu)件圖中的元素(2)接口構(gòu)件具有它們支持的接口和需要從其他構(gòu)件得到的接口。接口是被軟件或硬件所支持的一個(gè)操作集。通過(guò)使用命名的接口,可以避免在系統(tǒng)中各個(gè)構(gòu)件之間直接發(fā)生依賴關(guān)系構(gòu)件圖中的元素(2)接口構(gòu)件與接口之間的關(guān)系:實(shí)現(xiàn)關(guān)系和依賴關(guān)系導(dǎo)出接口導(dǎo)入接口供訪問(wèn)操作的組件使用由提供操作的組件提供接口實(shí)例將整個(gè)“在線酒店預(yù)訂子系統(tǒng)”作為一個(gè)構(gòu)件,考慮其對(duì)外接口。顯然它首先需要提供用戶界面;其次還需要與加盟的酒店系統(tǒng)連接,完成預(yù)訂工作構(gòu)件圖中的元素(3)依賴關(guān)系良好定義的構(gòu)件不直接依賴于其他構(gòu)件而依賴于構(gòu)件所支持的接口。在這種情況下,系統(tǒng)中的一個(gè)構(gòu)件可以被支持正確接口的其他構(gòu)件所替代。

組件與類組件是一組邏輯元素的物理實(shí)現(xiàn)。組件包含類,類通過(guò)組件來(lái)實(shí)現(xiàn),組件與類之間是依賴關(guān)系。

相同點(diǎn)不同點(diǎn)兩者都有名稱;都可以實(shí)現(xiàn)一組接口;都可以參與依賴關(guān)系;都可以被嵌套;都可以有實(shí)例;都可以參與交互。類描述了軟件設(shè)計(jì)的邏輯組織和意圖,而構(gòu)件則描述軟件設(shè)計(jì)的物理實(shí)現(xiàn),即每個(gè)構(gòu)件體現(xiàn)了系統(tǒng)設(shè)計(jì)中特定類的實(shí)現(xiàn)。構(gòu)件與類的比較

組件與類的顯著不同點(diǎn)(1)抽象的方式不同:組件:是程序代碼的物理抽象;組件可以駐留在節(jié)點(diǎn)上。類:是邏輯抽象;不能單獨(dú)存在于節(jié)點(diǎn)上。抽象的級(jí)別不同組件:表示一個(gè)物理模塊,組件可以包含多個(gè)類;組件依賴它所包含的類類:表示一個(gè)邏輯模塊,只能從屬于某個(gè)組件,類通過(guò)組件來(lái)實(shí)現(xiàn)。

組件與類的顯著不同點(diǎn)(2)訪問(wèn)方式不同組件:不直接擁有屬性和操作,只能通過(guò)接口訪問(wèn)其操作類:直接擁有自己的屬性和操作,可以直接訪問(wèn)其操作與包的關(guān)系不同組件:包可以包含成組的邏輯模型元素,也可以包含物理的組件類:一個(gè)類可以出現(xiàn)在多個(gè)組件中,卻只能在一個(gè)包內(nèi)定義。

構(gòu)件圖的作用(1)對(duì)源代碼文件之間的關(guān)系建模組件圖示例

Acomponentdiagram

一個(gè)大型復(fù)雜的軟件系統(tǒng),一般由多個(gè)可執(zhí)行程序和相關(guān)的持久對(duì)象庫(kù)構(gòu)成。下圖描述了一個(gè)客戶的軟件系統(tǒng)從C++源代碼組件編譯成相應(yīng)的二進(jìn)制代碼(目標(biāo)碼)組件,最后通過(guò)連接成為可執(zhí)行程序組件的全過(guò)程,請(qǐng)分析說(shuō)明之。

圖說(shuō)明在圖中,3個(gè)源代碼組件“main.cpp”組件、“comhnd.cpp”組件和“whnd.cpp”組件構(gòu)成一個(gè)完整的客戶軟件源代碼程序。在這3個(gè)組件中,源代碼組件“main.cpp”組件依賴(調(diào)用)“comhnd.cpp”組件和“whnd.cpp”組件才能達(dá)到系統(tǒng)要求的完整功能。3個(gè)源代碼組件分別經(jīng)過(guò)編譯,產(chǎn)生相應(yīng)的3個(gè)二進(jìn)制代碼組件:“main.obj”組件、“comhnd.obj”組件和“whnd.obj”組件,這3個(gè)二進(jìn)制代碼組件依賴于對(duì)應(yīng)的3個(gè)源代碼組件才能產(chǎn)生。

圖說(shuō)明這3個(gè)二進(jìn)制代碼組件經(jīng)過(guò)連接,形成一個(gè)可執(zhí)行組件“client.exe”。可執(zhí)行組件“client.exe”的產(chǎn)生依賴于對(duì)應(yīng)的3個(gè)二進(jìn)制代碼組件;同時(shí),它在執(zhí)行過(guò)程中還要依賴和調(diào)用動(dòng)態(tài)鏈接庫(kù)“graphic.dll”才能完成系統(tǒng)要求的功能。動(dòng)態(tài)鏈接庫(kù)用注釋節(jié)點(diǎn)表示。

構(gòu)件圖的作用:源代碼建模識(shí)別出感興趣的相關(guān)源代碼文件的集合,并把它們建模為構(gòu)件;對(duì)于較大的系統(tǒng),利用包來(lái)進(jìn)行分組;通過(guò)約束來(lái)表示源代碼的版本號(hào)、作者和最后修改

日期等信息;用依賴關(guān)系來(lái)表示這些文件間編譯的依賴關(guān)系構(gòu)件圖的作用(2)對(duì)可執(zhí)行文件之間的關(guān)系建模構(gòu)件圖的作用:可執(zhí)行文件建模首先識(shí)別你想建模的構(gòu)件集合考慮集合中各構(gòu)件的不同類型對(duì)這個(gè)集合中的每個(gè)構(gòu)件,分析它們之間的關(guān)系構(gòu)件圖建模技術(shù)對(duì)系統(tǒng)中的構(gòu)件建模對(duì)相應(yīng)構(gòu)件提供的接口建模對(duì)構(gòu)件之間的依賴關(guān)系建模對(duì)建模的結(jié)果進(jìn)行精化和細(xì)化部署圖概述部署圖(Deploymentdiagram)也稱配置圖、實(shí)施圖,是對(duì)OO系統(tǒng)進(jìn)行物理建模的圖.部署圖用來(lái)顯示系統(tǒng)中計(jì)算結(jié)點(diǎn)的拓樸結(jié)構(gòu)和通信路徑與結(jié)點(diǎn)上運(yùn)行的軟構(gòu)件等.一個(gè)系統(tǒng)只有一個(gè)部署圖,部署圖通常用于理解分布式系統(tǒng).部署圖由體系工程師、網(wǎng)絡(luò)工程師、系統(tǒng)工程師等描述.部署圖概述部署圖中的基本概念(1)結(jié)點(diǎn)(node)結(jié)點(diǎn)是運(yùn)行時(shí)代表計(jì)算資源的物理元素,結(jié)點(diǎn)通常有內(nèi)存及處理能力.它可以是物理設(shè)備及運(yùn)行在該設(shè)備上的軟件系統(tǒng).結(jié)點(diǎn)有2種類型:處理器與設(shè)備處理器是能夠執(zhí)行軟件、具有計(jì)算能力的節(jié)點(diǎn)。設(shè)備是沒(méi)有計(jì)算能力的節(jié)點(diǎn),通常情況下都是通過(guò)其接口為外部提供某種服務(wù)。結(jié)點(diǎn)中的部署部署圖可以將結(jié)點(diǎn)和構(gòu)件結(jié)合起來(lái),以建模處理資源和軟件實(shí)現(xiàn)之間的關(guān)系。當(dāng)構(gòu)件駐留在某個(gè)節(jié)點(diǎn)時(shí),可以將它建模在圖上該結(jié)點(diǎn)的內(nèi)部。為顯示構(gòu)件之間的邏輯通信,需要添加一條表示依賴關(guān)系的虛線箭頭。部署圖中的基本概念(2)連接(connection)連接表示系統(tǒng)之間進(jìn)行交互的通信路徑,它表示2個(gè)硬件之間的關(guān)聯(lián)關(guān)系.可以有角色、多重性、約束、版型等.結(jié)點(diǎn)與構(gòu)件的比較相同點(diǎn)不同點(diǎn)二者都有名稱和關(guān)系;都可以有實(shí)例;都可以被嵌套;都可以參與交互。構(gòu)件是參與系統(tǒng)執(zhí)行的事物,而結(jié)點(diǎn)是執(zhí)行組件的事物;構(gòu)件表示邏輯元素的物理包裝,而結(jié)點(diǎn)表示組件的物理配置。部署圖的例子PC和外設(shè)與ISP連接的部署圖部署圖建模技術(shù)對(duì)系統(tǒng)中的結(jié)點(diǎn)建模。對(duì)結(jié)點(diǎn)之間的關(guān)聯(lián)關(guān)系建模。對(duì)駐留在結(jié)點(diǎn)上的構(gòu)件建模。對(duì)駐留在結(jié)點(diǎn)上的構(gòu)件之間的依賴關(guān)系建模。對(duì)建模的結(jié)果進(jìn)行精化和細(xì)化。確定結(jié)點(diǎn)和結(jié)點(diǎn)間的關(guān)聯(lián)關(guān)系IC卡讀卡器:提供給員工刷卡用,它將收集刷卡的時(shí)間信息,傳給應(yīng)用系統(tǒng),并存入數(shù)據(jù)庫(kù)中應(yīng)用服務(wù)器:用來(lái)負(fù)責(zé)從IC卡讀卡器中收集信息,并對(duì)管理人員提供員工設(shè)置、考勤查詢等功能數(shù)據(jù)庫(kù)服務(wù)器:用來(lái)存儲(chǔ)考勤數(shù)據(jù),由于該系統(tǒng)比較小,因此在物理上可以與應(yīng)用服務(wù)器合并客戶端軟件:提供給管理人員使用,連接應(yīng)用服務(wù)器,完成相應(yīng)操作確定結(jié)點(diǎn)內(nèi)的構(gòu)件和構(gòu)件間的依賴關(guān)聯(lián)客戶端:需使用Windows操作系統(tǒng),安裝客戶端軟件(假設(shè)名為KaoQing.exe)服務(wù)器:包含一個(gè)用Delphi開(kāi)發(fā)的服務(wù)端軟件(設(shè)為KqServer.exe),它需要與Access數(shù)據(jù)庫(kù)交互(設(shè)為KaoQing.mdb),并且需要通過(guò)IC卡讀卡器的驅(qū)動(dòng)程序(假設(shè)名為cardReader.dll)來(lái)實(shí)現(xiàn)與IC卡讀卡器通信IC卡讀寫(xiě)器:對(duì)于本系統(tǒng)而言,它是不執(zhí)行構(gòu)件的設(shè)備,不過(guò)為了方便員工,安裝了3個(gè)。example根據(jù)以下描述,試完成一個(gè)“銷售管理系統(tǒng)”的部署圖。該系統(tǒng)采用的硬件設(shè)備有:3臺(tái)聯(lián)想PC600作為終端機(jī),分別用作銷售管理、倉(cāng)庫(kù)管理和合同管理。1臺(tái)聯(lián)想PC6000作為網(wǎng)絡(luò)數(shù)據(jù)庫(kù)服務(wù)器。2臺(tái)Ls1000打印機(jī)。一臺(tái)為網(wǎng)絡(luò)共享、一臺(tái)為倉(cāng)庫(kù)管理專用??蛻魴C(jī)之間采用《TCP/IP》通信協(xié)議,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論