企業通過一組業務規則(Buisness Rules)來控制整體的動作,包括人員、流程、系統、概念的動作,皆受制于業務規則。
企業領域中任何一項必須遵守的條件(Conditions)、約束(Constraints)或政策(Policies)都算是業務規則。
可以將業務規則分為兩大類,分別為:約束規則(Constraint Rules)與衍生規則(Derivation Rules)。
約束規則主要用來約束對象結構和行為;衍生規則主要是推論約束和計算公式。細分類如下:
1) 約束規則(Constraint Rules)
a) 刺激/反應規則(Stimulus/ Response Rules)
b) 操作規則(Operation Constraint Rules)
c) 結構規則(Structure Constraint Rules)
2) 衍生規則(Derivation Rules)
a) 推論規則(Inference Rules)
b) 計算規則(Computation Rules)
刺激/反應規則
當(WHEN)某個重要的外界事件發生,而且(and)對象如果(IF)恰好處于某種狀態下時,(THEN)對象就會做出某種事先約定好的行為。簡言之,WHEN and IF條件成立時,對象就會有THEN的反應。
操作規則
操作規則(Operation Constraint Rules)用來保證操作會正確執行,通常又分為“操作前規則”(Operation Precondition Rules)及“操作后規則”(Operation Postcondition Rules)。
只要(ONLY IF)……且(and)……執行(Execute)
結構規則
結構規則(Structure Constaints Rules)用來約束對象種類或關聯關系必須永遠遵守規則。在類圖里,最容易表達結構規則。
推論規則
推論規則(Inference Rules)指出某事實(Facts)為真(True)時,結論(Conclusion)可被推論得出。
IF …… THEN ……
計算規則
計算規則(Computation Rules)就是一般所謂的計算公式。
業務規則散落四處,系統分析員可以通過不同的的UML圖,重新組織且呈現業務規則,如下:
a) PIM-1的系統用例敘述,以系統流程為主,記錄約束流程的業務規則。
b) PIM-2的狀態圖,以對象行為為主,記錄刺激對象反應的業務規則。
c) PIM-3的類圖,以靜態結構為主,記錄約束對象種類或關聯關系的業務規則。
在進行PIM-1時,系統分析員已經廣泛地記下一些重要的業務規則了。接著,系統分析員可以從中找出涉及多項業務規則的業務對象(Business Object),并于此處的PIM-2,再進一步通過狀態圖,組織且記錄更多重要的業務規則。
同時,系統分析員經過了建立狀態圖的思考過程之后,可以對重要業務對象的狀態變化更加清楚。系統分析員可以用一張狀態圖呈現某一種重要對象一生的行為。從對象誕生到滅亡期間,它會對哪些事件(Event)有所反應,因而轉換(Transition)其內在狀態(State),和執行某些特定的動作(Action)。
針對對象一生中可能執行的一組動作,系統分析員使用狀態來分組這些動作。因此,對象一旦轉換進入某一個狀態之后,其可執行的動作就會被約束,直到發生了重要事件之后,對象才會轉換到另一個狀態,同時也執行新狀態內部規定好的動作。