jwfd工作流引擎设计-流程数据同步控制器的设计思路及其矛盾

基于图论的广义优先遍历算法的流程引擎运行控制器仅仅是一个很初级而简单的工作流引擎的实现手段,那么更进一步的需求则是来源于用户需要用(外部输入)自动表单中的数据来控制这个图的遍历行为,这就好像是我们有发动机可以驱动汽车的轮胎转动,但是还需要一个驾驶员和方向盘来控制汽车的前进,后退和转向,那么发动机就是基于图论的广义遍历算法,而驾驶员和方向盘则是外部表单数据和基于表单数据的流程数据同步控制器

为什么要用同步来描述这个控制器呢?对于这个问题,实际上我还有些问题没有弄得很清楚,首先基于遍历算法的流程引擎对流程图的遍历行为是流程运行的初始动力,并且自动表单的运行是依赖于流程的运行的,理论上来讲表单的运行和流程的运行应该是同步的,但是经过具体的设计和开发过程之后,我们发现表单数据的运行过程和流程的运行过程并非同步的而是异步的,因为如果流程是需要表单数据来驱动的话,表单的运行和表单的数据就要先于流程一步前进,正是这种先走一步获得的数据才能够控制流程引擎的运行,但是这明显就和前面讲到的遍历算法是驱动流程运行的初始动力互相产生矛盾了,到底谁是驱动流程运行的驱动力呢?遍历算法还是表单数据呢?还是我的设计在这里存在着什么样的问题呢?

存在这样一个逻辑矛盾a驱动b运行b依赖a运行a和b是同步还是异步?看来前面的路还很崎岖。。。。。。。还需要一步一步的走。。。。。。。。。

相关推荐