2012年3月3日

7.1.1-刺激/反應規則


給SA的UML/MDA實務手冊
----------
第7章-分析企業規則
7.1-Why分析企業規則

7.1.1-刺激/反應規則

PIM-2的狀態圖(State Machine Diagram)中,系統分析師主要分析及呈現「刺激/反應規則」(Stimulus/Response Rules)。當(WHEN)某個重要的外界事件發生,而且(and)物件如果(IF)恰好處於某種狀態下時,(THEN)物件就會做出某種事先約定好的行為。簡言之,WHEN and IF條件成立時,物件就會有THEN的反應。
在基金模擬個案中,投資人約定定期定額申購基金,當每月的約定日到,且該交易狀態為正常扣款的情況下,系統就會自動扣款申購一筆基金。系統分析師可以使用文字表達這項刺激/反應規則,如下:

WHEN 約定日到
IF 正常扣款
THEN 自動扣款

        或者,系統分析師也可以繪製狀態圖,呈現這項企業規則對定期定額申購交易物件行為的限制,如圖7-1所示。


7-1: 狀態圖(片段)

        在圖7-1的狀態圖片段中,針對定期定額申購交易物件,做了如下的行為限制:

WHEN 約定日到(事件發生)
IF 正常扣款(物件現處狀態)
THEN 自動扣款(轉換至另一狀態,並執行其中的行動)

        只是表達如上簡單的企業規則,其實顯現不出狀態圖的好處。如果,系統分析師遇到如下多項的企業規則時,就會認同狀態圖7-2的易於觀看與理解了。

WHEN 約定日到(事件發生)
IF 正常扣款(物件現處狀態)
THEN 自動扣款(轉換至另一狀態,並執行其中的行動)

WHEN 扣款失敗(事件發生)
IF 自動申購(物件現處狀態)
THEN 累計扣款失敗次數(發生轉換,並執行行動)
ELSE 正常扣款(轉換至另一狀態)

WHEN 連續三次扣款不成功(警戒條件成立)
IF 扣款失敗(事件發生)
THEN 終止扣款(轉換至另一狀態)
ELSE 正常扣款(轉換至另一狀態)

7-2: 定期定額申購交易之狀態圖(片段)


沒有留言: