OSWorkflow Concept (from OSWorkflow Manual)

来源:互联网 发布:51单片机入门书籍推荐 编辑:程序博客网 时间:2024/06/09 17:01

OSWorkflow - Workflow Concept
OSWorkflow通过一个XML来描述工作流的定义,包括其中的steps,states,transitions和functionality
1. 一个流程包含多个steps。(对应XPDL的Activity)
2. 每个step可能包含多个actions,他们可能设置为自动运行,可能设置为由用户手动。(对应XPDL的Application)
3. 每个action至少包含一个unconditional result,可以有也可以没有conditional result。(对应XPDL的Transitions,unconditional result就是无条件的Transition,也就是DEFAULT条件类型的Transition,conditional result就是有条件的)
4. 如果多个conditional result都满足,那么第一个满足的被执行;如果没有conditional result满足,那么unconditional result被执行。(对应XPDL中的TransitionRef,如果没有条件Transition满足,那么流向Default类型的Transition)
5. 一个result可以保留在当前steps,引向新的step,split或者join,流程的状态也会发生变化(Underway/Queued/Finished)
6. If a result causes a split, the result specifies a split attribute which points to a split element that defines the splits。(这句看不大懂)
7. 一个split可以包含一个或多个unconditional results,但是没有conditional result;unconditional results引向从split出发的steps。(为什么规定成这样呢)
8. register是全局变量,在流程活动的时候被解析,对于所有的functions和conditions有效
9. propertyset是一个全局有效的用于持久数据的map
10. transientVars是一个临时数据的Map,也对所有包含registers/user inputs/流程context/states的functions和conditions有效。但是他只在流程的生命期存在。