开发中使用UML的流程_06 PIM-2:分析业务规则
目录
1、业务规则及分类
1-1、刺激/反应规则
1-2、操作规则
1-3、结构规则
1-4、推理规则
1-5、计算规则
2、PIM-2:分析业务规则
2-1、状态图
2-2、执行动作
2-3、转换动作和do活动
2-4、状态的起点和终点
2-5、状态图的绘制
1、业务规则及分类
企业领域中任何一项必须遵守的条件(Condition),约束(Constraints)或者政策(Policies)都算是业务规则。
Odell书中将业务规则分为两大类:约束规则(Constraint Rules)与衍生规则(Derivation Rules)。约束规则主要用来约束对象结构和行为;衍生规则主要是推论约束或计算公式。细分类如下:
。约束规则
1.刺激/反应规则
2.操作规则
3.结构规则
。衍生规则
1.推论规则
2.计算规则
1-1、刺激/反应规则
在PIM-2的状态图中,系统分析员主要分析及呈现“刺激/反应规则。当(WHEN)某个重要的外界事件发生,而且(AND)对象如果(If)恰好处于某种状态下时,(THEN)对象就会做出某种事先约定好的行为。简言之,WHEN and IF条件成立时,对象就会有THEN的反应。
文字描述和状态图的比较:
WHEN 预定日到 (事件发生)
IF 正常扣款(对象现处状态)
THEN 自动扣款 (转换至另一个状态,并执行其中的动作)
WHEN 扣款失败(事件发生)
IF 自动申购 (对象现处状态)
THEN 累计扣款失败次数(发生转化,并执行动作)
ELSE 正常扣款(转换至另一状态)
WHEN 连续三次扣款不成功(警戒条件成立)
IF 扣款失败(事件发生)
THEN 终止扣款(转换至另一个状态)
ELSE 正常扣款(转换至另一个状态)
1-2、操作规则
操作规则用来保证操作会正常执行,通常又分为”操作前规则“及”操作后规则“
在基金模拟项目中,定期定额申购类提供了一项”自动申购“操作。只要(ONLY IF)在交易状态为正常扣款,且(and)扣款账户余额大于或等于交易金额(申购金额+手续费)的情况下,执行(Execute)”自动申购操作,自动申购的操作前规则,记述如下:
Execute 自动申购
ONLY IF 交易状态=正常扣款
and 扣款账户的余额>=(申购金额+手续费)
执行(Execute)“自动申购”这项操作正确地