背景
毕业5年,作了4个版本的工做流框架,工做流几乎是每一个企业应用开发人员必须跨过的门槛(我尚未跨过去),下面简要说一下以前的4个版本,而后重点介绍第5个版本选择的模型。算法
第一年
- 模型:顺序流。
- 设计器:不支持。
- 路由规则:不支持。
第二年
- 模型:WF3.5(顺序、断定)。
- 设计器:不支持。
- 路由规则:支持。
第三年
- 模型:WF4.0(顺序、断定)。
- 设计器:支持。
- 路由规则:支持。

第四年
- 模型:状态机(顺序、断定)。
- 设计器:支持。
- 路由规则:支持。

为何我要第五个版本?
- 第一个版本太简单了,不能知足产品或项目需求。
- WF3.5已通过时了。
- WF4.0过于重量级了,我只须要支持人工审批流程。
- 经典的状态机不能支持并行节点。
第五个版本会是什么样子?
模型选择

计划支持的特性
- 会签、分流、合流、串行和条件支持。
- 动态路由规则。
- 基于WEB的流程设计器。
- 开源+无侵入性。
核心算法已经经过测试

流程设计器的原型也初步验证了

备注
今天算是个开篇,后面会详细介绍每一个点的实现机制,着急看代码的朋友先去http://happy.codeplex.com/下载最新代码(直接下载代码,不要下载我上传的压缩文件)。app