物件互動(dòng)行為塑模循序圖課件_第1頁
物件互動(dòng)行為塑模循序圖課件_第2頁
物件互動(dòng)行為塑模循序圖課件_第3頁
物件互動(dòng)行為塑模循序圖課件_第4頁
物件互動(dòng)行為塑模循序圖課件_第5頁
已閱讀5頁,還剩46頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、L、物件互動(dòng)行為塑模循序圖 UML 2.0的四種互動(dòng)圖循序圖、溝通圖互動(dòng)概觀圖、時(shí)序圖循序圖生命線、訊息、操作與操作描述控制焦點(diǎn)、框架循序圖的建構(gòu)步驟循序圖建構(gòu)實(shí)例1靜態(tài)觀點(diǎn)vs.動(dòng)態(tài)觀點(diǎn)靜態(tài)觀點(diǎn)只是呈現(xiàn)物件如何被定義、以及物件與物件的關(guān)聯(lián)性,並不能透露出物件間是如何互相溝通、傳遞訊息。主要以類別圖或物件圖來表達(dá)物件間之靜態(tài)結(jié)構(gòu)動(dòng)態(tài)觀點(diǎn)呈現(xiàn)出系統(tǒng)如何對來自使用者的行動(dòng)/要求做出反應(yīng),以及資料如何由儲存的地方移動(dòng)到使用者的畫面。2對應(yīng)靜態(tài)、動(dòng)態(tài)觀點(diǎn)一個(gè)使用個(gè)案,應(yīng)要有一個(gè)與之對應(yīng)的類別圖以表達(dá)該個(gè)案內(nèi),物件間的靜態(tài)結(jié)構(gòu)關(guān)係一個(gè)使用個(gè)案,也應(yīng)有一個(gè)與之對應(yīng)的互動(dòng)圖以表達(dá)該個(gè)案內(nèi),物件間的動(dòng)態(tài)互動(dòng)行

2、為主要根據(jù)使用個(gè)案之情節(jié)描述、表單、活動(dòng)圖或類別圖,以及與使用者的互動(dòng),來進(jìn)行建構(gòu)3物件互動(dòng)行為塑模主要針對使用者介面(User Interface, UI)與應(yīng)用程式核心(Application Core, AC, 簡稱應(yīng)用程式)兩部分之物件間與物件內(nèi)元件的行為進(jìn)行塑模。以互動(dòng)圖來表達(dá)物件間的互動(dòng)行為以狀態(tài)圖來表達(dá)物件內(nèi)元件的狀態(tài)、轉(zhuǎn)換與控制41. UML 2.0的四種互動(dòng)圖(1) 循序圖(Sequence Diagram)描述一個(gè)使用個(gè)案執(zhí)行過程中,參與該個(gè)案的物件、以及物件間傳遞訊息的先後順序強(qiáng)調(diào)訊息傳遞的時(shí)間性5循序圖實(shí)例6循序圖實(shí)例:病患約診7UML 2.0的四種互動(dòng)圖(2) 溝通圖

3、(Communication Diagram)描述一個(gè)使用個(gè)案執(zhí)行過程中,有哪些物件必須參與,透過合作,傳遞訊息,以完成一個(gè)使用個(gè)案強(qiáng)調(diào)合作物件間的結(jié)構(gòu) 在UML 1.0 時(shí)稱為合作圖8溝通圖實(shí)例9UML 2.0的四種互動(dòng)圖(3) 互動(dòng)概觀圖(Interaction Overview Diagram)是一種活動(dòng)圖的變形用以描述高層次的控制流程及它們之間的互動(dòng)10互動(dòng)概觀圖實(shí)例11UML 2.0的四種互動(dòng)圖(4) 時(shí)序圖(Timing Diagram)當(dāng)主要探討重點(diǎn)是有關(guān)於時(shí)間時(shí),時(shí)序圖將焦點(diǎn)放在生命線或者生命線之間在時(shí)間軸上狀態(tài)的改變。12時(shí)序圖實(shí)例13物件互動(dòng)行為塑模的圖形選擇四種互動(dòng)圖中,

4、以循序圖及溝通圖最為重要溝通圖與循序圖在語意上是相同的,且可互相轉(zhuǎn)換,轉(zhuǎn)換的過程中不會有資訊遺失為避免系統(tǒng)分析與設(shè)計(jì)工作上的重複,且許多UML工具可讓循序圖與溝通圖直接轉(zhuǎn)換,所以繪製互動(dòng)圖時(shí),只需要畫其中一種圖形即可本課程主要介紹:循序圖142. 循序圖 描述一個(gè)使用個(gè)案中參與物件及物件間的互動(dòng)行為強(qiáng)調(diào)以時(shí)間發(fā)生的先後順序表達(dá)物件間的訊息傳遞與處理程序152.1 生命線(Lifeline)在互動(dòng)圖中,我們稱參與互動(dòng)的物件為生命線以矩形表示,在下方加上與物件垂直的虛線矩形中應(yīng)標(biāo)示該物件名稱與其類別名稱(Object: Class),而物件的名稱可省略。16實(shí)作觀點(diǎn),循序圖的三種物件介面物件(In

5、terface Object):也稱邊界物件,是行為者和系統(tǒng)交談的媒介??刂莆锛?Control Object):包含許多應(yīng)用系統(tǒng)邏輯(如企業(yè)規(guī)則),也負(fù)責(zé)協(xié)調(diào)與管理其他物件。實(shí)體物件(Entity Object):常以企業(yè)的領(lǐng)域術(shù)語命名,用來表示使用個(gè)案完成後仍需要儲存在資料庫中的資料,但某些實(shí)體物件也可以是暫存的資料,例如搜尋結(jié)果。172.2 訊息(Message)在訊息傳遞的表達(dá)上,採用一條帶箭頭的直線,表示物件obj1傳送一個(gè) 訊息給物件obj218呼叫與回傳訊息呼叫訊息若使用個(gè)案的情節(jié)是以事件列描述,也就是採用主詞動(dòng)詞受詞的方式,且其中的動(dòng)詞為操作,則該操作的輸入或輸出就可能是訊息。

6、水平實(shí)線、實(shí)心三角形箭頭表示同步訊息;帶有箭頭的直線為非同步訊息回傳訊息:以水平虛線箭頭表示19同步與非同步訊息同步訊息(Synchronous Message)當(dāng)該訊息一旦被啟動(dòng),只有等到啟動(dòng)生命線結(jié)束之後,訊息才會回傳給呼叫者非同步訊息(Asynchronous Message)一旦啟動(dòng)之後,會立刻返回呼叫者,呼叫者會繼續(xù)執(zhí)行接下來該執(zhí)行的動(dòng)作而不會等待非同步訊息的回傳。例如Web 2.0應(yīng)用網(wǎng)站,常採AJAX技術(shù)下頁:登入的訊息在Javascript中被啟動(dòng),執(zhí)行一個(gè)非同步的動(dòng)作send()將使用者的資訊傳送到伺服器端去驗(yàn)證在等待伺服器驗(yàn)證的同時(shí),使用者還是可以繼續(xù)其動(dòng)作而不會有影響(例

7、如:繼續(xù)瀏覽畫面等)一旦伺服器處理完畢,回傳到客戶端,客戶端的Javascript回呼函數(shù)會接著執(zhí)行接下來所必須的工作(例如改變使用者的畫面變成會員的畫面)。20AJAX非同步訊息實(shí)例21訊息參數(shù)當(dāng)一個(gè)物件傳遞訊息給另個(gè)一物件時(shí),訊息也可以一起傳送參數(shù)下圖顯示john這個(gè)學(xué)生送了註冊課程訊息給系統(tǒng),及他想要註冊的課程cour (類別型態(tài)為Course)參數(shù)名稱:型態(tài)22訊息回傳值(Return Value)如果一個(gè)訊息有回傳值,也可以將它在循序圖中表示出來以下圖為例,當(dāng)註冊課程成功時(shí),我們希望這個(gè)訊息能夠傳回一個(gè)整數(shù),存放在名為result的變數(shù)中:232.3 操作(Operation)與操作

8、描述操作指某一物件接到另一物件送達(dá)的訊息時(shí),接收端物件為了執(zhí)行發(fā)送端物件送來之要求,所提供因應(yīng)的處理方法。循序圖的操作描述需與類別圖的操作相對應(yīng)操作描述操作的細(xì)部說明,從系統(tǒng)的行為觀點(diǎn),描述系統(tǒng)動(dòng)作與邏輯程序及所需的輸入與輸出24操作描述顯示細(xì)部說明()執(zhí)行時(shí)機(jī):客戶瀏覽便當(dāng)型錄時(shí)點(diǎn)選【顯示細(xì)部說明】超連結(jié)。執(zhí)行事項(xiàng):系統(tǒng)依客戶點(diǎn)選的便當(dāng)編號至資料庫中搜尋該便當(dāng)資料。將此便當(dāng)?shù)乃袡谖毁Y料便當(dāng)編號、便當(dāng)名稱、單價(jià)、餐廳顯示在新網(wǎng)頁,同時(shí)出現(xiàn)【瀏覽便當(dāng)型錄】按鈕。循序圖範(fàn)例 & 操作描述252.4 控制焦點(diǎn)(Focus of Control)代表系統(tǒng)在執(zhí)行過程中,某物件在某個(gè)時(shí)間點(diǎn)上因收到訊息而

9、被啟動(dòng),並獲得控制權(quán)。用長且細(xì)的矩形(長條圖)表示,且與該物件的生命線重疊。262.5 框架(Frame)把原本單一線式訊息,擴(kuò)充成由一連串線式訊息組成的區(qū)段以表達(dá)某一區(qū)段範(fàn)圍內(nèi)一連串相關(guān)訊息與操作組合的控制流程、輸入與輸出等名稱框架內(nèi)容(組合區(qū)段)27常用的框架1:多選一(Alternative)表達(dá)彼此互斥的訊息序列選擇,組合區(qū)段用alt命名If 前提為真,執(zhí)行運(yùn)算域A;Else 執(zhí)行運(yùn)算域B28常用的框架2:自由選擇(Option)表達(dá)可能發(fā)生的訊息序列,組合區(qū)段用opt命名其概念如多選一的If (如右圖的選擇顯示明細(xì)),但沒有Else 的部分29常用的框架3:迴圈(Loop)用loop

10、命名當(dāng)條件True(如右圖的繼續(xù)訂購),運(yùn)算域中的訊息會持續(xù)被執(zhí)行,直到條件False為止30常用的框架4:終止(Break)用break命名若條件為False,運(yùn)算域中的訊息被跳過當(dāng)條件True時(shí),運(yùn)算域中的訊息才會被執(zhí)行,但當(dāng)運(yùn)算域中的訊息被執(zhí)行完畢(例如一旦放入光碟),該區(qū)段以下所有訊息傳遞與操作將被終止31常用的框架5:平行(Parallel)用par命名每個(gè)運(yùn)算域包含多個(gè)訊息傳遞,所有運(yùn)算域的訊息傳遞可同時(shí)執(zhí)行且所有訊息傳遞執(zhí)行完畢之後,該區(qū)段的工作才算完成。 32常用的框架6:參考(Referencing)表達(dá)某個(gè)循序圖可藉由一個(gè)訊息傳遞,以參考其他循序圖,用ref命名被參考的循序

11、圖名稱與參數(shù)標(biāo)示在內(nèi)容區(qū)參考框架可提升循序圖之重複使用性33上頁被參考的循序圖34呼應(yīng)p.8的互動(dòng)概觀圖描述高層次的控制流程及它們之間的互動(dòng)右圖告訴讀者,這個(gè)部分請參考其他相關(guān)的互動(dòng)圖以了解細(xì)部內(nèi)容以及互動(dòng)流程353. 循序圖的建構(gòu)步驟 可先從類別圖或使用個(gè)案的情節(jié)描述中,確認(rèn)物件、物件間傳遞的訊息及操作,再進(jìn)一步繪製循序圖。確認(rèn)物件操作描述描述訊息繪製循序圖363.1 確認(rèn)物件可直接沿用類別圖上類別之物件將各物件繪製成循序圖中的生命線這些生命線可依出現(xiàn)的順序進(jìn)行排列兩個(gè)生命線間,表達(dá)訊息的水平線距離愈短愈好較佳373.2 操作描述通常放在循序圖的最左側(cè),描述內(nèi)容主要來自使用個(gè)案的情節(jié)描述可僅

12、作功能性的描述383.3 描述訊息描述物件間訊息傳遞的動(dòng)作當(dāng)一個(gè)物件送出一訊息給另一個(gè)物件時(shí),由發(fā)送端畫出一條往接收端之水平線段箭頭,水平線上須標(biāo)示訊息名稱及可能的參數(shù)描述訊息的相關(guān)原則如下:盡可能將每一訊息的參數(shù)數(shù)目減到最少,有利於再用。相同或類似的訊息處理,其命名應(yīng)相同,如此可瞭解物件間相似的訊息傳遞。命名時(shí),應(yīng)能從名稱上反映出物件間訊息傳遞的作用、訊息的內(nèi)容或其意義。393.4 繪製循序圖將生命線依物件間訊息傳遞或接收發(fā)生的時(shí)間順序,由左至右安排。在生命線上標(biāo)示物件間傳遞或接收之相關(guān)訊息與操作。接著依每一生命線執(zhí)行某動(dòng)作之時(shí)段畫出控制焦點(diǎn)。繪製UI(使用者介面)循序圖與AC(應(yīng)用程式)循

13、序圖時(shí),尚需檢視兩者間訊息傳遞與操作的一致性與完整性。404. 循序圖建構(gòu)實(shí)例以課本西子灣線上訂購系統(tǒng)新增訂購項(xiàng)目使用個(gè)案為例介紹如何利用UI 循序圖以及AC 循序圖進(jìn)行物件互動(dòng)行為塑模41新增訂購項(xiàng)目使用個(gè)案描述西子灣文化事業(yè)股份有限公司使用個(gè)案名稱:新增訂購項(xiàng)目行為者:客戶目標(biāo):使客戶能在線上瀏覽書籍產(chǎn)品並進(jìn)行訂購前提:客戶已連線至網(wǎng)站結(jié)束狀態(tài):客戶讀取已置入書籍訂購項(xiàng)目之購物車內(nèi)容一系列事件:正常程序-1.客戶透過瀏覽器上網(wǎng),至西子灣線上訂購系統(tǒng)後,瀏覽書籍型錄。2.客戶如欲得知一書籍之詳細(xì)資料,可查看其細(xì)部說明(如表10 及10-3b)。3.客戶若有意購買書籍,可點(diǎn)選該書籍產(chǎn)品將之置入

14、購物車內(nèi),並設(shè)定訂購數(shù)量(未設(shè)定時(shí)預(yù)設(shè)值為1)(客戶可一次訂購一至多項(xiàng)書籍產(chǎn)品,訂購數(shù)量不加以限制)。4.系統(tǒng)自動(dòng)計(jì)算並顯示購物車內(nèi)的訂購金額計(jì)算單項(xiàng)產(chǎn)品金額 = 單價(jià) 數(shù)量計(jì)算訂購總金額:(單項(xiàng)產(chǎn)品金額)5. 客戶讀取已置入書籍訂購項(xiàng)目之購物車內(nèi)容例外狀況-客戶不慎將非欲訂購之書籍項(xiàng)目置入購物車內(nèi)客戶可於購物車內(nèi),刪除或修改錯(cuò)誤的訂購項(xiàng)目與數(shù)量42新增訂購項(xiàng)目使用個(gè)案之活動(dòng)圖 434.1 使用者介面(UI)循序圖步驟1:確認(rèn)物件分析新增訂購項(xiàng)目使用個(gè)案中的一系列事件及活動(dòng)圖,從其中的相關(guān)名詞找出介面物件。例如書籍型錄為行為者和系統(tǒng)交談的媒介,可轉(zhuǎn)為書籍型錄UI介面物件??刂莆锛嗫捎梢幌盗惺?/p>

15、件及活動(dòng)圖之活動(dòng)找出例如可由顯示細(xì)部說明活動(dòng)找出顯示控制物件UI 循序圖中,控制物件與實(shí)體物件可濃縮成一個(gè)系統(tǒng)應(yīng)用程式核心(Application Core, AC)物件,此AC 物件與介面物件間,會有訊息傳遞與操作執(zhí)行44使用者介面(UI)循序圖步驟2:確認(rèn)物件間的訊息與操作可由新增訂購項(xiàng)目使用個(gè)案之一系列事件或活動(dòng)圖之活動(dòng)進(jìn)行分析,表示成下表:45使用者介面(UI)循序圖步驟3:繪製UI 循序圖46步驟3:繪製UI 循序圖(Cont.)474.2 應(yīng)用程式(AC)循序圖步驟1:確認(rèn)物件分析新增訂購項(xiàng)目使用個(gè)案中的一系列事件及活動(dòng)圖,從其中的相關(guān)名詞找出實(shí)體物件。例如註記1.1與1.2的系統(tǒng)輸出資訊,可得知需有一書籍資料實(shí)體物件於資料庫中記錄書籍之詳細(xì)資訊。於AC 循序圖中,可將建構(gòu)UI 循序圖時(shí)找出之介面物件濃縮

溫馨提示

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

評論

0/150

提交評論