基于FSM的OSWorkflow

OSWorkflow是基于FSM(finite state machine,有限状态机)理论。每一个state表示了step及其所属的status(state=stepID+status)。



    首先,有必要简要介绍一下FSM:

    最基本的FSM包含三部分:States,Start State,Transtion/Actions

    如下图所示:

基于FSM的OSWorkflow
    一个state到另一个state就称为Transtion。



    下面,我们来看看OSWorkflow的核心设计思想:

    一个state到另一个state的转移(Transtion),依赖于action的发生。在一个workflow的生命周期中,总会存在至少一个或多个state:这就是osworkflow engine的最核心理念。



    OSWorkflow的最基本的元素:

       OSWorkflow主要包含如下几个基本元素:Step,Status,Action,Result;还有两个特殊的元素,用于描述聚合分散的:Split和Join。

       这几个概念的详细解释,在此就不像再解释了,如果有必要,大家可以看看gigix兄blog,上面有篇《OSWorkflow基本概念》。

       针对这些基本元素之间的关系,我画了如下的图:

基于FSM的OSWorkflow


说道这儿,可以说一句了:OSWorkflow其实是很简单的,理解了这些(state,step,status,action,transtion),就可以知道osworkflow最为核心的本质了。

你可能感兴趣的:(.net,workflow,Blog)