luqingfei@C++

为中华之崛起而崛起!
兼听则明,偏听则暗。

PIM-2:分析业务规则,生成状态图

 企业通过一组业务规则(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)。

 

针对对象一生中可能执行的一组动作,系统分析员使用状态来分组这些动作。因此,对象一旦转换进入某一个状态之后,其可执行的动作就会被约束,直到发生了重要事件之后,对象才会转换到另一个状态,同时也执行新状态内部规定好的动作。

 

 

 

 

 

posted on 2009-04-10 18:07 luqingfei 阅读(720) 评论(0)  编辑 收藏 引用 所属分类: 软件工程


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

<2009年4月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

统计

留言簿(6)

随笔分类(109)

随笔档案(105)

Blogers

Game

Life

NodeJs

Python

Useful Webs

大牛

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜