2011年12月1日

2.7-PIM-4:定義操作及方法

寫給SA的UML/MDA實務手冊
----------
第2章-做好系統分析先睹為快

2.7-PIM-4:定義操作及方法

在PIM-4中,系統分析師可以用循序圖來表達,系統內部一群物件合力完成某一個系統UC時,執行期間的互動情形。之後,循序圖可能經由設計師之手,進行調整,並且成為程式設計師最關切的設計圖之二(另一張是類別圖)。程式設計師通常會依照循序圖的內容,編寫出方法的原始程式碼雛型。

此外,PIM-1的系統UC敘述和PIM-3的類別圖,對PIM-4的循序圖,有不可或缺的貢獻。從PIM-1的系統UC敘述中,系統分析師可以分析出系統流程。而在PIM-3的類別圖中,系統分析師定義出系統內部的靜態結構。隨後,到了PIM-4的循序圖時,則結合了系統UC以及靜態結構兩者。

系統分析師經由循序圖的思考與表達,試圖安排依據類別們所產出的一群物件之間的互動,讓這一群物件可以合力完成某一個系統UC。同時,在循序圖中,一群物件互動所引發的操作,則可以回饋給類別圖,定義出更多的操作及屬性,甚至發現之前未發現的其他類別及關係。

系統分析師可參考下述步驟來繪製循序圖:

1.扮演啟動者的參與者物件放置於循序圖最左方;扮演支援者的參與者物件放至於循序圖的最右方。

2.針對系統UC敘述裡所記載每項流程步驟,判斷執行時需要使用到哪些資料,且可指派擁有該資料的物件負責該項工作。

3.試著執行循序圖,以便調整流程,並且為操作加上參數。

4.把繪製循序圖時所找到的操作及屬性,回饋給類別圖。

以「網路申購單筆基金」系統UC之主要流程為例,我們示範繪製出如圖2-6所示的循序圖。


圖2-6:循序圖

最後,系統分析師可以試著執行一次循序圖的流程,並且為操作加上參數。增添輸入(in)及輸出(out)參數如下:

1.查詢託售基金清單(out 基金名稱清單)
2.查詢基金名稱(out 基金名稱, 基金代號)
3.查詢扣款帳號(out 扣款帳號)
4.單筆申購基金(in 基金代號, 申購金額)
5.計算手續費(in 申購金額, out 手續費)
6.查詢銀行折扣(out 銀行折扣)
7.查詢基金管理費(out 基金管理費)
8.查詢綜存帳戶餘額(out 綜存帳戶餘額)
9.查詢綜存帳戶餘額(in 扣款帳號, out 綜存帳戶餘額)
10.確認單筆申購(out 憑證號碼)
11.扣款()
12.扣款(in 交易金額)
13.設定申購日期()
14.產生交易編號(out 憑證號碼)

由於,單筆申購和定期定額申購計算手續費的方法相同,所以系統分析師可以將單筆申購類別裡的「計算手續費」操作移至申購交易類別,並匯總上述循序圖所新增的操作與相關屬性,更新類別圖如2-7所示。


圖2-7:更新之後的類別圖

沒有留言: