順序圖和協(xié)作圖PPT課件_第1頁
順序圖和協(xié)作圖PPT課件_第2頁
順序圖和協(xié)作圖PPT課件_第3頁
順序圖和協(xié)作圖PPT課件_第4頁
順序圖和協(xié)作圖PPT課件_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、4.1 交互圖概述 交互圖(interaction diagram)是用來描述對象之間以及對象與參與者之間的動態(tài)協(xié)作關(guān)系以及協(xié)作過程中行為次序的圖形文檔。 通常用來描述一個用例的行為,顯示該用例中所涉及的對象和這些對象之間的消息傳遞情況 目的:幫助分析人員對照檢查每個用例中所描述的用戶需求 交互圖包括順序圖(sequence diagram)和協(xié)作圖(collaboration diagram)兩種形式 順序圖著重描述對象按時間順序的消息交換 協(xié)作圖著重描述系統(tǒng)成分如何協(xié)同工作第1頁/共39頁4.2 順序圖u順序圖描述對象之間的動態(tài)交互關(guān)系,著重體現(xiàn)對象間消息傳遞的時間順序。展現(xiàn)了在一個特殊的

2、用例場景中系統(tǒng)外部參與者發(fā)起的事件、事件的順序以及各個系統(tǒng)之間的交互事件等第2頁/共39頁u順序圖的基本元素u對象:對象、對象的生命線、激活的對象和對象的刪除。u生命線u控制焦點u消息:調(diào)用消息、異步消息、返回消息。u條件、注釋體和注釋連接。第3頁/共39頁 順序圖用二維表來表示交互,縱向是時間軸,橫向是參與的角色以及它們交換的消息。 角色的生命周期表現(xiàn)為生命線,一條垂直的線,在激活的時間段里是雙線,在狀態(tài)保持的時間里是虛線。 消息表示為從一條生命線出發(fā)到另一條生命線的有向線,從上而下,表示消息的時間順序。 激活是過程的執(zhí)行,包括它等待嵌套過程執(zhí)行的時間。在順序圖中它用部分替換生命線的雙道線表

3、示。第4頁/共39頁對象的命名方式:對象名:類名:類名對象名第5頁/共39頁 生命線在順序圖中表示為從對象圖標(biāo)向下延伸的一條虛線,表示對象存在的時間 控制焦點是順序圖中表示時間段的符號,在這個時間段內(nèi),對象將執(zhí)行相應(yīng)的操作第6頁/共39頁4.3 順序圖中的消息 消息是對象間的單向通信,從發(fā)送者到接受者的攜帶信息的控制流。消息可能帶有值參。 UML:調(diào)用消息、異步消息、返回消息 Rose:阻止消息、超時消息第7頁/共39頁 調(diào)用消息(procedure call) 調(diào)用消息的發(fā)送者把控制傳遞給消息的接收者,然后停止活動,等待消息接收者放棄或返回控制 調(diào)用消息的接收者必須是一個被動對象第8頁/共3

4、9頁 異步消息(asynchronous) 異步消息的發(fā)送者通過消息把信號傳遞給消息的接收者,然后繼續(xù)自己的活動,不等待接收者返回消息或控制第9頁/共39頁 返回消息(return) 返回消息表示從過程調(diào)用返回,如果是從過程調(diào)用返回,則返回消息不用畫出。對于非過程調(diào)用,如果有返回消息,必須明確表示出來第10頁/共39頁 阻止消息和超時消息 阻止消息是指消息發(fā)送者發(fā)出消息給接收者,如果接收者無法立即接收消息,則發(fā)送者放棄這個消息 超時消息是指消息發(fā)送者發(fā)出消息給接收者并按指定時間等待,如果接收者在指定時間內(nèi)無法接收消息,則發(fā)送者放棄這個消息第11頁/共39頁 自調(diào)用(self call)UML標(biāo)

5、記ROSE標(biāo)記第12頁/共39頁:SystementerItem(UPC,quanlity)endSale()makePayment(amount)出納員第13頁/共39頁CallerOperatorCallee時間軸時間軸callacknumbercallacktalktransfer順序圖生命線激活狀態(tài)保持角色第14頁/共39頁激活的 對象帶有生命線的對象Object:Class分支 生命線刪除標(biāo)志簡單消息用于表示對象正執(zhí)行某一動作,在對象的生命線之間發(fā)送消息的同時即激活對象。用于表示順序圖中參與交互的對象,每個對象的下方都帶有生命線,用于表示該對象在某段時間內(nèi)是存在的。生命線可以劈分成多

6、條生命線,用于表示條件,接收分支消息。標(biāo)于生命線或激活上。表示已刪除該對象或活動的執(zhí)行。表示簡單的控制流。用于描述控制如何在對象間進(jìn)行傳遞,不考慮通信的細(xì)節(jié)。名 稱描 述可視化圖符u順序圖的可視化圖符第15頁/共39頁注釋連接注釋體返回消息異步消息同步消息名 稱可視化圖符注釋連接將注釋體與要描述的實體相連。說明該注釋體是對該實體所進(jìn)行的描述。用于對UML實體進(jìn)行文字描述。用于表示從同步消息激活的動作返回到調(diào)用者的消息。表示異步控制流。當(dāng)調(diào)用者發(fā)出消息后不要等待消息的返回即可繼續(xù)執(zhí)行自己的操作。異步消息主要用于描述實時系統(tǒng)中的并發(fā)行為。表示嵌套的控制流。操作的調(diào)用是一種典型的同步消息。調(diào)用者發(fā)出

7、消息后必須等待消息的返回;當(dāng)處理消息的操作執(zhí)行完畢,調(diào)用者才可繼續(xù)執(zhí)行自己的操作。描 述第16頁/共39頁消息的格式 格式: 序號條件表達(dá)式返回值:=消息名(參數(shù)列表) 例: 2:display(x,y) 簡單消息 1.3.1:p:find() 帶返回值的嵌套消息 x0 4:invert(x,color) 條件消息 3.1 *:update() 循環(huán)消息 A3,b4/c2:copy(a,b) 線程同步第17頁/共39頁從Login use case開始我們?nèi)绾蔚卿涍M(jìn)一個系統(tǒng)?1. 輸入用戶名2. 輸入密碼3. 按回車鍵, 或者點擊那可以發(fā)送登陸請求的按鈕4. 如果用戶名錯或者密碼錯,系統(tǒng)將拒絕

8、登錄并保留原頁面5. 如果用戶名和密碼都正確,系統(tǒng)進(jìn)入下一個正確頁面第18頁/共39頁因此,一個系統(tǒng)用戶在這一use case處將處理三個對象,它們中的兩個是 GUI。 對象:登錄頁面 (GUI)系統(tǒng)數(shù)據(jù)庫下一頁面 (GUI)第19頁/共39頁第20頁/共39頁例:一次學(xué)生注冊第21頁/共39頁4.4 建立順序圖的步驟 確定交互過程的上下文 識別參與交互過程的對象 為每個對象設(shè)置生命線,即確定哪些對象存在于整個交互過程中,哪些對象在交互過程中被創(chuàng)建和撤銷 從引發(fā)這個交互過程的初始消息開始,在生命線之間自頂向下依次畫出隨后的各個消息 如果需要表示消息的嵌套,或/和表示消息發(fā)生時的時間點,則采用控

9、制焦點。 如果需要說明時間約束,則在消息旁邊加上約束說明 如果需要,可以為每個消息附上前置條件和后置條件第22頁/共39頁 試用順序圖描述下列情形,當(dāng)用戶在自己的計算機上向網(wǎng)絡(luò)打印機發(fā)出一個打印任務(wù)時,他的計算機便向打印機服務(wù)器發(fā)送一條打印命令,譬如print(file)。打印機服務(wù)器如果發(fā)現(xiàn)網(wǎng)絡(luò)打印機處于空閑狀態(tài),則向打印機發(fā)送打印命令命令print(file);否則向打印隊列發(fā)送一條保存命令store(file)。第23頁/共39頁第24頁/共39頁實例:存款第25頁/共39頁4.5 協(xié)作圖 協(xié)作圖是用于描述系統(tǒng)的行為是如何由系統(tǒng)的成分協(xié)作實現(xiàn)的圖,描述系統(tǒng)對象(或活動者)如何共同協(xié)作完成

10、用例 強調(diào)的是參與交互的對象的協(xié)作和組織 順序圖和協(xié)作圖可以相互轉(zhuǎn)換 協(xié)作圖中包括的建模元素有對象、消息、鏈等第26頁/共39頁多重對象 多重對象:由多個對象組成的對象集合,用多個方框重疊表示,往往是同類的對象 如果消息發(fā)送給多個對象,則用多重對象表示 在順序圖中仍然顯示單對象的圖標(biāo)第27頁/共39頁主動對象 主動對象:一組屬性和一組方法的封裝體,其中至少有一個方法不需要接受消息就能主動執(zhí)行,即主動對象可以在不接受外部消息的情況下自己開始一個控制流第28頁/共39頁 消息執(zhí)行順序的編號方案 協(xié)作圖中最常用的消息執(zhí)行順序的編號方案有兩種:u順序法:用簡單編號方案,從1開始,由小到大,順序排列。u

11、層次法:用小數(shù)點制編號方案,此時常常要求表示系統(tǒng)號、子系統(tǒng)號和模塊號。UML使用了小數(shù)點方案。第29頁/共39頁2*:prepare()對象對象消息消息3:check()4:check=trueremove()7:check=truenew1:prepare():訂單提交窗口:訂單:交付貨物電視欄目:訂單項5:needsToRecorder()時序號時序號 回授回授:購進(jìn)貨物6:new電視庫存:倉庫貨物第30頁/共39頁第31頁/共39頁對象的創(chuàng)建與銷毀 在協(xié)作圖中表示創(chuàng)建和銷毀一個對象采用標(biāo)有版型create的創(chuàng)建消息和標(biāo)有版型destroy的銷毀消息第32頁/共39頁同步消息和異步消息 協(xié)

12、作圖中的同步消息和異步消息含義與順序圖中的相同,表現(xiàn)形式也相同第33頁/共39頁多對象多對象用于表示訪問全組對象的操作和信號,用兩堆疊一起的矩形框表示運行每一個對象的操作需要兩個消息:一個是對多對象的重復(fù)調(diào)用,找出對每一個對象的鏈接,另一個是使用該鏈接發(fā)送對每一個對象的消息多對象的應(yīng)用可以方便的體現(xiàn)面向?qū)ο蟮亩鄳B(tài)性原則多對象應(yīng)用中的特殊情況:廣播消息第34頁/共39頁 廣播消息:是把系統(tǒng)中的全部對象作為它的目標(biāo)對象的消息。廣播消息一般是異步消息,廣播消息的發(fā)送者不等待返回消息。系統(tǒng)中的所有對象都會收到廣播消息,但是并不是系統(tǒng)中的全部對象都對它做出響應(yīng)第35頁/共39頁自調(diào)用與回調(diào)自調(diào)用是指一個對象調(diào)用自己回調(diào):當(dāng)一個對象發(fā)送一個異步消息調(diào)用另一個對象時,指定的事件類型發(fā)生或所要求的操作已完成時,消息接受對象立即發(fā)送一個異步消息

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論