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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

3、線在順序圖中表示為從對象圖標向下延伸的一條虛線,表示對象存在的時間控制焦點是順序圖中表示時間段的符號,在這個時間段內,對象將執(zhí)行相應的操作74.3 順序圖中的消息消息是對象間的單向通信,從發(fā)送者到接受者的攜帶信息的控制流。消息可能帶有值參。UML:調用消息、異步消息、返回消息Rose:阻止消息、超時消息8調用消息(procedure call)調用消息的發(fā)送者把控制傳遞給消息的接收者,然后停止活動,等待消息接收者放棄或返回控制調用消息的接收者必須是一個被動對象9異步消息(asynchronous)異步消息的發(fā)送者通過消息把信號傳遞給消息的接收者,然后繼續(xù)自己的活動,不等待接收者返回消息或控制1

4、0返回消息(return)返回消息表示從過程調用返回,如果是從過程調用返回,則返回消息不用畫出。對于非過程調用,如果有返回消息,必須明確表示出來11阻止消息和超時消息阻止消息是指消息發(fā)送者發(fā)出消息給接收者,如果接收者無法立即接收消息,則發(fā)送者放棄這個消息超時消息是指消息發(fā)送者發(fā)出消息給接收者并按指定時間等待,如果接收者在指定時間內無法接收消息,則發(fā)送者放棄這個消息12自調用(self call)UML標記ROSE標記13:SystementerItem(UPC,quanlity)endSale()makePayment(amount)出納員14CallerOperatorCallee時間軸ca

5、llacknumbercallacktalktransfer順序圖生命線激活狀態(tài)保持角色15激活的 對象帶有生命線的對象Object:Class分支 生命線刪除標志簡單消息用于表示對象正執(zhí)行某一動作,在對象的生命線之間發(fā)送消息的同時即激活對象。用于表示順序圖中參與交互的對象,每個對象的下方都帶有生命線,用于表示該對象在某段時間內是存在的。生命線可以劈分成多條生命線,用于表示條件,接收分支消息。標于生命線或激活上。表示已刪除該對象或活動的執(zhí)行。表示簡單的控制流。用于描述控制如何在對象間進行傳遞,不考慮通信的細節(jié)。名 稱描 述可視化圖符順序圖的可視化圖符16注釋連接注釋體返回消息異步消息同步消息名

6、 稱可視化圖符注釋連接將注釋體與要描述的實體相連。說明該注釋體是對該實體所進行的描述。用于對UML實體進行文字描述。用于表示從同步消息激活的動作返回到調用者的消息。表示異步控制流。當調用者發(fā)出消息后不要等待消息的返回即可繼續(xù)執(zhí)行自己的操作。異步消息主要用于描述實時系統(tǒng)中的并發(fā)行為。表示嵌套的控制流。操作的調用是一種典型的同步消息。調用者發(fā)出消息后必須等待消息的返回;當處理消息的操作執(zhí)行完畢,調用者才可繼續(xù)執(zhí)行自己的操作。描 述17消息的格式格式:序號條件表達式返回值:=消息名(參數列表)例:2:display(x,y) 簡單消息1.3.1:p:find() 帶返回值的嵌套消息x0 4:inve

7、rt(x,color) 條件消息3.1 *:update() 循環(huán)消息A3,b4/c2:copy(a,b) 線程同步18從Login use case開始我們如何登錄進一個系統(tǒng)?輸入用戶名輸入密碼按回車鍵, 或者點擊那可以發(fā)送登陸請求的按鈕如果用戶名錯或者密碼錯,系統(tǒng)將拒絕登錄并保留原頁面如果用戶名和密碼都正確,系統(tǒng)進入下一個正確頁面19因此,一個系統(tǒng)用戶在這一use case處將處理三個對象,它們中的兩個是 GUI。 對象:登錄頁面 (GUI)系統(tǒng)數據庫下一頁面 (GUI)2021例:一次學生注冊224.4 建立順序圖的步驟確定交互過程的上下文識別參與交互過程的對象為每個對象設置生命線,即確

8、定哪些對象存在于整個交互過程中,哪些對象在交互過程中被創(chuàng)建和撤銷從引發(fā)這個交互過程的初始消息開始,在生命線之間自頂向下依次畫出隨后的各個消息如果需要表示消息的嵌套,或/和表示消息發(fā)生時的時間點,則采用控制焦點。如果需要說明時間約束,則在消息旁邊加上約束說明如果需要,可以為每個消息附上前置條件和后置條件23試用順序圖描述下列情形,當用戶在自己的計算機上向網絡打印機發(fā)出一個打印任務時,他的計算機便向打印機服務器發(fā)送一條打印命令,譬如print(file)。打印機服務器如果發(fā)現網絡打印機處于空閑狀態(tài),則向打印機發(fā)送打印命令命令print(file);否則向打印隊列發(fā)送一條保存命令store(file

9、)。2425實例:存款264.5 協(xié)作圖協(xié)作圖是用于描述系統(tǒng)的行為是如何由系統(tǒng)的成分協(xié)作實現的圖,描述系統(tǒng)對象(或活動者)如何共同協(xié)作完成用例強調的是參與交互的對象的協(xié)作和組織順序圖和協(xié)作圖可以相互轉換協(xié)作圖中包括的建模元素有對象、消息、鏈等27多重對象多重對象:由多個對象組成的對象集合,用多個方框重疊表示,往往是同類的對象如果消息發(fā)送給多個對象,則用多重對象表示在順序圖中仍然顯示單對象的圖標28主動對象主動對象:一組屬性和一組方法的封裝體,其中至少有一個方法不需要接受消息就能主動執(zhí)行,即主動對象可以在不接受外部消息的情況下自己開始一個控制流29 消息執(zhí)行順序的編號方案協(xié)作圖中最常用的消息執(zhí)行

10、順序的編號方案有兩種:順序法:用簡單編號方案,從1開始,由小到大,順序排列。層次法:用小數點制編號方案,此時常常要求表示系統(tǒng)號、子系統(tǒng)號和模塊號。UML使用了小數點方案。302*:prepare()對象消息3:check()4:check=trueremove()7:check=truenew1:prepare():訂單提交窗口:訂單:交付貨物電視欄目:訂單項5:needsToRecorder()時序號 回授:購進貨物6:new電視庫存:倉庫貨物31對象的創(chuàng)建與銷毀在協(xié)作圖中表示創(chuàng)建和銷毀一個對象采用標有版型create的創(chuàng)建消息和標有版型destroy的銷毀消息32同步消息和異步消息協(xié)作圖中

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

溫馨提示

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

評論

0/150

提交評論