Transcript CH06.ppt

物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
第6章 物件互動行為塑模
ISBN 978-986-012-6
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
內容大綱
學習目標
 6.1 導論
 6.2 物件互動行為塑模
 6.3 循序圖
 6.4 溝通圖
 6.5 狀態機圖
 6.6 結論
ISBN 978-986-457-012-6
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
學習目標
詳讀本章,你至少能瞭解:
 物件導向系統分析與設計中之物件互動行為塑模工作。
 何謂循序圖、溝通圖與狀態機圖及其用途。
 如何建構循序圖、溝通圖與狀態機圖及其建構準則。
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.3 循序圖
 循序圖是用來描述一個使用個案中參與物件及物件間的互動行為,
強調以時間發生之先後順序表達物件間的訊息傳遞與處理程序。

1.
2.
(1)
(2)
①
②
3.
操作描述
…
顯示細部說明()
執行時機:客戶瀏覽便當型錄時
點選【顯示細部說明】超連結。
執行事項:
系統依客戶點選的便當編號至資
料庫中搜尋該便當資料。
將此便當的所有欄位資料﹝便當
編號、便當名稱、單價、餐廳﹞
顯示在新網頁,同時出現【瀏覽
便當型錄】按鈕。
…
4-4
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
6.3.1 循序圖之元件(1/5)
 循序圖之重要元件包括生命線、訊息、操作與操作描述、控制
焦點與框架等。
循序圖元件
生命線
訊息線
(傳遞非同步訊息)
訊息線
(傳遞同步訊息)
訊息線(回傳)
訊息與操作
控制焦點
框架
符號
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.3.1.2 物件(3/3)
 為便於分析之進行,建議先準備一張物件匯總表,配合分析過
程逐步將資料填入表中。
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.3.1.6 框架 (1/9)
 為一種圖示標記,把原來單一線式訊息擴充成由一連串線式訊
息組成的區段來表達,用以表達循序圖中某一區段範圍內一連
串相關訊息與操作組合之控制流程、輸入與輸出等,簡稱組合
區段。
名稱
框架內容(組合區段)
 目前UML 2.2 (OMG, 2009) 中共定義了十一種框架類型,以下
將介紹常用的六種。
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.3.1.6 框架(2/13)
 多選一 (Alternative)
 多選一框架是用以表達彼此互斥的訊息序列選擇,典型的
範例是「If 前提為真,執行運算域A;Else 執行運算域
B」,其中每個運算域可包含多個線式訊息傳遞。
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
圖6-2c 「自由選擇框架」範例
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.3.1.6 框架(4/13)
 迴圈 (Loop)
 迴圈框架之表達結構很像自由選擇,它有成立條件與一個
運算域,該運算域也可包含多個線式訊息傳遞。當條件成
立(為「True」)時,運算域中的訊息會持續地被執行,
直到條件不成立(為「False」)為止。
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
圖6-2c 「終止框架」範例
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
6.3.1.6 框架(7/13)
 平行 (Parallel)
 平行框架是用以表達可同時執行的多個訊息傳遞。
: 使用者[行為者]
使用者介面
Application Core
1: 訂購產品()
par
2: 傳送交貨資料 ()
3: 傳送訂購資料 ()
4: 訂購成功訊息 ()
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.3.1.6 框架(8/13)
 參考 (Referencing)
 參考框架是用以表達某個循序圖可藉由一個訊息傳遞以參
考其他循序圖,例如提供服務,提升循序圖之重複使用
性,也可讓循序圖具有組合能力。
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
圖 6-2h 被參考之循序圖範例
查詢餘額
: 使用者[行為者]
使用者介面
查詢
帳戶分錄
1: 查詢餘額(帳號)
2: 查詢餘額(帳號)
3: 搜尋(帳號)
4: 回傳客戶帳號()
5: 查詢餘額(帳號)
6: 回傳餘額()
7: 回傳餘額()
活存帳號
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
圖6-2i 以循序圖表示Include 關係範例
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
圖6-2j 以循序圖表示Extend 關係範例
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
6.3.2 循序圖之建構步驟與準則(1/4)
 確認物件
 以生命線出現之順序或按時間發生先後順序排列
生命線1
生命線2
生命線3
生命線4
 兩個生命線間,表達訊息之水平線距離愈短愈好
生命線A
生命線B
生命線C
1:
生命線A
生命線C
生命線B
1:
2:
2:
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
6.3.2 循序圖之建構步驟與準則(2/4)
 操作描述
 擺在循序圖的最左側,描述內容主要來自使用個案之情節
描述。
 可考慮僅作功能性的描述,而完整及詳細的程式邏輯描
述,則另外以結構化英文、程式設計語言或物件限制語言
描述。
生命線1
生命線2
生命線3
1: 開始()
2: 操作()
3: 回傳值
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.4 溝通圖
 溝通圖強調以物件的結構化組織表達物件間的訊息傳遞與處理
程序。
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.4.1 溝通圖之元件(1/2)
 生命線
 溝通圖之生命線與循序圖之生命線相同,均是指參與互動之物
件。
 與循序圖之生命線不同的地方在於,溝通圖之生命線並沒有下方
的垂直虛線。
溝通圖元件
生命線
訊息
符號
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
6.5.1 行為狀態機圖之元件(1/9)
行為狀態機圖元件
符
號
開始狀態
簡單狀態
歷史狀態
組合狀態
21
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
6.5.1 行為狀態機圖之元件(2/9)
行為狀態機圖元件
符
號
分解分隔
轉換
(事件[成立條件]/動
作)
選擇
22
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
6.5.1 行為狀態機圖之元件(3/9)
行為狀態機圖元件
符
號
分岔
合併
結束狀態
23
物件導向系統分析與設計—結合MDA與UML(五版)
ISBN 978-986-457-012-6
吳仁和 著
6.5.1 行為狀態機圖之元件(4/9)
行為狀態機圖元件
符
號
進入點
離開點
終止節點
24
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
圖6-7 工作分配之同步組合狀態
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
圖6-9 行為狀態機圖範例
ISBN 978-986-457-012-6
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
超行為狀態機範例
ISBN 978-986-457-012-6
物件導向系統分析與設計—結合MDA與UML(五版)
吳仁和 著
ISBN 978-986-457-012-6
6.6 結論
 物件互動行為塑模是物件導向系統分析與設計過程中很重要的
一環,主要應用循序圖、溝通圖與狀態圖來表達一個使用個案
內物件間與物件內元件之互動行為,有利於物件進一步之封
裝。
 進行物件互動行為塑模時,每一個使用個案須建立一個互動
圖,建構互動圖所需之資訊主要來自於使用個案之情節描述、
表單、活動圖或類別圖,以及與使用者之互動。
 一個使用個案應有一個與之對應的互動圖來表達該個案內,許
多物件間之動態互動行為;也應有一個與之對應的類別圖來表
達該個案內,許多物件間之靜態結構關係。