5.交互圖(序列+協(xié)作)_第1頁
5.交互圖(序列+協(xié)作)_第2頁
5.交互圖(序列+協(xié)作)_第3頁
5.交互圖(序列+協(xié)作)_第4頁
5.交互圖(序列+協(xié)作)_第5頁
已閱讀5頁,還剩48頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、交互圖,交互圖概述 序列圖的定義和作用 序列圖的組成元素 協(xié)作圖,交互圖概述,交互圖(Interaction Diagram) 描述對象之間的關(guān)系 描述對象之間的信息傳遞 作用 通常用來描述某個用例的行為 為實現(xiàn)某個用例,為系統(tǒng)的動態(tài)行為建模 種類 序列圖(Sequence Diagram) 協(xié)作圖(Collaboration Diagram),序列圖(sequence diagram),定義:描述對象之間的消息交互的二維圖 又稱“時序圖”或“順序圖” 橫向:代表在協(xié)作中各獨立對象的角色 縱向:時間軸,沿豎線向下延伸。 用于強調(diào)消息在時間軸上的先后順序,序列圖(sequence diagram

2、),作用: 通常用來描述用例的實現(xiàn):表明了由哪些對象,通過消息相互協(xié)作來實現(xiàn)用例的功能 可以根據(jù)對象之間的交互關(guān)系來定義類的職責(zé),序列圖(sequence diagram),自動車鎖系統(tǒng)中的鎖車用例,序列圖的組成元素,組成元素 對象 生命線:表示對象的生存期 激活(控制焦點):表示對象正在執(zhí)行某個操作 消息:表示對象之間的通訊,生命線,激活,對象,順序圖的組成,消息,對象,序列圖中的對象 系統(tǒng)的參與者 任何有效的系統(tǒng)對象 對象的表示形式 圖形:包圍名稱的矩形框 名稱:對象名 :類名 特點:下部有一條被稱為“生命線”的垂直虛線,對象,對象的類型 Persistence(持續(xù)性) Persiste

3、nt(持續(xù)):對象能夠保存在數(shù)據(jù)庫或其它持續(xù)存儲器中 Static(靜態(tài)):保存在內(nèi)存中,直至程序終止才會銷毀 Transient(臨時):臨時保存在內(nèi)存中,對象,對象的位置 對象置于順序圖的頂部:意味著在交互開始的時候?qū)ο缶鸵呀?jīng)存在 對象的位置不在頂部:表示對象是在交互的過程中被創(chuàng)建的 主角:一個交互的發(fā)起對象,通常在最左邊 反應(yīng)系統(tǒng)角色:與主角交互的對象,通常在圖的右邊,生命線,生命線(Lifeline) 對象的底部中心位置的一條垂直的虛線 這是一個時間線,其長度取決于交互持續(xù)的時間,用來表示對象在一段時間內(nèi)的存在 對象存在的時段 對象在擁有控制線程時 被動對象被外部調(diào)用時,銷毀對象,激活

4、/控制焦點(Focus of Control),在對象的生命線上,包含一個矩形,表示對象處于激活狀態(tài) 處于激活狀態(tài)的對象正在執(zhí)行某個任務(wù) 對象在完成自己的工作后,去除激活,處于空閑狀態(tài) 頂端與激活時間對齊,底端與完成時間對齊,激活/控制焦點,可以通過修改Options中的Diagram來決定是否顯示激活狀態(tài)。,消息,消息的定義: 一個對象(發(fā)送者)向另一個或幾個其他對象(接收者)發(fā)送信息號 一個對象(調(diào)用者)調(diào)用另一個對象(被調(diào)用者)的操作 消息的組成 包括消息號、消息名、消息參數(shù)。 例如:1.login(uName, uPwd),不同類型的消息,不同類型的消息,不同類型的消息,Synchro

5、nization(同步性) Simple(常規(guī)) Synchronous(同步) Balking(阻止) Timeout(超時) Procedure Call(過程調(diào)用) Asynchronous(異步) Return(返回) Frequency(頻率) Periodic(定期):按照固定時間間隔發(fā)送 Aperiodic(不定期):只發(fā)送一次,或者在不規(guī)則的時間發(fā)送,不同類型的消息,序列圖的繪制順序,練習(xí)1:繪制序列圖,倉庫管理員處理產(chǎn)品入庫工作流程,基本工作流程如下: 1.倉庫管理員將通過庫存管理子系統(tǒng)將生產(chǎn)的產(chǎn)品處理入庫。 2.倉庫管理員通過庫存管理子系統(tǒng)中的產(chǎn)品入庫界面獲取產(chǎn)品信息。 3

6、.產(chǎn)品入庫界面根據(jù)產(chǎn)品的編號將產(chǎn)品類實例化并請求該類產(chǎn)品信息。 4.產(chǎn)品類實例化對象根據(jù)產(chǎn)品的編號加載產(chǎn)品信息,并提供給產(chǎn)品入庫界面。 5.倉庫管理員通過產(chǎn)品入庫界面增加產(chǎn)品數(shù)目。 6.產(chǎn)品入庫界面通過產(chǎn)品類實例化對象修改產(chǎn)品信息。 7.產(chǎn)品類實例化對象向產(chǎn)品入庫界面返回修改信息。 8.產(chǎn)品入庫界面向倉庫管理員顯示添加成功信息。,練習(xí)1:繪制序列圖,練習(xí)2,為ATM存款用例繪制一個序列圖,轉(zhuǎn)賬用例序列圖,練習(xí)3,為選課系統(tǒng)中的選課用例繪制序列圖。假設(shè)學(xué)生已經(jīng)成功登陸系統(tǒng),選擇的事件可以簡化如下: 選課事件: 1.進入選課主界面。 2.點擊選課。 3.系統(tǒng)顯示所有課程信息。 4.學(xué)生選擇課程。

7、5.系統(tǒng)驗證課程是否可選。 6.系統(tǒng)提示課程選擇成功,提示學(xué)生交費。 7.用例結(jié)束。 錯誤事件: 5A: 課程不可選。 5A1:系統(tǒng)提示課程不可選原因。、 5A2:重新選課。,練習(xí)3,練習(xí)3(查詢課程),練習(xí)4:繪制序列圖,以飲料自動銷售系統(tǒng)為例,對“買飲料”的種場景進行建模,對每一個場景,繪制其對應(yīng)的順序圖 1)買飲料的正常場景,基本事件流如下: (1)顧客從機器的前端錢幣口投入錢幣,然后選擇想要的飲料 (2)錢幣到達錢幣記錄儀,記錄儀更新自己的存儲 (3)記錄儀通知分配器分發(fā)飲料到機器前端 2)飲料“已售完”的場景 3)機器沒有合適的零錢的場景,練習(xí)4:繪制序列圖,1)買飲料的“正?!眻鼍?/p>

8、,練習(xí)4:繪制序列圖,2)飲料“已售完”的場景,練習(xí)4:繪制序列圖,3)“沒有合適的零錢”的場景,練習(xí)5:繪制序列圖,打印文件 用戶通過計算機向打印服務(wù)器發(fā)送打印命令 打印機如果空閑,則直接執(zhí)行打印操作 否則,將打印文件存儲在打印隊列之中,練習(xí)5:繪制序列圖,借書處理(需求描述),讀者在借書時,先由管理員把借書證上的讀者編號掃描給系統(tǒng),系統(tǒng)檢查這個讀者的借書證合法信息;如果不合法,則系統(tǒng)給出提示,如果正確系統(tǒng)返回讀者的身份信息,以及讀者的借閱信息。 如果讀者借書數(shù)量沒有超過借書的上限,則把要借書的圖書編號輸入系統(tǒng),系統(tǒng)登記借書信息,并返回借書成功信息,借書過程完成,圖書館借書處理的順序圖,用例

9、:借書 參與者:管理員,借閱者 基本事件流: 1. 借閱者帶著借書證和書來到柜臺。 2. 管員輸入借閱者的借書證編碼。 3. 系統(tǒng)檢查借閱者的合法性。 4. 系統(tǒng)顯示借閱者的信息。 5. 系統(tǒng)檢查借閱者的借閱信息。 6. 管員輸入所借圖書的條碼。 7. 系統(tǒng)顯示所借圖書的信息,并登記圖書。 管員重復(fù)67步,直到結(jié)束。 8. 系統(tǒng)登記借閱者的本次借閱信息,并顯示。 擴展事件流: 3a. 借閱者身份非法,則提示,本次拒借。 5a. 該借閱者所借圖書中有超期的, 則提示, 本次拒借。 5b. 該借閱者所借圖書數(shù)量超過了上限, 則提示, 本次拒借。,還書處理(需求描述),讀者在還書時,先由管理員把所借

10、圖書的圖書編號掃描給系統(tǒng),系統(tǒng)接收到這個信息,則顯示這個該讀者信息,以及這本書的信息。 管理員確認還書,則系統(tǒng)登記還書信息,并返回還書成功信息,還書過程完成。,圖書館還書處理的序列圖,用例:還書 參與者:管理員,借閱者 操作流: 管理員進入圖書借閱界面,用例開始。 系統(tǒng)要求輸入所還圖書的條碼。 系統(tǒng)顯示所還圖書的圖書、讀者、借閱等信息 確認還書。 系統(tǒng)回到上一界面,等待處理下一業(yè)務(wù)。,圖書館還書處理的序列圖,協(xié)作圖 Collaboration Diagram,協(xié)作: 在一定的語境中,一組用以實現(xiàn)某些行為的對象之間的相互作用 它描述了若干對象為實現(xiàn)某種目的,而組成相互合作的“對象社會” 協(xié)作圖:

11、表現(xiàn)對象協(xié)作關(guān)系的圖 是對“對象圖”的擴展(增加消息傳遞) 序列圖和協(xié)作圖可以相互轉(zhuǎn)化 強調(diào):參與交互對象的角色位置與組織關(guān)系,組成協(xié)作圖的元素對象,對象的角色表示一個或一組對象在完成目標(biāo)的過程中所應(yīng)起的那部分作用。 不需要關(guān)于某個類的所有對象都出現(xiàn) 同一個類的對象可能充當(dāng)多個角色 表示形式 和序列圖中的對象的表示方式基本一樣 與序列圖不同的是,協(xié)作圖中的對象的下部沒有 “生命線”,并且對象存在多對象的形式,組成協(xié)作圖的元素消息,作用:通過一系列的消息來描述系統(tǒng)的動態(tài)行為 表示形式: 每個消息包括一個順序號以及消息的名稱 使用帶有標(biāo)簽的箭頭來表示,箭頭指向接收者 附在連接發(fā)送者和接收者的鏈上

12、消息的名稱也可以是一個方法,包含一個名字和參數(shù)表、可選的返回值表。,組成協(xié)作圖的元素鏈,在協(xié)作圖中的鏈和對象圖中鏈的概念和表示形式都相同,都是兩個或多個對象之間的獨立連接。 鏈的表示形式 普通:連接在兩個對象之間的線或弧。 自身關(guān)聯(lián):兩端指向同一對象的回路,是一條弧。,多重對象,多個對象的集合,往往是同類對象 用于表示:同一消息同時發(fā)給多個對象 在順序圖中仍然顯示為單一對象的圖標(biāo),練習(xí),畫出對應(yīng)的順序圖,答案,練習(xí):協(xié)作圖,練習(xí):協(xié)作圖,順序圖與協(xié)作圖的關(guān)系,順序圖與協(xié)作圖都表示對象之間的交互作用,只是側(cè)重點有所不同: 順序圖描述了對象交互的時間順序,但沒有明確地表達對象之間的關(guān)系(多用于用例

13、描述) 協(xié)作圖描述了對象在交互中承擔(dān)的角色,但對象在交互中的時間順序必須從消息的順序號獲得(多用于詳細設(shè)計時對象關(guān)系的描述) 順序圖可以表示出對象的激活狀態(tài)和非激活狀態(tài),也可以表示出對象的創(chuàng)建和銷毀的相對時間;協(xié)作圖則沒有這些功能。 兩種圖的語義是等價的,可以采用Rational Rose工具相互轉(zhuǎn)化,而不丟失任何信息。,練習(xí),用例“新增書籍” 基本事件流 圖書管理員向系統(tǒng)發(fā)出“新增書籍信息“請求。 系統(tǒng)要求圖書管理員選擇要新增的書籍是計算機類還是非計算機類。 圖書管理員做出選擇后,顯示相應(yīng)界面,讓圖書管理員輸入信息,并自動根據(jù)書號規(guī)則生成書號。 圖書管理員輸入書籍的相關(guān)信息,包括:書名、作者、出版社、ISBN號、開本、頁數(shù)、定價、是否有CD-ROM。 系統(tǒng)確定輸入的信息中書名沒有重復(fù)。 系統(tǒng)將所輸入的信息存儲建檔。,練習(xí),擴展事件流 如果輸入的書名有重名現(xiàn)象,則顯示

溫馨提示

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

評論

0/150

提交評論