《面向?qū)ο蟮南到y(tǒng)分析與設(shè)計》構(gòu)件圖與部署圖_第1頁
《面向?qū)ο蟮南到y(tǒng)分析與設(shè)計》構(gòu)件圖與部署圖_第2頁
《面向?qū)ο蟮南到y(tǒng)分析與設(shè)計》構(gòu)件圖與部署圖_第3頁
《面向?qū)ο蟮南到y(tǒng)分析與設(shè)計》構(gòu)件圖與部署圖_第4頁
《面向?qū)ο蟮南到y(tǒng)分析與設(shè)計》構(gòu)件圖與部署圖_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、實(shí)現(xiàn)圖,實(shí)現(xiàn)圖顯示系統(tǒng)實(shí)現(xiàn)時的一些特性,包括構(gòu)件圖和配置圖。 構(gòu)件圖顯示代碼本身的邏輯結(jié)構(gòu) 配置圖顯示系統(tǒng)運(yùn)行時刻的結(jié)構(gòu),構(gòu)件圖,構(gòu)件圖,構(gòu)件 是系統(tǒng)的可替代的物理部分,是定義了良好接口的物理實(shí)現(xiàn)單元,它是系統(tǒng)中可以替代的部分,每個構(gòu)件體現(xiàn)了系統(tǒng)設(shè)計中的特定類的實(shí)現(xiàn),良好定義的構(gòu)件不直接依賴于其它構(gòu)件,而是依賴于其它構(gòu)件所支持的接口,在這種情況下,系統(tǒng)中的一個構(gòu)件可以被支持相同的接口的其它構(gòu)件所替代。,構(gòu)件與類,從構(gòu)件的定義上看,構(gòu)件和類十分相似: 二者都有名稱,都可以實(shí)現(xiàn)一組接口,都可以參與依賴、泛化和關(guān)聯(lián)關(guān)系,都可以被嵌套,都可以有實(shí)例,都可以參與交互。 構(gòu)件與類的區(qū)別: (1)類表示是對

2、實(shí)體的抽象,而構(gòu)件是對存在于計算機(jī)中的物理部件的抽象。也就是說,構(gòu)件是可以部署的,而類不能部署。 (2)構(gòu)件屬于軟件模塊,而非邏輯模塊,與類相比,它們處于不同的抽象級別。甚至可以說,構(gòu)件就是由一組類通過協(xié)作完成的。 (3)類可以直接擁有操作和屬性,而構(gòu)件僅擁有可以通過其接口訪問的操作。,構(gòu)件分類,按照構(gòu)件在系統(tǒng)中的角色,把構(gòu)件分為3種類型: 1)配置構(gòu)件:組成系統(tǒng)的基礎(chǔ)構(gòu)件,是執(zhí)行其它構(gòu)件的基礎(chǔ)平臺。如,操作系統(tǒng)、java虛擬機(jī)(JVM) 、數(shù)據(jù)庫管理系統(tǒng)都屬于配置構(gòu)件。 2)工作產(chǎn)品構(gòu)件:這類構(gòu)件主要是開發(fā)過程的中間產(chǎn)物,如,創(chuàng)建構(gòu)件時的源代碼文件及數(shù)據(jù)文件都屬于工作產(chǎn)品構(gòu)件。這些構(gòu)件并不是

3、直接地參與系統(tǒng)運(yùn)行。 3)執(zhí)行構(gòu)件:在運(yùn)行時創(chuàng)建的構(gòu)件。例如由DLL實(shí)例化形成的COM+對象、Servlets、XML文檔都屬于執(zhí)行構(gòu)件。,7,構(gòu)件圖提供當(dāng)前模型的物理視圖,對系統(tǒng)的靜態(tài)實(shí)現(xiàn)視圖建模。構(gòu)件圖顯示一個系統(tǒng)物理設(shè)計時,構(gòu)件所映射的類和對象的配置。 一個構(gòu)件圖可以表示一個系統(tǒng)全部或者部分的構(gòu)件體系。從組織內(nèi)容看,構(gòu)件圖顯示軟件構(gòu)件的組織以及構(gòu)件之間的依賴關(guān)系,包括源代碼構(gòu)件、二進(jìn)制代碼構(gòu)件以及可執(zhí)行構(gòu)件。 構(gòu)件圖是對OO系統(tǒng)物理方面建模的2個圖之一,構(gòu)件圖的概念,構(gòu)件圖,構(gòu)件圖(component diagram): 描述構(gòu)件及其相互關(guān)系的圖。 構(gòu)件之間是依賴關(guān)系。通常, 構(gòu)件圖包含

4、3種元素: 構(gòu)件、接口和依賴關(guān)系。每個構(gòu)件實(shí)現(xiàn)一些接口,并使用另一些接口。,構(gòu)件圖的概念,構(gòu)件圖主要用于描述各種軟件構(gòu)件之間的依賴關(guān)系,例如,可執(zhí)行文件和源文件之間的依賴關(guān)系,所設(shè)計的系統(tǒng)中的構(gòu)件的表示法及這些構(gòu)件之間的關(guān)系構(gòu)成了構(gòu)件圖。 與所有UML的其它圖一樣,構(gòu)件圖可以包括注釋、約束、包。,10,構(gòu)件圖的作用,構(gòu)件圖的基本目的是:使系統(tǒng)人員和開發(fā)人員能夠從整體上了解系統(tǒng)的所有物理部件,同時,也使我們知道如何對構(gòu)件進(jìn)行打包,以便交付給最終客戶,最后,構(gòu)件圖顯示了被開發(fā)系統(tǒng)所包含的構(gòu)件之間的依賴關(guān)系。 構(gòu)件圖從軟件架構(gòu)的角度來描述一個系統(tǒng)的主要功能,如系統(tǒng)分成幾個子系統(tǒng),每個子系統(tǒng)包括哪些類

5、、包和構(gòu)件,它們之間的關(guān)系以及它們分配到哪些節(jié)點(diǎn)上等。 使用構(gòu)件圖可以清楚地看出系統(tǒng)的結(jié)構(gòu)和功能。方便項(xiàng)目組的成員制定工作目標(biāo)和了解工作情況,同時,最重要的一點(diǎn)是有利于軟件的復(fù)用。 從宏觀的角度上,構(gòu)件圖把軟件看作多個獨(dú)立構(gòu)件組裝而成的集合,每個構(gòu)件可以被實(shí)現(xiàn)相同接口的其它構(gòu)件替換。,12,構(gòu)件的表示,構(gòu)件是定義了良好接口的物理實(shí)現(xiàn)單元,是系統(tǒng)中可替換的物理部件。 構(gòu)件可以是源代碼構(gòu)件、二進(jìn)制構(gòu)件或一個可執(zhí)行的構(gòu)件 在UML中,構(gòu)件用一個左側(cè)帶有突出兩個小矩形的矩形來表示。,帶版型的構(gòu)件,構(gòu)件的表示,標(biāo)識接口的構(gòu)件表示法 對于一個構(gòu)件而言,它有兩類接口:提供(provided)接口和所需(re

6、quired)的接口。標(biāo)識接口的構(gòu)件表示方法也有3種。,標(biāo)識接口的構(gòu)件3種表示方法,構(gòu)件間的關(guān)系,構(gòu)件有兩組接口,供給接口為其它構(gòu)件提供服務(wù),需求接口使用其它構(gòu)件提供的服務(wù)因此,構(gòu)件間的關(guān)系就是依賴關(guān)系我們把提供服務(wù)的構(gòu)件稱為提供者,把使用服務(wù)的構(gòu)件稱為客戶 在UML中,構(gòu)件圖中依賴關(guān)系的表示方法與類圖中依賴關(guān)系相同,都是一個由客戶指向提供者的虛線箭頭。,15,接口,接口用于描述構(gòu)件所提供的服務(wù)的一組操作集合,指定了構(gòu)件的外部可見操作。構(gòu)件和接口之間的關(guān)系叫做實(shí)現(xiàn)關(guān)系??梢酝ㄟ^接口訪問一個構(gòu)件。 接口和構(gòu)件之間的關(guān)系分為兩種: 實(shí)現(xiàn)關(guān)系(Realization) 依賴關(guān)系(Dependency

7、) 在圖中,接口和構(gòu)件之間用實(shí)線連接表示實(shí)現(xiàn)關(guān)系;而接口和構(gòu)件之間用虛線箭頭連接則表示依賴關(guān)系。,16,構(gòu)件與接口之間的關(guān)系: 實(shí)現(xiàn)關(guān)系和依賴關(guān)系,導(dǎo)出接口,導(dǎo)入接口,為了便于構(gòu)件之間替換,建議使用以上依賴關(guān)系,構(gòu)件圖分類,構(gòu)件圖可以分為兩種:簡單構(gòu)件圖和嵌套構(gòu)件圖。 1 簡單構(gòu)件圖 我們可以把相互協(xié)作的類,組織成一個構(gòu)件。利用構(gòu)件圖可以讓軟件開發(fā)者知道系統(tǒng)是由哪些可執(zhí)行的構(gòu)件組成的,這樣,以構(gòu)件為單位來看待系統(tǒng)時,讓開發(fā)者清楚的看到軟件系統(tǒng)的體系結(jié)構(gòu)。,構(gòu)件圖分類,(1)用戶界面層:采用JSP頁面實(shí)現(xiàn)用戶界面。我們通過構(gòu)造型Java Server page來表示構(gòu)件。這一部分的構(gòu)件,主要由邊

8、界類組成。 (2)業(yè)務(wù)邏輯層:在實(shí)現(xiàn)上主要采用了JavaBean技術(shù)。使用構(gòu)造型JavaBean來表示這一層的構(gòu)件。這些構(gòu)件主要由實(shí)體類組合而成。 (3)數(shù)據(jù)訪問層:該層將所有的數(shù)據(jù)訪問操作封裝在一個JavaBean中(如果是大型應(yīng)用,可能封裝成為EJB),標(biāo)明了它是JDBC的一個實(shí)現(xiàn)。 在這個例子中,對可執(zhí)行程序的體系結(jié)構(gòu)進(jìn)行了建模,以幫助開發(fā)者了解可執(zhí)行程序模塊之間的關(guān)聯(lián)關(guān)系,從而從宏觀上認(rèn)識系統(tǒng)。,構(gòu)件圖分類,銷售管理服務(wù)器中包含兩個構(gòu)件:一個是處理收銀機(jī)發(fā)送來的銷售消息,完成交易處理;另一個是財務(wù)接口,負(fù)責(zé)處理與財務(wù)系統(tǒng)的連接,這時交易處理程序就委托財務(wù)接口來完成與財務(wù)系統(tǒng)的數(shù)據(jù)傳送。

9、 在上圖中,銷售管理服務(wù)器所提供的接口和所需的接口與構(gòu)件連接的點(diǎn)上,都有一個小矩形,它表示的是“端口”。這些端口將通過帶箭頭的實(shí)線與具體的子構(gòu)件連接,表示該接口的提供者或需求者。,嵌套構(gòu)件圖,2 嵌套的構(gòu)件圖 使用嵌套的構(gòu)件圖來表示構(gòu)件的內(nèi)部結(jié)構(gòu)。,構(gòu)件圖應(yīng)用,構(gòu)件圖描述了軟件的組成和具體結(jié)構(gòu),表示了系統(tǒng)的靜態(tài)部分。它能夠幫助開發(fā)人員從總體上認(rèn)識系統(tǒng)。常采用構(gòu)件圖來描述可執(zhí)行程序的結(jié)構(gòu)、源代碼、物理數(shù)據(jù)庫組成和結(jié)構(gòu)。 1 對可執(zhí)行程序建模 通過構(gòu)件圖,可以清晰地表示出各個可執(zhí)行文件、鏈接庫、數(shù)據(jù)庫、幫助文件和資源文件等其它可運(yùn)行的物理構(gòu)件之間的關(guān)系。在對可執(zhí)行程序的結(jié)構(gòu)進(jìn)行建模時,通常應(yīng)遵從以

10、下原則: (1)首先標(biāo)識要建模的構(gòu)件。 (2)理解和標(biāo)識每個構(gòu)件的類型、接口和作用。 (3)標(biāo)識構(gòu)件間的關(guān)系。,構(gòu)件圖應(yīng)用,例如,有一個語音呼叫中心程序callcenter.exe,使用了三匯的語音卡的驅(qū)動程序shp_a3.dll,以及相應(yīng)的TTS(文本轉(zhuǎn)語音)引擎sh_ttsu.dll,現(xiàn)在我們用構(gòu)件圖來描述這三個構(gòu)件的關(guān)系。,構(gòu)件圖應(yīng)用,2 對源代碼進(jìn)行建模,構(gòu)件圖應(yīng)用,例如:singal.h是一個頭文件,被interp.cpp和signal.cpp引用,其中interp.cpp還引用了另一個頭文件irq.h,而device.cpp又對interp.cpp有編譯依賴關(guān)系。那么用構(gòu)件圖表示它

11、們間的關(guān)系。,部署圖,部署圖概述,部署圖(Deployment diagram)也稱配置圖、實(shí)施圖, 是對OO系統(tǒng)進(jìn)行物理建模的圖. 部署圖用來顯示系統(tǒng)中計算結(jié)點(diǎn)的拓樸結(jié)構(gòu)和通信路徑與結(jié)點(diǎn)上運(yùn)行的軟構(gòu)件等. 一個系統(tǒng)只有一個部署圖, 部署圖通常用于理解分布式系統(tǒng). 部署圖由體系工程師、網(wǎng)絡(luò)工程師、系統(tǒng)工程師等描述.,部署圖概述,部署圖,部署圖(deployment diagram,也稱為配置圖)是用來顯示系統(tǒng)中軟件和硬件的物理架構(gòu)。從部署圖中,可以了解到軟件和硬件組件之間的物理關(guān)系以及軟件組件在處理節(jié)點(diǎn)上的分布情況。使用部署圖可以顯示運(yùn)行時系統(tǒng)的結(jié)構(gòu),同時還表明了構(gòu)成應(yīng)用程序的硬件和軟件元素的

12、配置和部署方式。,部署圖的概念,部署圖描述了系統(tǒng)中包括的計算機(jī)和其他的硬件設(shè)備,如這些計算機(jī)和設(shè)備的位置以及它們之間是如何進(jìn)行相互連接的,即,部署圖描述系統(tǒng)中的硬件節(jié)點(diǎn)及節(jié)點(diǎn)之間如何連接的圖。,部署圖的概念,部署圖的作用 一個UML部署圖描述了一個運(yùn)行時的硬件結(jié)點(diǎn),以及在這些結(jié)點(diǎn)上運(yùn)行的軟件構(gòu)件的靜態(tài)視圖。 部署圖顯示了系統(tǒng)的硬件,安裝在硬件上的軟件,以及用于連接異構(gòu)機(jī)器之間的中間件。 創(chuàng)建一個部署模型的目的包括 描述系統(tǒng)投產(chǎn)的相關(guān)問題 描述系統(tǒng)與生產(chǎn)環(huán)境中的其它系統(tǒng)間的依賴關(guān)系,這些系統(tǒng)可能是已經(jīng)存在,或是將要引入的。 描述一個商業(yè)應(yīng)用主要的部署結(jié)構(gòu)。 設(shè)計一個嵌入系統(tǒng)的硬件和軟件結(jié)構(gòu)。 描

13、述一個組織的硬件/網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)。 部署圖的組成元素 部署圖的組成元素包括節(jié)點(diǎn)、節(jié)點(diǎn)間的連接。連接把多個節(jié)點(diǎn)關(guān)連在一起,構(gòu)成一個部署圖。,部署圖的表示,部署圖包含兩個部分:節(jié)點(diǎn)和連接。 1 節(jié)點(diǎn) 節(jié)點(diǎn)代表一個運(yùn)行時計算機(jī)系統(tǒng)中的硬件資源。節(jié)點(diǎn)通常擁有一些內(nèi)存,并具有處理能力。例如一臺計算機(jī)、一個工作站等其它計算設(shè)備都屬于節(jié)點(diǎn)。 在UML中,節(jié)點(diǎn)用一個立方體來表示。 每一個節(jié)點(diǎn)都必須有一個區(qū)別于其他節(jié)點(diǎn)的名稱。節(jié)點(diǎn)的名稱是一個字符串,位于節(jié)點(diǎn)圖標(biāo)的內(nèi)部。 節(jié)點(diǎn)的名稱有2種表示方法:簡單名字和帶路徑的名字。簡單名字就是一個文字串;帶路徑的名字指在簡單名字前加上節(jié)點(diǎn)所屬的包名。下面的立方體表示一個節(jié)點(diǎn)

14、,其名稱為Node,部署圖的表示,按照節(jié)點(diǎn)是否有計算能力,把節(jié)點(diǎn)分為兩種類型:處理器和設(shè)備,分別用構(gòu)造型Processor和構(gòu)造型Device表示處理器和設(shè)備。 (1)處理器(Processor) 處理器是能夠執(zhí)行軟件、具有計算能力的節(jié)點(diǎn)。 (2).設(shè)備(Device) 設(shè)備是沒有計算能力的節(jié)點(diǎn),通常情況下都是通過其接口為外部提供某種服務(wù),例如打印機(jī)、IC讀寫器,如果我們的系統(tǒng)不考慮它們內(nèi)部的芯片,就可以把它們看作設(shè)備。,處理器節(jié)點(diǎn)的表示,設(shè)備節(jié)點(diǎn)的表示,部署圖的表示,(3)節(jié)點(diǎn)中的構(gòu)件 當(dāng)某些構(gòu)件駐留在某個節(jié)點(diǎn)時,可以在該節(jié)點(diǎn)的內(nèi)部描述這些構(gòu)件。 對于一張部署圖而言,最有價值的信息就是節(jié)點(diǎn)上

15、的內(nèi)容,也就是安裝在節(jié)點(diǎn)中的構(gòu)件。對于這些構(gòu)件,可以直接寫在節(jié)點(diǎn)中,也可以用構(gòu)件表示,或用UML2.0規(guī)范推薦的artifact、database、deploymentSpec等構(gòu)造型來表述構(gòu)件。,部署圖的表示,對節(jié)點(diǎn)內(nèi)駐留的構(gòu)件描述,部署圖的表示,(1)直接描述:例如在B/S客戶端中,必須安裝“Web瀏覽器”(并通過約束說明需要IE6.0以上版本或Firefox1.5以上版本)。通常,對于不是由開發(fā)團(tuán)隊生成的制品,例如IIS服務(wù)器這種描述方式,也可以通過“約束”來描述它。 (2)artifact構(gòu)造型:用來表示文件、構(gòu)件等制品,例如IIS服務(wù)器上的swWeb.dll、BusinessRule

16、.dll、DateAccess.dll及C/S客戶端上的se.exe。 (3)database構(gòu)造型:用來表示一個實(shí)際的數(shù)據(jù)庫(對應(yīng)Oracle的scheme),例如在數(shù)據(jù)庫服務(wù)器上的sw。 (4)deploymentSpec構(gòu)造型:用來表示部署描述,通常對關(guān)鍵的配置文件進(jìn)行建模,還可以在構(gòu)造塊中直接指出具體參數(shù)的值。 對于這些構(gòu)造型,可以使用依賴關(guān)系來表示他們之間的相互關(guān)系,甚至可以表示跨節(jié)點(diǎn)之間的依賴(入DataAccess.dll到sw之間的依賴連接)。另外,在圖中,使用了一個directory構(gòu)造型,這并不是一個UML標(biāo)準(zhǔn)構(gòu)造型,它只是使用者的一個擴(kuò)展。,部署圖的表示,節(jié)點(diǎn)屬性 象類一

17、樣,可以為一個節(jié)點(diǎn)提供屬性描述,如,處理器速度、內(nèi)存容量、網(wǎng)卡數(shù)量等屬性。可以為節(jié)點(diǎn)其提供啟動、關(guān)機(jī)等操作屬性 。 節(jié)點(diǎn)與構(gòu)件的區(qū)別 節(jié)點(diǎn)表示一個硬件部件,構(gòu)件表示一個軟件部件。兩者有許多相同之處,例如二者都有名稱,都可以參與依賴、泛化和關(guān)聯(lián)關(guān)系,都可以被嵌套,都可以有實(shí)例,都可以參與交互。但它們之間也存在明顯的區(qū)別:構(gòu)件是軟件系統(tǒng)執(zhí)行的主體,而節(jié)點(diǎn)是執(zhí)行構(gòu)件的平臺;構(gòu)件是邏輯部件,而節(jié)點(diǎn)表示是物理部件,在物理部件上部署構(gòu)件。,部署圖的表示,2 連接 部署圖用連接表示各節(jié)點(diǎn)之間通信路徑,連接用一條實(shí)線表示。對于企業(yè)的計算機(jī)系統(tǒng)硬件設(shè)備間的關(guān)系,通常關(guān)心的是節(jié)點(diǎn)之間是如何連接的,因此描述節(jié)點(diǎn)間的

18、關(guān)系一般不使用名稱,而是使用構(gòu)造型描述。下圖是節(jié)點(diǎn)之間連接的例子。,部署圖應(yīng)用,在實(shí)際的應(yīng)用中,部署圖主要用在設(shè)計和實(shí)現(xiàn)兩個階段。 1.設(shè)計階段 在這一階段,部署圖主要用來描述硬件節(jié)點(diǎn)以及節(jié)點(diǎn)之間的連接。 上圖并沒有描述節(jié)點(diǎn)內(nèi)的構(gòu)件。在設(shè)計階段,還沒有創(chuàng)建出軟件構(gòu)件。,僅描述硬件節(jié)點(diǎn)的部署圖,部署圖應(yīng)用,2.實(shí)現(xiàn)階段 在實(shí)現(xiàn)階段,已經(jīng)生產(chǎn)出了軟件構(gòu)件,因此,可以把構(gòu)件分配給對應(yīng)的節(jié)點(diǎn)。 實(shí)際應(yīng)用當(dāng)中,部署圖主要用來對嵌入式系統(tǒng)、客戶機(jī)/服務(wù)器系統(tǒng)、分布式系統(tǒng)進(jìn)行建模,而且能夠起到很好的作用。,描述了節(jié)點(diǎn)內(nèi)部署的構(gòu)件,部署圖應(yīng)用,3嵌入式系統(tǒng)建模 如果采用部署圖對嵌入式系統(tǒng)進(jìn)行了建模,通過部署圖

19、,硬件工程師和軟件開發(fā)者之間就能做更好的交流。 在對嵌入式系統(tǒng)進(jìn)行建模時,重點(diǎn)在于描述處理器和設(shè)備之間的關(guān)系;可以考慮對處理器和設(shè)備采取用更直觀的圖標(biāo)。例如,一個航標(biāo)RTU的嵌入式系統(tǒng)的部署圖示。,描述嵌入式系統(tǒng)的部署圖,部署圖應(yīng)用,4客戶機(jī)/服務(wù)器和分布式系統(tǒng)建模 當(dāng)開發(fā)的軟件要運(yùn)行在多臺計算機(jī)上時,就必須將軟件構(gòu)件以合理的方式部署在各個節(jié)點(diǎn)上。其中客戶機(jī)/服務(wù)器結(jié)構(gòu)就是一種典型的分布式系統(tǒng)模型,它包含三層B/S/S結(jié)構(gòu)和兩層C/S結(jié)構(gòu)。 對于大型分布式系統(tǒng)可能還包括負(fù)載均衡、集群等部署結(jié)構(gòu),部署圖的引入能夠很好地對其進(jìn)行表述。,部署圖建模技術(shù),對系統(tǒng)中的結(jié)點(diǎn)建模。 對結(jié)點(diǎn)之間的關(guān)聯(lián)關(guān)系建模

20、。 對駐留在結(jié)點(diǎn)上的構(gòu)件建模。 對駐留在結(jié)點(diǎn)上的構(gòu)件之間的依賴關(guān)系建模。 對建模的結(jié)果進(jìn)行精化和細(xì)化。,確定結(jié)點(diǎn)和結(jié)點(diǎn)間的關(guān)聯(lián)系,IC卡讀卡器:提供給員工刷卡用,它將收集刷卡的時間信息,傳給應(yīng)用系統(tǒng),并存入數(shù)據(jù)庫中 應(yīng)用服務(wù)器:用來負(fù)責(zé)從IC卡讀卡器中收集信息,并對管理人員提供員工設(shè)置、考勤查詢等功能 數(shù)據(jù)庫服務(wù)器:用來存儲考勤數(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ù)器:包含一個用Delp

21、hi開發(fā)的服務(wù)端軟件(設(shè)為KqServer.exe),它需要與Access數(shù)據(jù)庫交互(設(shè)為KaoQing.mdb),并且需要通過IC卡讀卡器的驅(qū)動程序(假設(shè)名為cardReader.dll)來實(shí)現(xiàn)與IC卡讀卡器通信 IC卡讀寫器:對于本系統(tǒng)而言,它是不執(zhí)行構(gòu)件的設(shè)備,不過為了方便員工,安裝了3個。,45,部署圖的建模,如何建模部署圖 創(chuàng)建部署圖含有如下4項(xiàng)任務(wù): 1)添加節(jié)點(diǎn)。 2)添加通信關(guān)聯(lián)。 3)添加構(gòu)件和其他內(nèi)容,如類和對象。 4)添加依賴關(guān)系。,46,部署圖的建模,例 建模一個網(wǎng)上掃描系統(tǒng)的部署圖。其詳細(xì)的需求如下所示: 掃描儀通過內(nèi)部的PCI總線連接到網(wǎng)卡。需要編寫代碼來控制掃描儀

22、,代碼駐留在掃描儀內(nèi)部。 掃描儀通過無線網(wǎng)卡與插入到Web服務(wù)器KONG的無線hub通信,服務(wù)器通過HTTP協(xié)議向客戶PC機(jī)提供Web頁。 Web服務(wù)器安裝定制的Web服務(wù)器軟件,通過專用數(shù)據(jù)訪問構(gòu)件與產(chǎn)品數(shù)據(jù)庫交互。 在客戶的PC機(jī)上將提供專用的瀏覽器軟件,它運(yùn)行產(chǎn)品查詢插件,只與定制的Web服務(wù)器通信。,47,部署圖的建模,1添加節(jié)點(diǎn) 第一項(xiàng)任務(wù)是確定系統(tǒng)的節(jié)點(diǎn)。下圖演示了上面需求列表中提及的所有硬件。,48,部署圖的建模,2. 添加通信關(guān)聯(lián) 為確定的節(jié)點(diǎn)添加通信關(guān)聯(lián)。從需求列表中可以確定如下所示通信關(guān)聯(lián): 掃描儀通過內(nèi)部的PCI總線連接到網(wǎng)卡。 網(wǎng)卡通過無線電波與無線hub通信。 無線hub通

溫馨提示

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

評論

0/150

提交評論