PowerStone(中文名——磐石)是一个基于Spring、Hibernate及其它若干开源框架和工具的,开放源代码的工作流管理系统;
它实现了工作流管理联盟(WfMC)的Workflow参考模型中的接口1、2和5;
它以开源的工作流编辑器——Enhydra JaWE(http://jawe.objectweb.org)作为流程定义工具。PowerStone由以下模块构成:
1、工作流引擎:负责解析用JaWE编辑生成的XPDL流程定义文档、调度流程流转、生成任务列表;
2、管理控制台:提供工作流上传、部署、监控等后台管理功能,是一个WEB应用;
3、任务列表:供最终用户使用来处理业务数据、与工作流引擎交互;
4、用户权限系统:一个可替换的用户、权限管理系统,提供了基本的用户数据管理、基于角色的授权与访问控制和多系统单点登录功能。
为什么又要做一个工作流软件?
1、由于工作流管理理论还很不成熟(相对于关系型数据库理论),各家对其理解和阐述五花八门,甚至在一些基本概念上都不统一;
现有的工作流管理软件虽然数量众多,但是根据其理论基础、体系结构、技术实现、适用场景的不同,可以划分成许多分类,彼此之间没有多少相似性;
PowerStone的定位是:基于有限状态自动机理论的、采用嵌入式和轻量级架构的、
采用关系数据库存储的(这不是废话,好像确实有人不用数据库存储流程数据)工作流管理系统,适用于面向流程型的应用(不同于OA和一些PDM产品等面向文档型的应用),
典型的应用场景是流程逻辑复杂、多人协作、任务分发方式灵活、应用种类繁多甚至分布式部署,
最典型的属于此类工作流软件的首先要数JBoss下的jBPM(希望PowerStone能够早日取代它);
因此不难看出,此类工作流管理系统的发展趋势是成为SAO体系架构中的调度中心和枢纽,实际上jBPM已经集成了BPEL。2、基于现有的工作流管理软件开发业务系统还比较难:有的采用了EJB导致系统笨重(难测试、难部署、难移植);
有的没有采用O/R mapping工具或是用了专有O/R mapping框架(比如shark),导致数据库移植困难;
有的不完整,只提供一个引擎,甚至没有任务列表(如OSWorkflow);
有的过于庞大、臃肿,难以修改(比如shark等比较早的)。
(jBPM好像却是比较厉害:)PowerStone采用SpringMVC+Spring+Hibernate的轻量级架构,有较完整的单元测试,
支持所有主流的数据库和应用服务器(实际上只要web服务器就够了),以开源的JaWE作为流程定义工具,有任务列表和可替换的用户权限系统,
嵌入式工作流引擎方便开发(甚至不依赖web容器,可以开发桌面应用和胖客户端)。3、可以作为类似于Appfuse和Equinox的范例学习使用Spring、Hibernate等开元框架
它实现了工作流管理联盟(WfMC)的Workflow参考模型中的接口1、2和5;
它以开源的工作流编辑器——Enhydra JaWE(http://jawe.objectweb.org)作为流程定义工具。PowerStone由以下模块构成:
1、工作流引擎:负责解析用JaWE编辑生成的XPDL流程定义文档、调度流程流转、生成任务列表;
2、管理控制台:提供工作流上传、部署、监控等后台管理功能,是一个WEB应用;
3、任务列表:供最终用户使用来处理业务数据、与工作流引擎交互;
4、用户权限系统:一个可替换的用户、权限管理系统,提供了基本的用户数据管理、基于角色的授权与访问控制和多系统单点登录功能。
为什么又要做一个工作流软件?
1、由于工作流管理理论还很不成熟(相对于关系型数据库理论),各家对其理解和阐述五花八门,甚至在一些基本概念上都不统一;
现有的工作流管理软件虽然数量众多,但是根据其理论基础、体系结构、技术实现、适用场景的不同,可以划分成许多分类,彼此之间没有多少相似性;
PowerStone的定位是:基于有限状态自动机理论的、采用嵌入式和轻量级架构的、
采用关系数据库存储的(这不是废话,好像确实有人不用数据库存储流程数据)工作流管理系统,适用于面向流程型的应用(不同于OA和一些PDM产品等面向文档型的应用),
典型的应用场景是流程逻辑复杂、多人协作、任务分发方式灵活、应用种类繁多甚至分布式部署,
最典型的属于此类工作流软件的首先要数JBoss下的jBPM(希望PowerStone能够早日取代它);
因此不难看出,此类工作流管理系统的发展趋势是成为SAO体系架构中的调度中心和枢纽,实际上jBPM已经集成了BPEL。2、基于现有的工作流管理软件开发业务系统还比较难:有的采用了EJB导致系统笨重(难测试、难部署、难移植);
有的没有采用O/R mapping工具或是用了专有O/R mapping框架(比如shark),导致数据库移植困难;
有的不完整,只提供一个引擎,甚至没有任务列表(如OSWorkflow);
有的过于庞大、臃肿,难以修改(比如shark等比较早的)。
(jBPM好像却是比较厉害:)PowerStone采用SpringMVC+Spring+Hibernate的轻量级架构,有较完整的单元测试,
支持所有主流的数据库和应用服务器(实际上只要web服务器就够了),以开源的JaWE作为流程定义工具,有任务列表和可替换的用户权限系统,
嵌入式工作流引擎方便开发(甚至不依赖web容器,可以开发桌面应用和胖客户端)。3、可以作为类似于Appfuse和Equinox的范例学习使用Spring、Hibernate等开元框架
解决方案 »
- hibernate的关联关系crud的一些问题
- JSF取hibernate多表值
- 高分寻找连接 sql server2000 的 jdbc 驱动程序!
- 求一解 servlet高手看过来
- 请问大家,用struts做项目时采用什么数据库合适
- 使用Myeclipse和hibernate3开发,遇到javax.servlet.ServletException: Cannot open connection的错误!
- 求winXP下IIS与Resin 3整合的完整方法
- 请问resin3.0.9的默认文件怎么改
- J2EE名词词典
- spring boot 整合redis在注解缓存数据
- 谁知道哪里有BDK下载,Sun网站上没找到?????谢谢:)
- 100分求一个hibernate基本配置
学习
偶现在在用osworkflow,虽然比较灵活,感觉很是不爽,如果可以,研究一下先,然后用到项目里来看看。