FireWorkflow原理、设计和应用

国内开源工作流Fire Workflow1.0发布啦!!重新整理了文档、重写了和文档结合使用的demo。
文档:FireWorkflow原理、设计和应用
更多资料在官方论坛:
Fire workflow 论坛

介绍:
1、为什么要写Fire Workflow
本人从事企业MIS系统开发很多年头了,感觉MIS系统很多领域都有比较好的解决方案并已成为事实标准,例如Spring,Hibernate等等;然而工作流还没有令人满意的开源产品。我了解过的工作流产品(主要是开源的,收费产品没有什么研究,仅仅看看其白皮书而已)都存在如下毛病:
a)缺乏严密的理论做支撑,工作流模型大多千篇一律地照搬WfMC的xpdl,
b)因为缺乏理论支撑,所以工作流引擎的算法有点七拼八凑,扩展性也比较差。
c)没有好的设计器,应用比较困难
最近研究并应用了一下JBoss的Jbpm,除了其面向图的引擎算法让我眼前一亮外,其他的也不是令人满意。其引擎的扩展性不好,表结构太复杂,在大数据量系统中,性能令人堪忧。
鉴于此,我动手写了一个Fire Workflow,抛砖引玉。

2、Fire Workflow的定位
我从来不认为工作流可以“自定义”,所以Fire Workflow是面向开发人员的。Fire Workflow和Spring、Hibernate一样,是一个或几个普普通通的jar包,嵌入到系统中,用以解决系统开发中工作流领域的问题。
因为Fire Workflow是面向开发人员的,所以在下面两个方面花了较大功夫。
流程设计器。Fire Workflow用于帮助开发人员解决系统中的流程问题,所以好的流程设计器有助于开发人员提高开发效率。Fire Workflow设计器和主流IDE紧密集成(目前有Eclipse插件和NetBeans插件),使得开发人员开发调试流程就像开发调试一个普通java类一样简单。
工作流引擎。Fire Workflow引擎设计充分考虑扩展性,因为业务系统的需求五花八门,所以一个写的很死的引擎必然没有生命力。Fire Workflow引擎的各种服务都可以扩展或者替换。
Fire Workflow虽然不认可流程“自定义”需求,但是并不否认用户有调整业已存在的流程的需求,而且这种需求还比较普遍。所以Fire Workflow计划提供Web界面,让最终用户的系统管理员在一定范围内调整流程。

3、Fireflow的特点
理论严密
Fire Workflow以Petri Net作为理论基础,流程的顺序流转、分支、汇聚、跳转等算法都有定义/定理为依据。
设计合理
Fire workflow将工作流引擎的职责分解委派到各种服务中,每中服务都可以被扩展或者替换。
应用简单
Fire workflow的API以及数据库表结构非常简单。

性能优良
Fire workflow着重在流程实例的数据量,数据库IO等方面进行性能优化。

图片show:
[该贴被FireWorkflow于2009-07-24 16:00修改过]
[该贴被FireWorkflow于2009-07-24 16:13修改过]

设计器


不错,简单易用,可结合Jdon框架开发工作流应用,例如涉及审批流程等办公自动化 信息系统应用。
已经在Jdon框架应用页面推荐:
http://www.jdon.com/jdonframework/app.htm
[该贴被banq于2009-07-25 11:32修改过]

不错,首先开源的要支持,其次国产的更要支持。将工作流逻辑和业务逻辑解耦很重要,楼主说的很到位。

估计又得收费了

在那里能下载?