版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第4章章 順序圖和協(xié)作圖順序圖和協(xié)作圖面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML24.1 交互圖概述交互圖概述交互圖交互圖(interaction diagram)是用來描述對(duì)象之間以及對(duì)是用來描述對(duì)象之間以及對(duì)象與參與者之間的動(dòng)態(tài)協(xié)作關(guān)系以及協(xié)作過程中行為象與參與者之間的動(dòng)態(tài)協(xié)作關(guān)系以及協(xié)作過程中行為次序的圖形文檔次序的圖形文檔.交互圖通常用于描述一個(gè)用例的行為交互圖通常用于描述一個(gè)用例的行為, 顯示該用例中所顯示該用例中所涉及的對(duì)象及對(duì)象之間消息傳遞情況涉及的對(duì)象及對(duì)象之間消息傳遞情況.交互圖包括交互圖包括: 順序圖順序圖(sequence diagram), 描述對(duì)象按照時(shí)間順序
2、的描述對(duì)象按照時(shí)間順序的消息交換消息交換;(1)協(xié)作圖協(xié)作圖(collaboration diagram), 描述系統(tǒng)成分如何協(xié)描述系統(tǒng)成分如何協(xié)同工作同工作.面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML34.2 順序圖順序圖Rumbaugh的定義的定義: 順序圖是顯示對(duì)象之間交互的圖順序圖是顯示對(duì)象之間交互的圖, 這些對(duì)象是按時(shí)間順序排列的這些對(duì)象是按時(shí)間順序排列的.它顯示參與交互的對(duì)象及對(duì)象之間消息交互的順序它顯示參與交互的對(duì)象及對(duì)象之間消息交互的順序.時(shí)間維時(shí)間維對(duì)象維對(duì)象維對(duì)象對(duì)象/ /參與者參與者生命線生命線控制焦點(diǎn)控制焦點(diǎn)消息消息面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML
3、44.2 順序圖順序圖對(duì)象的三種命名方式對(duì)象的三種命名方式:生命線是對(duì)象圖標(biāo)向下延伸的虛線生命線是對(duì)象圖標(biāo)向下延伸的虛線, 表示對(duì)象生存時(shí)間表示對(duì)象生存時(shí)間.消亡點(diǎn)消亡點(diǎn)面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML54.2 順序圖順序圖控制焦點(diǎn)控制焦點(diǎn)(Focus of Control)又稱為激活期又稱為激活期(Activation), 用用生命線上的小矩形表示生命線上的小矩形表示, 在這個(gè)時(shí)間段內(nèi)在這個(gè)時(shí)間段內(nèi), 對(duì)象執(zhí)行相對(duì)象執(zhí)行相應(yīng)的操作應(yīng)的操作.FOC嵌套嵌套面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML64.3 順序圖中的消息順序圖中的消息l UML1.4后定義的消息有:后定義
4、的消息有:調(diào)用消息調(diào)用消息 procedure call異步消息異步消息 asynchronous返回消息返回消息 returnl UML1.3前的消息還有:前的消息還有:簡(jiǎn)單消息簡(jiǎn)單消息 simplel Rose擴(kuò)充的消息擴(kuò)充的消息阻止消息阻止消息 balking超時(shí)消息超時(shí)消息 time-out面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML74.3 順序圖中的消息順序圖中的消息調(diào)用消息:消息的發(fā)送者把控制傳遞給消息的接收者調(diào)用消息:消息的發(fā)送者把控制傳遞給消息的接收者, 等待接收者返回或放棄控制等待接收者返回或放棄控制.調(diào)用消息必有一個(gè)與之配對(duì)的返回消息調(diào)用消息必有一個(gè)與之配對(duì)的返回消息
5、, 但是可以不但是可以不用畫出用畫出.面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML84.3 順序圖中的消息順序圖中的消息異步消息:消息的發(fā)送者把控制傳遞給消息的接收者異步消息:消息的發(fā)送者把控制傳遞給消息的接收者, 然后繼續(xù)自己的工作然后繼續(xù)自己的工作,不等待接收者返回或放棄控制不等待接收者返回或放棄控制.UML1.4及以后及以后UML1.3及以前及以前面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML94.3 順序圖中的消息順序圖中的消息返回消息:表示從過程調(diào)用返回返回消息:表示從過程調(diào)用返回. 如果是過程消息返如果是過程消息返回回, 則不用畫出則不用畫出; 如果是非過程消息如果是非過程消
6、息, 則必須畫出則必須畫出.返回消息返回消息面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML104.3 順序圖中的消息順序圖中的消息阻止消息:消息的發(fā)送者傳遞消息給接收者阻止消息:消息的發(fā)送者傳遞消息給接收者, 如果接如果接收者無法立即接收收者無法立即接收, 則發(fā)送者放棄該消息則發(fā)送者放棄該消息.超時(shí)消息:消息的發(fā)送者發(fā)出消息給接收者并按指定超時(shí)消息:消息的發(fā)送者發(fā)出消息給接收者并按指定時(shí)間等待時(shí)間等待, 若接收者無法在指定時(shí)間內(nèi)接收若接收者無法在指定時(shí)間內(nèi)接收, 則發(fā)送者則發(fā)送者放棄該消息放棄該消息.面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML114.3 順序圖中的消息順序圖中的消息消息
7、的語法格式消息的語法格式前置消息列表前置消息列表警戒條件警戒條件消息順序號(hào)消息順序號(hào)返回值返回值:=消息名稱消息名稱(參數(shù)列表參數(shù)列表)例子例子:2:display(x,y)簡(jiǎn)單消息簡(jiǎn)單消息1.3.1 p:= find(specs)嵌套消息嵌套消息, 有返回值有返回值x0 4: invert(x, color)條件消息條件消息3.1 *: update()循環(huán)消息循環(huán)消息A3, B4/ C2: copy(a, b)線程間同步線程間同步面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML124.4 建立順序圖的步驟建立順序圖的步驟l 確定交互過程的上下文確定交互過程的上下文l 識(shí)別參與交互過程的對(duì)象
8、識(shí)別參與交互過程的對(duì)象l 為每個(gè)對(duì)象設(shè)置生命線為每個(gè)對(duì)象設(shè)置生命線l 從引發(fā)這個(gè)交互過程的初始消息開始從引發(fā)這個(gè)交互過程的初始消息開始, 在生命線之在生命線之間自頂向下依次畫出隨后的各個(gè)消息間自頂向下依次畫出隨后的各個(gè)消息.l 如果需要嵌套或如果需要嵌套或(和和)表示消息發(fā)生的時(shí)間點(diǎn)表示消息發(fā)生的時(shí)間點(diǎn), 使用使用FOC.l 如果需要說明時(shí)間約束如果需要說明時(shí)間約束, 則在消息旁邊加上約束說則在消息旁邊加上約束說明明.l 如果需要如果需要, 可以為每個(gè)消息設(shè)置前置條件和后置條可以為每個(gè)消息設(shè)置前置條件和后置條件件.面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML134.5 協(xié)作圖協(xié)作圖協(xié)作圖是
9、用于描述系統(tǒng)的行為是如何由系統(tǒng)成分協(xié)作協(xié)作圖是用于描述系統(tǒng)的行為是如何由系統(tǒng)成分協(xié)作實(shí)現(xiàn)的圖實(shí)現(xiàn)的圖.對(duì)象對(duì)象object鏈鏈 link消息消息 message協(xié)作圖中的元素協(xié)作圖中的元素:面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML144.6 建立協(xié)作圖的步驟建立協(xié)作圖的步驟l 確定交互過程的上下文確定交互過程的上下文l 識(shí)別參與交互過程的對(duì)象識(shí)別參與交互過程的對(duì)象l 如果需要如果需要, 為每個(gè)對(duì)象設(shè)置初始特性為每個(gè)對(duì)象設(shè)置初始特性l 確定對(duì)象之間的鏈確定對(duì)象之間的鏈, 及沿著鏈的消息及沿著鏈的消息l 從引發(fā)該交互過程的初始消息開始從引發(fā)該交互過程的初始消息開始, 將每個(gè)消息附將每個(gè)消息
10、附到相應(yīng)的鏈上到相應(yīng)的鏈上l 如果需要表示消息嵌套如果需要表示消息嵌套, 則有則有Dewey十進(jìn)制表示十進(jìn)制表示.l 如果需要說明時(shí)間約束如果需要說明時(shí)間約束, 則在消息旁邊加上約束說則在消息旁邊加上約束說明明l 如果需要如果需要, 可以為每個(gè)消息設(shè)置前置條件和后置條可以為每個(gè)消息設(shè)置前置條件和后置條件件面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML154.7 順序圖與協(xié)作圖的比較順序圖與協(xié)作圖的比較l 相同點(diǎn)相同點(diǎn)規(guī)定責(zé)任規(guī)定責(zé)任, 二者均直觀地規(guī)定了發(fā)送對(duì)象和接收對(duì)象的責(zé)任二者均直觀地規(guī)定了發(fā)送對(duì)象和接收對(duì)象的責(zé)任.支持消息支持消息, 二者均支持所有的消息類型二者均支持所有的消息類型.衡
11、量工具衡量工具, 二者均是衡量耦合性的工具二者均是衡量耦合性的工具.l 不同點(diǎn)不同點(diǎn)協(xié)作圖強(qiáng)調(diào)參與交互的對(duì)象的組織結(jié)構(gòu)協(xié)作圖強(qiáng)調(diào)參與交互的對(duì)象的組織結(jié)構(gòu); 順序圖強(qiáng)調(diào)消息的順序圖強(qiáng)調(diào)消息的時(shí)間順序時(shí)間順序.順序圖可以反映對(duì)象的創(chuàng)建順序圖可以反映對(duì)象的創(chuàng)建/激活激活/撤消撤消; 協(xié)作圖不能協(xié)作圖不能.協(xié)作圖能反應(yīng)動(dòng)作路徑協(xié)作圖能反應(yīng)動(dòng)作路徑, 消息必須有順序號(hào)消息必須有順序號(hào); 順序圖沒有順序圖沒有.面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML164.7 順序圖與協(xié)作圖的比較順序圖與協(xié)作圖的比較汽車租賃系統(tǒng)中汽車租賃系統(tǒng)中”客戶還車客戶還車”的順序圖的順序圖面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)
12、計(jì) & UML174.7 順序圖與協(xié)作圖的比較順序圖與協(xié)作圖的比較汽車租賃系統(tǒng)中汽車租賃系統(tǒng)中”客戶還車客戶還車”的協(xié)作圖的協(xié)作圖面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML184.8 工具支持工具支持(略略)面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML194.9 常見問題分析常見問題分析(1) 如何在順序圖中表示消息的循環(huán)發(fā)送如何在順序圖中表示消息的循環(huán)發(fā)送?在消名前加循環(huán)條件,例如:在消名前加循環(huán)條件,例如: 1.1 *for all order lines: message1() 2.1 *i:= 1.n: message2()面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML20
13、4.9 常見問題分析常見問題分析(2) 如何在順序圖中表示消息的條件發(fā)送如何在順序圖中表示消息的條件發(fā)送? 在消息上加警戒條件在消息上加警戒條件, 如如: xy message() 使用文字說明使用文字說明 分成多個(gè)順序圖分成多個(gè)順序圖面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML214.9 常見問題分析常見問題分析(3) 如何在順序圖表示時(shí)間約束如何在順序圖表示時(shí)間約束?可以使用可以使用UML的的3種擴(kuò)展機(jī)制之一種擴(kuò)展機(jī)制之一約束約束(constraint)來表示來表示,如如:面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML224.9 常見問題分析常見問題分析(4) 如何在順序圖中表示遞歸
14、如何在順序圖中表示遞歸?直接遞歸直接遞歸間接遞歸間接遞歸面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML234.9 常見問題分析常見問題分析(5) 順序圖中對(duì)象如何確定順序圖中對(duì)象如何確定? 順序圖與類圖是否同時(shí)生成并交互修改順序圖與類圖是否同時(shí)生成并交互修改?順序圖中的對(duì)象的確定需要參考類圖順序圖中的對(duì)象的確定需要參考類圖, 類圖中的類的確定類圖中的類的確定也需要參考順序圖也需要參考順序圖, 二者相互補(bǔ)充、相互協(xié)調(diào)的關(guān)系二者相互補(bǔ)充、相互協(xié)調(diào)的關(guān)系.在分析階段在分析階段, 順序圖中的消息名可能只是一個(gè)說明順序圖中的消息名可能只是一個(gè)說明, 而在設(shè)而在設(shè)計(jì)階段計(jì)階段, 順序圖的消息名被細(xì)化順序
15、圖的消息名被細(xì)化, 最后對(duì)應(yīng)到類圖中的方法最后對(duì)應(yīng)到類圖中的方法.面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML244.9 常見問題分析常見問題分析(6) 如果對(duì)象具有多態(tài)性如果對(duì)象具有多態(tài)性, 發(fā)送對(duì)象不可能事先知道目標(biāo)對(duì)象所發(fā)送對(duì)象不可能事先知道目標(biāo)對(duì)象所屬的類屬的類, 則在交互圖中如何確定目標(biāo)對(duì)象所屬的類則在交互圖中如何確定目標(biāo)對(duì)象所屬的類?目標(biāo)對(duì)象應(yīng)是形成多態(tài)的繼承關(guān)系中的祖先類目標(biāo)對(duì)象應(yīng)是形成多態(tài)的繼承關(guān)系中的祖先類.(7) 如何在交互圖中表示廣播消息如何在交互圖中表示廣播消息?(8) 如何在協(xié)作圖中表示創(chuàng)建對(duì)象如何在協(xié)作圖中表示創(chuàng)建對(duì)象?面向?qū)ο蠓治雠c設(shè)計(jì)面向?qū)ο蠓治雠c設(shè)計(jì) & UML254.8 實(shí)例分析:語音郵箱系統(tǒng)實(shí)例分析:語音郵箱系統(tǒng)創(chuàng)建創(chuàng)建“保留語音信息保留語音信息”的順序圖的順序圖用例用例2: 保留語音信息保留語音信息1. 呼叫者呼叫者”撥打郵箱號(hào)撥打郵箱號(hào)”.2. 呼叫者說出信息呼叫者說出信息.3. 呼叫者掛斷電話呼叫者掛斷電話.4. 語音郵件系統(tǒng)將記錄的信息存放在接收者的郵箱中語音郵件系統(tǒng)將記錄的信息存放在接收者的郵箱中.用例用例1: 撥打郵箱號(hào)撥打郵箱號(hào)1. 呼叫者撥打語音郵件系統(tǒng)的主號(hào)碼呼叫者撥打語音郵件系統(tǒng)的主號(hào)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計(jì)三層電梯
- 道勘課程設(shè)計(jì)范文
- 2025年度合同履行違約賠償合同4篇
- 二零二五年度門窗安裝與室外照明系統(tǒng)合同4篇
- 幼兒園墻面介紹課程設(shè)計(jì)
- 年度液壓件液力件市場(chǎng)分析及競(jìng)爭(zhēng)策略分析報(bào)告
- 2025年度食堂環(huán)境衛(wèi)生管理承包服務(wù)合同4篇
- 2025年度企業(yè)間財(cái)務(wù)信息保密協(xié)議范本模板2篇
- 2025年度食堂承包商服務(wù)品質(zhì)提升協(xié)議4篇
- 2025年度農(nóng)業(yè)機(jī)械設(shè)備采購合同范本:農(nóng)機(jī)購置合作協(xié)議3篇
- 新教材人教版高中物理選擇性必修第二冊(cè)全冊(cè)各章節(jié)課時(shí)練習(xí)題及章末測(cè)驗(yàn)含答案解析(安培力洛倫茲力電磁感應(yīng)交變電流等)
- 初級(jí)養(yǎng)老護(hù)理員培訓(xùn)全套
- 集中供熱管網(wǎng)系統(tǒng)一次網(wǎng)的調(diào)節(jié)方法
- GB/T 41095-2021機(jī)械振動(dòng)選擇適當(dāng)?shù)臋C(jī)器振動(dòng)標(biāo)準(zhǔn)的方法
- MRP、MPS計(jì)劃文檔教材
- 甲狀腺疾病護(hù)理查房課件
- 安全安全帶檢查記錄表
- GB∕T 26520-2021 工業(yè)氯化鈣-行業(yè)標(biāo)準(zhǔn)
- 2022年浙江省紹興市中考數(shù)學(xué)試題及參考答案
- Listen-to-this-3-英語高級(jí)聽力-(整理版)
- 生活垃圾焚燒處理建設(shè)項(xiàng)目評(píng)價(jià)導(dǎo)則(2022)
評(píng)論
0/150
提交評(píng)論