一、概述
业务流程是基于PetriNet原理的业务流程定义和运行体系,PetriNet是当今被广泛应用于业务流程描述和运行算法的理论体系。在PetriNet中只有三个基本元素,它们分别是Place(容器),Activity(处理)和Token(令牌),PetriNet的基础原则都是围绕这三个元素定义的,它们分别是:
Place是用来存放Token的。
Activity用来消耗其输入Place中的Token,并且给它的输出的Place产生新Token。
Activity和Activity不能直接互连接的,只能通过Place互连。如图所示。
Activity激活的条件是其输入的所有Place中都有Token。
一个Token被一个Activity消耗以后就没了,不能再被消耗。
虽然业务流程体系是基于PetriNet原理的,但由于业务模型层封装的原因,在实际的业务流程建模过程中并不会太多接触到底层PetriNet的东西。所以在这里就不再对PetriNet做详细描述了,具体PetriNet的详细信息请参阅与PetriNet相关的专业文档。
业务流程以PetriNet作为基础理论依据,把业务流程元素和PetriNet元素做了一一对应,并且在此基础之上扩展出更合适于业务模型层的复杂业务流程规则,以形成业务流程定义。同样的,在业务流程运行时的算法体系中也遵循了基本的PetriNet原理,并在此基础之上根据业务流程定义的扩展,也对业务流程运行扩展出相应特性。如图所示就是上个PetriNet图对应的流程图。