2011年10月14日

1.4.3-操作與方法

寫給SA的UML/MDA實務手冊
----------
第1章-Why系統分析師需要學習UML
1.4-重要的OO及UML概念

1.4.3-操作與方法

針對物件的操作,系統分析師還必須進一步探問how,了解操作的實行方法(Method)。簡言之,操作是物件的what,而方法則是物件的how。然而,在我們用程式實作出物件之前,物件是死的,它哪會有什麼方法來執行操作。所以,我們其實是想獲知企業人員慣用的操作方法,然後將人為的操作方法轉移給物件,成為物件的操作方法。

系統分析師訪談企業人員時,主要得獲知方法的執行步驟(Procedure)、所需或者產出的資料、計算公式,以及企業的特殊限制。也許,系統分析師可以參考下列問題,向企業人員提問:

1.您(企業人員)通常都怎麼執行某操作的呢?可以告訴我,主要的執行步驟嗎?(探問執行步驟)
2.請告訴我這些執行步驟會需要使用到什麼資料?以及會產出什麼資料?(探問資料的輸入及輸出)
3.請告訴我這些執行步驟會需要使用到計算公式嗎?(探問計算公式)
4.在執行某操作時,有沒有什麼重要的限制需要注意或遵守的?(探問特殊限制)

假設針對基金帳戶物件的「申購基金」這項操作的執行步驟,系統分析師向企業人員訪談的過程中,可能出現如下述的模擬對話:

系統分析師問:您通常都怎麼執行「申購基金」這件事呢?可以告訴我,主要的執行步驟嗎?(探問執行步驟)
企業人員答:是這樣的,申購基金分為兩種:一種是單筆申購,另一種是定期定額申購。
系統分析師問:誰在什麼時候會決定是哪一種?還是可以同時包含兩種?(判斷是否要拆成兩項操作)
企業人員答:客戶一開始在申購基金時,就得二選一,決定是要單筆申購某檔基金,還是定期定額申購。

(對於客戶而言,單筆申購基金或者定期定額申購基金是兩項不同的目的,所以系統分析師決定將原先的圖1-1裡的申購基金操作一分為二,改成圖1-2的模樣。)


圖1-2: 申購基金操作一分為二

系統分析師問:請您挑比較簡單好懂的一種,告訴我您主要的執行步驟?(探問執行步驟)
企業人員答:都很好懂啦,我就先說單筆申購的情況,好了。客戶告訴我們單筆申購的基金名稱、信託金額以及扣款帳號,那我們這邊只要確認這檔基金有販售,然後客戶指定的扣款帳號裡頭有足夠的餘額可以付信託金額和申購手續費,這樣就可以申購了。確認申購之後,我們會從客戶指定的扣款帳號中,支出信託金額和申購手續費。最後,我們會給客戶一個申購交易的憑証號碼,就完成單筆申購了。

系統分析師記錄「單筆申購基金」的主要執行步驟如下:

1.客戶告知(基金名稱)、(信託金額)以及(扣款帳號)。
2.企業人員確認(該檔基金販售中)。
3.企業人員確認客戶指定的(扣款帳號)裡頭有足夠的(餘額),可以用來支付(信託金額)和(申購手續費)。
4.確認申購之後,我們會從客戶指定的(扣款帳號)中,支出(信託金額)和(申購手續費)。
5.最後,我們會給客戶一個(申購交易的憑証號碼),就完成單筆申購了。

隨後,系統分析師可以請企業人員協助確認這份記錄,同時給予補充。但是,對於單筆申購基金的操作方法還沒訪談完,系統分析師還得獲知並確認輸出入資料、計算公式以及特殊限制。

沒有留言: