版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、-物理視圖物理視圖使用使用UML進行面向進行面向?qū)ο蟮姆治鰧ο蟮姆治?使用使用UML進行面向進行面向?qū)ο蟮姆治鰧ο蟮姆治?董瑞志董瑞志Email: hello_MSN: nature_聯(lián)系電話:聯(lián)系電話言引言(1/3) 建筑公司的最終產(chǎn)品是存在于現(xiàn)實世界建筑公司的最終產(chǎn)品是存在于現(xiàn)實世界中的物理建筑??梢酝ㄟ^建立邏輯模型中的物理建筑??梢酝ㄟ^建立邏輯模型來可視化、詳述、文檔化建筑物的外觀來可視化、詳述、文檔化建筑物的外觀的設計決策,如布局、結構、墻壁、供的設計決策,如布局、結構、墻壁、供電、管道等,并建立文檔保存。當確實電、管道等,并建立文檔保存。當確實建造了該建筑物
2、之后,這些要素都變成建造了該建筑物之后,這些要素都變成了現(xiàn)實中的事物。了現(xiàn)實中的事物。引言引言(2/3) 邏輯的、物理的視圖都是必要的。如果邏輯的、物理的視圖都是必要的。如果你正在一個可以任意處理、且拆除和重你正在一個可以任意處理、且拆除和重建代價極低的建筑物,你或許可以不做建代價極低的建筑物,你或許可以不做任何邏輯建模,而直接構造物理建筑。任何邏輯建模,而直接構造物理建筑。但是如果你正在建造一個改造但是如果你正在建造一個改造/失敗代價失敗代價特別高的建筑時候,同時建立邏輯和物特別高的建筑時候,同時建立邏輯和物理模型就成了一種必需。理模型就成了一種必需。設想建造一個狗窩和一個高層大廈的區(qū)別!?
3、設想建造一個狗窩和一個高層大廈的區(qū)別???引言引言(3/3) 開發(fā)一個軟件密集型的系統(tǒng)也是如此:開發(fā)一個軟件密集型的系統(tǒng)也是如此:需要建立邏輯模型可視化、詳述、文檔需要建立邏輯模型可視化、詳述、文檔化系統(tǒng)術語、系統(tǒng)的部分的協(xié)調(diào)化系統(tǒng)術語、系統(tǒng)的部分的協(xié)調(diào)/行為等行為等諸多方面的決策。這些邏輯視圖存在于諸多方面的決策。這些邏輯視圖存在于概念世界中,而物理事物則存在于概念世界中,而物理事物則存在于Byte世界中。世界中。 軟件系統(tǒng)的邏輯視圖最終轉(zhuǎn)換成存在于軟件系統(tǒng)的邏輯視圖最終轉(zhuǎn)換成存在于物理節(jié)點上,可以通過直接間接方式參物理節(jié)點上,可以通過直接間接方式參與到可執(zhí)行的系統(tǒng)之中。與到可執(zhí)行的系統(tǒng)之中。
4、概述概述(1/3) 系統(tǒng)模型的大部分內(nèi)容反映了系統(tǒng)的邏系統(tǒng)模型的大部分內(nèi)容反映了系統(tǒng)的邏輯和設計方面的信息,并且獨立于系統(tǒng)輯和設計方面的信息,并且獨立于系統(tǒng)最終的實現(xiàn)單元。然而為了重用和可操最終的實現(xiàn)單元。然而為了重用和可操作性的目的,系統(tǒng)實現(xiàn)方面的信息很重作性的目的,系統(tǒng)實現(xiàn)方面的信息很重要。要。 UML使用實現(xiàn)視圖和部署視圖表示系統(tǒng)使用實現(xiàn)視圖和部署視圖表示系統(tǒng)的實現(xiàn)單元。的實現(xiàn)單元。概述概述(2/3) 實現(xiàn)視圖將系統(tǒng)中可重用的塊包裝成具實現(xiàn)視圖將系統(tǒng)中可重用的塊包裝成具有可替代性的物理單元,這些物理單元有可替代性的物理單元,這些物理單元被稱為構件。實現(xiàn)視圖使用構件和構件被稱為構件。實現(xiàn)視
5、圖使用構件和構件間的接口和依賴關系表示設計單元的具間的接口和依賴關系表示設計單元的具體實現(xiàn)。構件是系統(tǒng)高層的可重用的組體實現(xiàn)。構件是系統(tǒng)高層的可重用的組成部分。成部分。 實現(xiàn)視圖中包含構件圖的建模機制。實現(xiàn)視圖中包含構件圖的建模機制。概述概述(3/3) 部署視圖是表示分布式系統(tǒng)中節(jié)點、各個節(jié)點部署視圖是表示分布式系統(tǒng)中節(jié)點、各個節(jié)點上的構件以及節(jié)點上構件中對象的視圖。上的構件以及節(jié)點上構件中對象的視圖。 它表達了運行時的計算資源的物理布置。這些它表達了運行時的計算資源的物理布置。這些計算單元被稱為節(jié)點。在運行時節(jié)點包含構件計算單元被稱為節(jié)點。在運行時節(jié)點包含構件和對象。構件和對象的分配可以靜態(tài)
6、的,它們和對象。構件和對象的分配可以靜態(tài)的,它們也可以在節(jié)點間遷移。也可以在節(jié)點間遷移。 如果含有依賴關系的構件實例放置在不同的節(jié)如果含有依賴關系的構件實例放置在不同的節(jié)點上,部署視圖可以展示出執(zhí)行過程中的瓶頸點上,部署視圖可以展示出執(zhí)行過程中的瓶頸問題。問題。 部署視圖中包含部署圖的建模機制。部署視圖中包含部署圖的建模機制。構件和構件圖構件和構件圖構件構件(1/4) 構件是定義了良好接口的物理實現(xiàn)單元,構件是定義了良好接口的物理實現(xiàn)單元,它是系統(tǒng)中可替換的部分。每個構件體它是系統(tǒng)中可替換的部分。每個構件體現(xiàn)了系統(tǒng)設計中特定類的實現(xiàn);現(xiàn)了系統(tǒng)設計中特定類的實現(xiàn); 一般情況下構件表示將類、接口、
7、協(xié)作一般情況下構件表示將類、接口、協(xié)作等邏輯元素打包形成的物理模塊;等邏輯元素打包形成的物理模塊; 構件只在實現(xiàn)域中存在,它們是計算機構件只在實現(xiàn)域中存在,它們是計算機的物理組成部分,可以與其他構件相連,的物理組成部分,可以與其他構件相連,由類似構件替換、移動、獲得等。由類似構件替換、移動、獲得等。構件構件(2/4) 良好定義的構件不直接依賴于其他構建良好定義的構件不直接依賴于其他構建而依賴于構建所支持的接口。在這種情而依賴于構建所支持的接口。在這種情系統(tǒng)中的一個構件可以被支持正確的接系統(tǒng)中的一個構件可以被支持正確的接口的其他構件所替代。口的其他構件所替代。構件構件(3/4) 構件具有它們支持
8、的接口和需要從其他構件具有它們支持的接口和需要從其他構件得到的接口。接口是被軟件構件得到的接口。接口是被軟件/硬件支硬件支持的一個操作集。通過使用命名的接口持的一個操作集。通過使用命名的接口可以避免在系統(tǒng)的各個構件之間直接發(fā)可以避免在系統(tǒng)的各個構件之間直接發(fā)生依賴關系,有利于新構件的替換。生依賴關系,有利于新構件的替換。構件構件(4/4) 構件視圖展示了構件之間相互依賴的網(wǎng)構件視圖展示了構件之間相互依賴的網(wǎng)絡結構,它有兩種表示形式:絡結構,它有兩種表示形式: 表示為一個包含依賴關系的可用構件的集合,表示為一個包含依賴關系的可用構件的集合,它是構造系統(tǒng)物理單元;它是構造系統(tǒng)物理單元; 表示為一個
9、配置好的系統(tǒng),用來建造它的構表示為一個配置好的系統(tǒng),用來建造它的構件已被篩選出。在這種形式下,每個構件與件已被篩選出。在這種形式下,每個構件與為它服務的其他構件連接,這些連接必須與為它服務的其他構件連接,這些連接必須與構件的接口要求匹配。構件的接口要求匹配。構件的特征構件的特征 構件具有兩個特征構件具有兩個特征: 代碼特征代碼特征構件包含了實現(xiàn)類或其它元素的代碼;構件包含了實現(xiàn)類或其它元素的代碼; 身份特征身份特征一個有身份的構件擁有身份和狀態(tài),它帶有一個有身份的構件擁有身份和狀態(tài),它帶有定位上的物理對象,可以有屬性、與其他構定位上的物理對象,可以有屬性、與其他構件的關系等信息。如果一個構件沒
10、有身份,件的關系等信息。如果一個構件沒有身份,則它的所有實例都是相同的,此時構件實例則它的所有實例都是相同的,此時構件實例沒有值或沒有狀態(tài);沒有值或沒有狀態(tài);當對象要求有身份的構件提供服務時,必須選擇一個特定的當對象要求有身份的構件提供服務時,必須選擇一個特定的構件實例。因為每個有身份的構件都有狀態(tài),因此要求不同構件實例。因為每個有身份的構件都有狀態(tài),因此要求不同的實例產(chǎn)生不同的結果。的實例產(chǎn)生不同的結果。構件的表示法構件的表示法 構件用一邊有兩個小矩形的長方形表示,它可構件用一邊有兩個小矩形的長方形表示,它可以用實線和代表構件接口的圓圈相連,如下圖以用實線和代表構件接口的圓圈相連,如下圖所示
11、:所示:構件的名稱構件的名稱 每一個構件具有一個有別于其他構件的名稱。每一個構件具有一個有別于其他構件的名稱。 構件名稱可以是簡單名(單獨一個字符串),構件名稱可以是簡單名(單獨一個字符串),也可以是路徑名(在簡單名前加上構件所在包也可以是路徑名(在簡單名前加上構件所在包的名稱信息),也可以使用標記值或表示其細的名稱信息),也可以使用標記值或表示其細節(jié)的分隔欄修飾。節(jié)的分隔欄修飾。構件與類構件與類(1/3) 相同點相同點 都可以是實現(xiàn)一組接口;都可以是實現(xiàn)一組接口; 都可以參與依賴、泛化、關聯(lián)關系;都可以參與依賴、泛化、關聯(lián)關系; 都可以嵌套;都可以嵌套; 都可以具有實例;都可以具有實例; 都
12、可以參與交互;都可以參與交互;構件與類構件與類(2/3)不同點不同點類表示邏輯抽象,而構件表示存在于類表示邏輯抽象,而構件表示存在于Byte世界的世界的物理抽象,即構件可以存在于節(jié)點之上;物理抽象,即構件可以存在于節(jié)點之上;這一項這一項差異指明了建模時候是采用構建還是類的決策基差異指明了建模時候是采用構建還是類的決策基礎礎構件表示的是物理模塊而不是邏輯模塊,而類處構件表示的是物理模塊而不是邏輯模塊,而類處于不同的抽象級別;于不同的抽象級別;可以看出類和構件的關系,可以看出類和構件的關系,構件是類等邏輯元素的物理實現(xiàn),可以采用顯式構件是類等邏輯元素的物理實現(xiàn),可以采用顯式展示類和構件的依賴關系展
13、示類和構件的依賴關系類可以擁有屬性和操作,而構件擁有得只能夠是類可以擁有屬性和操作,而構件擁有得只能夠是通過其接口訪問的操作;通過其接口訪問的操作;特別指出接口是類和構特別指出接口是類和構件的橋梁,它連接了系統(tǒng)的邏輯模型和物理模型件的橋梁,它連接了系統(tǒng)的邏輯模型和物理模型構件與類構件與類(3/3)構件和接口(1/5) 接口是用來描述一個類或構件所提供服務的集接口是用來描述一個類或構件所提供服務的集合。構件和接口的關系是很重要的,幾乎所有合。構件和接口的關系是很重要的,幾乎所有流行的構建技術,如流行的構建技術,如CORBA、EJB等都把接等都把接口作為構件綁定的粘合劑??谧鳛闃嫾壎ǖ恼澈蟿?。
14、可以通過說明代表系統(tǒng)中主要銜接點的接口來可以通過說明代表系統(tǒng)中主要銜接點的接口來分解系統(tǒng)的物理實現(xiàn),然后提供實現(xiàn)這些接口分解系統(tǒng)的物理實現(xiàn),然后提供實現(xiàn)這些接口的構件以及通過這些接口訪問其他服務的構件。的構件以及通過這些接口訪問其他服務的構件?;谶@種機制,能夠產(chǎn)生獨立于物理節(jié)點的、基于這種機制,能夠產(chǎn)生獨立于物理節(jié)點的、可替換的物理系統(tǒng)??商鎿Q的物理系統(tǒng)。構件和接口(2/5) 可以使用如下方式顯示構件和接口的關系:可以使用如下方式顯示構件和接口的關系: 用簡略的圖形符號顯示接口,實現(xiàn)接口的構件用一用簡略的圖形符號顯示接口,實現(xiàn)接口的構件用一個簡略的實現(xiàn)關系聯(lián)接到接口上;個簡略的實現(xiàn)關系聯(lián)接到
15、接口上; 采用擴展形式顯示接口,這種方式可以顯示接口擁采用擴展形式顯示接口,這種方式可以顯示接口擁有的操作。實現(xiàn)接口的構件用完整的實現(xiàn)關系聯(lián)接有的操作。實現(xiàn)接口的構件用完整的實現(xiàn)關系聯(lián)接到接口上。到接口上。 無論采用上述那種方式,通過接口訪問其他構無論采用上述那種方式,通過接口訪問其他構件的服務的構件都采用依賴關系聯(lián)接到接口上。件的服務的構件都采用依賴關系聯(lián)接到接口上。構件和接口(3/5) 構件實現(xiàn)的接口稱為示出接口構件實現(xiàn)的接口稱為示出接口export interface,即構件提供給其他構件的服,即構件提供給其他構件的服務接口;務接口; 構件使用的接口稱作引入接口構件使用的接口稱作引入接口
16、import interface,即應用它的構件必須遵循這,即應用它的構件必須遵循這個接口并以此為基礎構造。個接口并以此為基礎構造。 一個構件可以遵從多個引入接口,也可一個構件可以遵從多個引入接口,也可以同時引入接口并示出接口。以同時引入接口并示出接口。構件和接口(4/5) 一個給定的接口可以由一個構件示出,一個給定的接口可以由一個構件示出,由另一個構件引入,此時接口位于兩個由另一個構件引入,此時接口位于兩個構件之間而斷開了構件間直接的依賴關構件之間而斷開了構件間直接的依賴關系。系。 不管接口采用什么構件實現(xiàn),使用這個不管接口采用什么構件實現(xiàn),使用這個給定接口的構件都能夠正常運行。給定接口的構
17、件都能夠正常運行。 當然,一個構件當然,一個構件iff它所引用的所有接口它所引用的所有接口都能由其他構件的示出接口提供時,才都能由其他構件的示出接口提供時,才能應用到相應語境之中。能應用到相應語境之中。構件和接口(5/5)構件的端口構件的端口 可以采用多種不同方式通過依附于端口可以采用多種不同方式通過依附于端口的相關接口使用構件;的相關接口使用構件;構件可以擁有端口與內(nèi)部結構。構件可以擁有端口與內(nèi)部結構。構件的內(nèi)部結構構件的內(nèi)部結構 也可以顯示構件的內(nèi)部結構,為它的成也可以顯示構件的內(nèi)部結構,為它的成員、特性及連接符建模。員、特性及連接符建模。委托連接符委托連接符(1/2) 構件提供的接口可由
18、其內(nèi)部成員實現(xiàn)。與此類構件提供的接口可由其內(nèi)部成員實現(xiàn)。與此類似,構件的需求接口可被其內(nèi)部成員請求。在似,構件的需求接口可被其內(nèi)部成員請求。在這種情況下使用委托連接符這種情況下使用委托連接符Delegation Connector顯示內(nèi)部成員實現(xiàn)構件接口的細節(jié)。顯示內(nèi)部成員實現(xiàn)構件接口的細節(jié)。委托連接符委托連接符(2/2) 委托連接符被繪制為箭頭,箭頭指向委托連接符被繪制為箭頭,箭頭指向“通往的通往的方向方向”,以內(nèi)部成員連接接口所依附的端口。,以內(nèi)部成員連接接口所依附的端口。 如果該成員實現(xiàn)提供的接口,箭頭從端口指向內(nèi)部如果該成員實現(xiàn)提供的接口,箭頭從端口指向內(nèi)部成員;成員; 如果成員使用端
19、口,箭頭從內(nèi)部成員指向端口。如果成員使用端口,箭頭從內(nèi)部成員指向端口。 端口代表了進入構件的入口,通信由此傳遞,端口代表了進入構件的入口,通信由此傳遞,委托連接符指向通信的方向。因此從端口指向委托連接符指向通信的方向。因此從端口指向內(nèi)部成員的委托連接符代表了將要處理它的成內(nèi)部成員的委托連接符代表了將要處理它的成員的信息。員的信息。組裝連接符組裝連接符(1/2) 組裝連接符顯示構件請求另一個構件提供的接口。組裝連接符顯示構件請求另一個構件提供的接口。 組裝請求連接符代表提供接口與需求接口的球形與槽組裝請求連接符代表提供接口與需求接口的球形與槽狀符號直接組裝在一起。狀符號直接組裝在一起。組裝連接符
20、組裝連接符(2/2) 組裝請求連接符是一種特殊的連接符,組裝請求連接符是一種特殊的連接符,用來顯示構件的組合結構。用來顯示構件的組合結構。 構建組裝連接符也可來表現(xiàn)構件依賴性構建組裝連接符也可來表現(xiàn)構件依賴性的另一種選擇。的另一種選擇。構件的種類構件的種類 構件可以分為三種類型:構件可以分為三種類型: 實施構件實施構件這類構件是構成一個可執(zhí)行系統(tǒng)這類構件是構成一個可執(zhí)行系統(tǒng)必要和充分的物理單元如必要和充分的物理單元如DDL、EJB等;等; 工作產(chǎn)品構件工作產(chǎn)品構件這類構件是開發(fā)過程的產(chǎn)物,這類構件是開發(fā)過程的產(chǎn)物,包括創(chuàng)建實現(xiàn)構件的源代碼、數(shù)據(jù)文件等,包括創(chuàng)建實現(xiàn)構件的源代碼、數(shù)據(jù)文件等,他們
21、不直接參與可執(zhí)行的系統(tǒng),而是開發(fā)過他們不直接參與可執(zhí)行的系統(tǒng),而是開發(fā)過程的中間品;程的中間品; 執(zhí)行構件執(zhí)行構件作為一個正在執(zhí)行的系統(tǒng)的結果作為一個正在執(zhí)行的系統(tǒng)的結果而被創(chuàng)建。而被創(chuàng)建。構件的組織構件的組織 可以采用包的方式組織構件;可以采用包的方式組織構件; 也可以采用依賴關系、實現(xiàn)關系、關聯(lián)也可以采用依賴關系、實現(xiàn)關系、關聯(lián)關系、泛化關系等組織構件。關系、泛化關系等組織構件。構件的特點構件的特點 構件是系統(tǒng)中的一個物理實現(xiàn)片斷,它是實現(xiàn)域中的構件是系統(tǒng)中的一個物理實現(xiàn)片斷,它是實現(xiàn)域中的元素;元素; 一個構件基本獨立于其他構件,但很少獨立存在。通一個構件基本獨立于其他構件,但很少獨立存
22、在。通常為了完成某項功能,構件需要一個結構化的語境;常為了完成某項功能,構件需要一個結構化的語境; 構件是系統(tǒng)中可以替換的部分,是系統(tǒng)設計和組建的構件是系統(tǒng)中可以替換的部分,是系統(tǒng)設計和組建的基石;基石; 構件完成明確的功能,在邏輯和物理上具有粘聚性,構件完成明確的功能,在邏輯和物理上具有粘聚性,它代表了一個更大系統(tǒng)中的一段有意義的結構它代表了一個更大系統(tǒng)中的一段有意義的結構/行為塊;行為塊; 構件符合一系列的接口。符合一個接口的構件滿足接構件符合一系列的接口。符合一個接口的構件滿足接口的約定,且在接口適用的所有語境中可以被替換。口的約定,且在接口適用的所有語境中可以被替換。構件實例構件實例
23、構件實例是節(jié)點實例上的構件的實例。構件實例是節(jié)點實例上的構件的實例。黑箱和白箱的構件視圖黑箱和白箱的構件視圖 構件有兩種視圖構件有兩種視圖黑箱視圖和白箱視圖。黑箱視圖和白箱視圖。 黑箱視圖顯示構件的外觀,包括它的需求接黑箱視圖顯示構件的外觀,包括它的需求接口、提供接口、如何與其他構件關聯(lián)。黑箱口、提供接口、如何與其他構件關聯(lián)。黑箱視圖不指定構件的內(nèi)部實現(xiàn);視圖不指定構件的內(nèi)部實現(xiàn); 白箱視圖顯示那些類、接口、其他構件協(xié)作白箱視圖顯示那些類、接口、其他構件協(xié)作完成了該構件的功能,即白箱視圖顯示構件完成了該構件的功能,即白箱視圖顯示構件的成員元素及其關系。的成員元素及其關系。構件圖構件圖(1/2)
24、 構件圖表明了構件之間的依賴關系,表構件圖表明了構件之間的依賴關系,表示了構件類元以及其中定義的類和構件示了構件類元以及其中定義的類和構件間的關系。間的關系。 構建類元還可以嵌套在其他構件類元中,構建類元還可以嵌套在其他構件類元中,從而表示定義關系。從而表示定義關系。構件圖構件圖(2/2) 構件圖中,每個構件實現(xiàn)一些接口,并構件圖中,每個構件實現(xiàn)一些接口,并使用另一些接口。如果構件間的依賴與使用另一些接口。如果構件間的依賴與接口有關,那么構件可以被具有同樣接接口有關,那么構件可以被具有同樣接口的其他構件替代??诘钠渌麡嫾娲?。構件圖的應用構件圖的應用 建模可執(zhí)行體建??蓤?zhí)行體 建模表、文件和文
25、檔建模表、文件和文檔 建模建模API 建模源代碼建模源代碼建??蓤?zhí)行體建模可執(zhí)行體(1/3) 使用構件圖最普遍的目的是對構成系統(tǒng)使用構件圖最普遍的目的是對構成系統(tǒng)的實現(xiàn)構建建模。如果要實施的系統(tǒng)由的實現(xiàn)構建建模。如果要實施的系統(tǒng)由多個可執(zhí)行體和幾個相互關聯(lián)的庫組成,多個可執(zhí)行體和幾個相互關聯(lián)的庫組成,使用構件圖可視化、詳述、文檔化對物使用構件圖可視化、詳述、文檔化對物理系統(tǒng)的決策就成為一種必需。理系統(tǒng)的決策就成為一種必需。建模可執(zhí)行體建??蓤?zhí)行體(2/3)建模可執(zhí)行體建??蓤?zhí)行體(3/3) 建??蓤?zhí)行體的原則:建??蓤?zhí)行體的原則: 確定如何劃分物理系統(tǒng),考慮技術、軟件配確定如何劃分物理系統(tǒng),考
26、慮技術、軟件配置管理、軟件復用等因素;置管理、軟件復用等因素; 使用合適的元素表述可執(zhí)行體和庫,必要時使用合適的元素表述可執(zhí)行體和庫,必要時候使用構造型標示新的構件類型;候使用構造型標示新的構件類型; 使用接口表示構件間的銜接;使用接口表示構件間的銜接; 按照上下文和語境要求建模,可視化系統(tǒng)變按照上下文和語境要求建模,可視化系統(tǒng)變化的影響范圍?;挠绊懛秶?。建模表、文件和文檔建模表、文件和文檔建模建模API (1/2) API表示了系統(tǒng)中可編程接縫,可以用接口和構件對表示了系統(tǒng)中可編程接縫,可以用接口和構件對它建模。其本質(zhì)是一個或多個構件實現(xiàn)的接口。它建模。其本質(zhì)是一個或多個構件實現(xiàn)的接口。
27、從系統(tǒng)配置管理角度看,這些從系統(tǒng)配置管理角度看,這些API的實現(xiàn)很重要的實現(xiàn)很重要當當你發(fā)布一個你發(fā)布一個API時需要確保存在這些構件能夠完成時需要確保存在這些構件能夠完成API的職責。的職責。 UML允許采用構件圖可視化允許采用構件圖可視化API細節(jié),如圖所示:細節(jié),如圖所示:建模建模API (2/2) 建模建模API的原則的原則: 識別系統(tǒng)中可編程的接縫,將每一個接縫建模為一識別系統(tǒng)中可編程的接縫,將每一個接縫建模為一個接口,并收集形成起邊界的屬性和操作;個接口,并收集形成起邊界的屬性和操作; 只顯露那些對于給定語境中對可視化來說比較重要只顯露那些對于給定語境中對可視化來說比較重要的接口特
28、性,隱藏那些不重要的接口特征,必要時的接口特性,隱藏那些不重要的接口特征,必要時候可以將這些特征保持在接口的規(guī)范說明中;候可以將這些特征保持在接口的規(guī)范說明中; 僅僅對那些有助于展示特定實現(xiàn)的配置信息進行建僅僅對那些有助于展示特定實現(xiàn)的配置信息進行建模。模。建模源代碼建模源代碼(1/2) 源代碼的可視化有助于表示源代碼之間的依賴關系,源代碼的可視化有助于表示源代碼之間的依賴關系,并在劃分并在劃分/匯合開發(fā)路徑時管理文件組的分割和合并。匯合開發(fā)路徑時管理文件組的分割和合并。采用這種工具構件圖可以作為軟件配置管理、版本控采用這種工具構件圖可以作為軟件配置管理、版本控制工具的圖形接口。制工具的圖形接
29、口。建模源代碼建模源代碼(2/2) 源代碼建模的準則:源代碼建模的準則: 根據(jù)開發(fā)工具施加的約束,對存儲所有邏輯根據(jù)開發(fā)工具施加的約束,對存儲所有邏輯元素以及它們之間的編譯依賴關系細節(jié)的文元素以及它們之間的編譯依賴關系細節(jié)的文件建模;件建模; 盡可能使用開發(fā)工具管理這些文件的關系,盡可能使用開發(fā)工具管理這些文件的關系,并使用構件圖可視化文檔化這些關系。并使用構件圖可視化文檔化這些關系。部署圖部署圖簡介簡介 在這種簡單的情況下,軟件將以位于計在這種簡單的情況下,軟件將以位于計算機上的唯一可執(zhí)行文件的形式交付。算機上的唯一可執(zhí)行文件的形式交付。 此時,使用此時,使用為在硬件上運行為在硬件上運行的軟
30、件生成結構建模,如下圖所示:的軟件生成結構建模,如下圖所示:節(jié)點節(jié)點(1/3) 節(jié)點是表示計算資源的運行時的物理對節(jié)點是表示計算資源的運行時的物理對象,它們通常具有內(nèi)存和處理能力。象,它們通常具有內(nèi)存和處理能力。 節(jié)點可能具有用來辨別各種資源的構造節(jié)點可能具有用來辨別各種資源的構造型,如型,如CPU、設備、內(nèi)存等。、設備、內(nèi)存等。 節(jié)點可以包含對象和構件實例。節(jié)點可以包含對象和構件實例。節(jié)點節(jié)點(2/3) 節(jié)點使用帶有節(jié)點名稱的立方體表示;節(jié)點使用帶有節(jié)點名稱的立方體表示; 每個節(jié)點都必須擁有一個有別于其他節(jié)點的名每個節(jié)點都必須擁有一個有別于其他節(jié)點的名稱稱簡單名或路徑名,也可以采用標記值、附
31、簡單名或路徑名,也可以采用標記值、附加欄修飾節(jié)點名稱;加欄修飾節(jié)點名稱; 節(jié)點之間的關聯(lián)代表通信路徑,關聯(lián)用來辨別節(jié)點之間的關聯(lián)代表通信路徑,關聯(lián)用來辨別不同的構造型。不同的構造型。節(jié)點節(jié)點(3/3) 節(jié)點可以有泛化關系,將節(jié)點的一般描節(jié)點可以有泛化關系,將節(jié)點的一般描述與具體特例聯(lián)系起來;述與具體特例聯(lián)系起來; 對象在節(jié)點內(nèi)的存在用嵌套在節(jié)點符號對象在節(jié)點內(nèi)的存在用嵌套在節(jié)點符號內(nèi)的對象符號表示。如果這樣表示不方內(nèi)的對象符號表示。如果這樣表示不方面,對象符號可以包含他所在節(jié)點名稱面,對象符號可以包含他所在節(jié)點名稱的的location信息。節(jié)點間對象或構件實例信息。節(jié)點間對象或構件實例的遷移也
32、可以表示出來的遷移也可以表示出來詳見詳見UML參考參考手冊手冊中中become標簽標簽。節(jié)點和構件節(jié)點和構件(1/2) 相同點相同點 二者都有名稱;二者都有名稱; 都可以參與依賴、泛化、關聯(lián)關系;都可以參與依賴、泛化、關聯(lián)關系; 都允許嵌套;都允許嵌套; 都可以擁有實例;都可以擁有實例; 都可以參與交互;都可以參與交互;節(jié)點和構件節(jié)點和構件(2/2) 不同點:不同點: 構件是參與系統(tǒng)執(zhí)行的事物,節(jié)點是執(zhí)行構構件是參與系統(tǒng)執(zhí)行的事物,節(jié)點是執(zhí)行構件的事物;件的事物;即節(jié)點執(zhí)行構件,構件是被節(jié)即節(jié)點執(zhí)行構件,構件是被節(jié)點執(zhí)行的事物點執(zhí)行的事物 構件表示邏輯元素的物理打包,節(jié)點表示構構件表示邏輯元素
33、的物理打包,節(jié)點表示構件的物理部署;件的物理部署;指示出節(jié)點和構件的關指示出節(jié)點和構件的關系系一個構件是一組其他邏輯單元物理化的一個構件是一組其他邏輯單元物理化的事物,而一個節(jié)點是構件部署的地點,可以事物,而一個節(jié)點是構件部署的地點,可以采用依賴關系顯式表示構件和節(jié)點的關系采用依賴關系顯式表示構件和節(jié)點的關系節(jié)點間的通信節(jié)點間的通信 為了完成工作,節(jié)點通常需要協(xié)同工作,即與其他節(jié)為了完成工作,節(jié)點通常需要協(xié)同工作,即與其他節(jié)點通信。點通信。 通信路徑用來顯示節(jié)點在運行時彼此間的通信,通信通信路徑用來顯示節(jié)點在運行時彼此間的通信,通信路徑被繪制為連接兩個節(jié)點的實線。此類型的通信通路徑被繪制為連接
34、兩個節(jié)點的實線。此類型的通信通過為路徑添加構造型來顯示。過為路徑添加構造型來顯示。節(jié)點實例節(jié)點實例 有時候,模型中包含兩個相同類型的節(jié)有時候,模型中包含兩個相同類型的節(jié)點,但是想強調(diào)實際上他們是兩個不同點,但是想強調(diào)實際上他們是兩個不同的實例,可以使用的實例,可以使用NodeInstance表達。表達。軟件的生成結果軟件的生成結果 軟件的生成結果顯示為包含軟件的生成結果顯示為包含構造型的矩形,或右上角具有文件圖表構造型的矩形,或右上角具有文件圖表的矩形,或兩種標示共用。的矩形,或兩種標示共用。生成結果部署到節(jié)點生成結果部署到節(jié)點1 生成結果部署到節(jié)點,表示生成結果存生成結果部署到節(jié)點,表示生成
35、結果存在于在于/安裝到該節(jié)點,表示方法如下:安裝到該節(jié)點,表示方法如下:生成結果部署到節(jié)點生成結果部署到節(jié)點2 如果要顯示一個生成結果使用另一個生如果要顯示一個生成結果使用另一個生成結果,必須繪制出生成結果符號,以成結果,必須繪制出生成結果符號,以及連接生成結果的依賴標示。及連接生成結果的依賴標示。部署圖部署圖 部署圖表示運行時節(jié)點、構件實例及對象的配部署圖表示運行時節(jié)點、構件實例及對象的配置視圖。置視圖。 部署圖含有用通信鏈相連的節(jié)點實例。節(jié)點實部署圖含有用通信鏈相連的節(jié)點實例。節(jié)點實例包括運行時候的實例如對象、構件實例。構例包括運行時候的實例如對象、構件實例。構件實例和對象還可以包含對象。
36、件實例和對象還可以包含對象。 部署圖不僅可以表示各種實例它們間的依賴關部署圖不僅可以表示各種實例它們間的依賴關系,還可以表現(xiàn)節(jié)點或?qū)嵗倪w移情況。系,還可以表現(xiàn)節(jié)點或?qū)嵗倪w移情況。部署圖的形式部署圖的形式 部署圖有描述符形式和實例形式。部署圖有描述符形式和實例形式。 描述符形式說明那些構件可以存在于那些節(jié)描述符形式說明那些構件可以存在于那些節(jié)點上,那些節(jié)點可以被連接等;點上,那些節(jié)點可以被連接等; 實例形式表現(xiàn)了作為系統(tǒng)配置的具體節(jié)點實實例形式表現(xiàn)了作為系統(tǒng)配置的具體節(jié)點實例上的具體構件實例的位置,這是部署圖的例上的具體構件實例的位置,這是部署圖的常見形式。常見形式。部署圖的表示法部署圖的表示法(1/4) 在表示法方面,部署圖是節(jié)點符號、表在表示法方面,部署圖是節(jié)點符號、表示通信關聯(lián)的路徑網(wǎng)狀圖。示通信關聯(lián)的路徑網(wǎng)狀圖。 其中節(jié)點可以包含構件實例,說明構件其
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年通信設備采購與維護合同2篇
- 電梯安裝工程2025年度技術咨詢合同6篇
- 二零二五年度論壇活動策劃服務合同模板6篇
- 二零二五版搬家服務及家居清潔維護合同3篇
- 二零二五年度廢鋼市場供應與環(huán)保處理服務合同3篇
- 二零二五版房屋買賣及鄰里關系協(xié)調(diào)服務合同3篇
- 二零二五年度股東干股合作企業(yè)社會責任履行合同3篇
- 幼兒園2025年度食品供應合同2篇
- 二零二五版租賃房屋改造裝修合同3篇
- 二零二五年酒店股權分割與資產(chǎn)重組咨詢合同3篇
- 2023社會責任報告培訓講稿
- 2023核電廠常規(guī)島及輔助配套設施建設施工技術規(guī)范 第8部分 保溫及油漆
- 2025年蛇年春聯(lián)帶橫批-蛇年對聯(lián)大全新春對聯(lián)集錦
- 表B. 0 .11工程款支付報審表
- 警務航空無人機考試題庫及答案
- 空氣自動站儀器運營維護項目操作說明以及簡單故障處理
- 新生兒窒息復蘇正壓通氣課件
- 法律顧問投標書
- 班主任培訓簡報4篇(一)
- 成都市數(shù)學八年級上冊期末試卷含答案
- T-CHSA 020-2023 上頜骨缺損手術功能修復重建的專家共識
評論
0/150
提交評論