[原创]山寨的工作流引擎设计

山寨工作流引擎设计核心思路-初步实现

1:  使用设计器设计出流程图
2:  流程图生成XML文件
3:  将XML文件导入数据库
4:  编写针对流程处理的数据库SQL原子操作方法(函数)
5:  编写一个基于广度优先遍历算法的流程引擎核心算法(最简单的实现方式,参考清华大学-数据结构教程-第七章 图的遍历)
6:  将第四步中实现的SQL原子操作方法装配(嵌入)到第五步中编写的算法模块中
7: 使用装配好的遍历算法对数据库中的流程数据进行调试,保证流程图的每个节点都被访问到,且顺序正确,且只被访问一次


  在完成上面的七个步骤之后,就可以进行下列进一步的工作(下篇博文中继续介绍)

这就是我们过去几年中实现工作流的思路,很简单,但是很有效,作为低成本的工作流产品的设计思路,可以再很多领域和采用复杂设计的流程系统进行竞争

但是在这个过程中,我们仍然要面对很多问题,比如说流程图的并行和分支的处理,条件汇聚的处理等问题,请参考我的博客中的其他文章

请对这个设计思路感兴趣的朋友,下载JWFD的相关资料和代码,我可以这样说,如果一个懂JAVA和数据库SQL操作的初级程序员,完全可以在1周内基本理解这个过程并且在1个月内开发出具有自己特色的工作流模块和产品出来(但是...至少还是要懂点算法)


你可能感兴趣的:(数据结构,sql,工作,算法,xml)