`

jBPM5 RFC译

阅读更多

jBPM5 RFC(请求评论文档)

原文:http://community.jboss.org/wiki/jBPM5RequestforComments

译:liuu 2010-05-06

 

本文论述关于jBPM5的整体架构和关键特性,我们热烈欢迎并感谢关于本文的任何反馈(包括那些你认为应该包含,但在文档中没有提到的内容)。让我们了解你最关心的,找出最重要的,以便我们安排优先级。这将作为创建jBPM5路线图的基础,是时候给出你们的反馈了。

 

jBPM5将基于jBPMDrools Flow经验的结合。这次组合,将结合两个方案的优点。

 

声明:本文并未描述jBPM5路线图,根据反馈情况,可能会增减一些特性。

 

架构

下图描述了(计划的)jBPM5架构,每个组件将在后面详细解释,并说明关键特性。

 

 

核心流程引擎

核心流程引擎(工作流)能够执行你的流程,引擎将强烈关注BPMN2(以XML格式保存流程定义)。BPMN2不仅定义一套业务流程的图形化表述标准(如BPMN1.1),现在还包含了所定义元素的执行语义,和如何保存(和共享)流程定义的XML格式。这套标准化的格式将作为主要的流程定义语言,我们将尝试提供一种(半自动化的、用户辅助性质的)迁移方式,将jPDL3.x)转换为BPMN2

 

(核心引擎)提供API来发起和推进流程实例、管理你的流程实例等,并可以配置和集成到不同的上下文环境。

 

关键特性:

1、  干净的API

2、  原生的BPMN2执行

3、  可嵌入(从类似一个简单的Java POJO组件在应用中嵌入运行,到作为一个独立的服务运行)

4、  基于流程虚拟机(PVM),支持在同一个流程引擎上定义多种流程语言

5、  其他非功能性需求,如持久(JPA)、事务(JTA,其他)、性能等

6、  集群

7、  事件监听,审计,历史日志

8、  流程实例迁移,让你可以升级正在运行的流程实例到新的流程定义版本

 

在支持完整的BPMN2规范之前,作为中间的里程碑,我们将首先尝试支持BPMN2规范中的“公共可执行”子类(它们是可执行流程规范中的所有已定义元素的子集,只支持最常用的节点类型)

 

人工任务

在有任务需要人工参与者来交互执行时,人工任务非常重要,它包括如下及个部分:

1、  人工任务服务:管理任务生命周期的后端服务。流程引擎自身并不绑定某个特定的实现,而是支持插接这种实现。默认将提供一个基于WS-HTWS-HumanTask)规范的独立实现,该规范描述了像生命周期(分配、获取、完成、释放(release)等)之类的内容,也包括群组分配、扩大(escalation)、分配规则等

2、  人工任务控制台:一个基于Web的应用,可用来查询任务列表,填写任务表单等。这个控制台的目标,是最终用户(那些将在流程中执行任务的参与者)。延续现有BPM控制台中已有的人工任务管理部分。

3、  表单编辑器:支持创建自定义任务表单(在需要完成任务时显示)。该编辑器的目标是开发人员,将提供基础的(类HTML的)任务表单辅助创建功能。可以集成不同的任务表单方案,默认将提供基于xforms(或类似方案)的表单编辑器。

 

流程仓库

(逻辑)集中的流程仓库可以保存和管理流程(和相关的交付件),它同样也包括一个基于Web的控制台,提供个业务用户,用于管理流程。他们可以检视流程,甚至可能动态的更新流程,创建和重新部署更新的知识库。支持对交付件的分类、检索、协作和部署前的场景测试等特性。另外也包括通过Eclipse或文件系统与该仓库集成。延续Drools项目中当前Guvnor仓库部分的功能。

 

BPM控制台

这是一个用于管理流程实例的基于Web的控制台。它包含如下特性:管理流程实例(启动、停止)、检查它们的状态和变量等。这个控制台的目标用户是开发者(希望快速的测试他们的流程)和管理员(管理在运行的流程)。延续现有BPM控制台的流程管理功能。

 

基于Eclipse的流程工具

这是一个Eclipse插件,帮助用户定义他们的BPMN2流程。它包括一个图形化编辑器,定义你的业务流程为流程图(使用拖拽方式和属性面板),目标用户是开发者。当然,它也提供验证、测试、调试等附加功能。

 

基于Web的流程工具

一个基于WebBPMN2流程定义工具,目标用户是业务人员。该工具延续Oryx/Signavio合作团队提供的基于WebBPMN2流程编辑器。

 

仿真

提供仿真执行流程的能力。比如,你可以(手动或自动)模拟流程的某条路径(或其他替代路径),也可以基于历史数据或统计输入,测量流程的时间和资源使用情况。这部分是jBPM3项目的实验性仿真模块的延续。

 

BAM/BI

这部分可划分为下面几个部分:

1、  报表编辑器:使用Eclipse BIRT插件创建报表,展示关键性能指标。使用预定义的数据集,可以很容易定义你自己的报表,这些数据集包含所有的流程历史信息,也可以包含你自己需要加入的其他数据集。Eclipse BIRT框架允许你定义数据集,创建报表、图表等。这部分是BPM控制台报表部分的延续。

2、  报表控制台:基于Web的控制台,可以动态生成和展示BIRT报表。目标用户是业务人员,这部分也是BPM控制台报表部分的延续。

3、  BAM引擎:业务活动监控(BAM)将实时监控你的流程的执行,并能够即时响应事件。BAM引擎允许你组合各种来源的事件,搜索事件模式,产生高层事件,响应关键场景等。这是服务活动监控项目(SAM)的一部分,基于Drools Fusion作为负责事件处理(CEP)引擎。

4、  BAM控制台:基于Web,用来获取系统的实时状态概貌。包括仪表盘概览、图形等,目标用户为业务人员,也是SAM项目的一部分。

 

可用性

领域特定流程:通过领域特定阶段,可以容易地扩展流程工具箱。它允许用户使用自己更熟悉的领域特定概念,来建立他们的流程模型。

 

安装脚本:简化引擎安装,包括Eclipse插件和Web工具,可以用来快速的生成一个安装好的示例。

 

持续集成和质量保证:基于Hudson,就像jBPMDrools现在做的。

 

文档:(暂无内容)

 

OSGI:(暂无内容)

 

集成

与各种其他项目集成:

1、  Drools:与其强制用户在流程中定义他们的业务知识(如使用一种面向流程的方式),我们支持用户组合使用业务流程、业务规则和事件处理来建立他们的知识模型。通过集成流程、规则和事件,用户可以选择最适合他们自己需求的方式,并组合他们。这也意味着用户只需要学习一种统一的方案,因为工具提供了无缝的集成,无论你使用的是流程、规则还是事件处理。最后,你会看到一种转变,从面向流程的方式,到更面向知识的方式(包括API、工具等)。

2、  认证/授权:要对系统提供不同级别的访问时,必需要有一套含可配置访问许可的安全模块。这需要集成现有的认证授权服务(如PicketLink

3、  JBoss ESB:流程引擎可以作为服务部署到Jboss企业服务总线(ESB)。这样,流程引擎可以作为不同服务之间的编排引擎,这些服务可以都通过服务总线访问到。

4、  JOPR:对JMX标准的支持,使得用户可以使用任何JMX控制台,监控和检查流程定义和运行时。

 

关于本提议的任何反馈,我们都非常欢迎,可以使用jbpm-dev@lists.jboss.org邮件列表,或者将你的意见建议,以私人方式,反馈给你的JBoss联系人。如果你想订阅jbpm-dev邮件列表或浏览归档邮件,请使用:http://lists.jboss.org/mailman/listinfo/jbpm-dev

 

 

liuu9@163.com

liuu.iteye.com

3
2
分享到:
评论
1 楼 chenchuan 2011-07-12  
不错,但是感觉jbpm5给开发人员的的上手时间比较长,不想jbpm4或者以前的版本那个快和简洁

相关推荐

    jbpm4jbpm5

    jbpm应用开发指面(胡奇) jbpm4.3表结构和表字段说明 [jBPM开发指南].高杰.文字版 jBPM5_用户手册-中文版

    JBPM5工作流引擎 S2SH+JBPM4.4开发工作流的一个完整的请假流程例子

    JBPM5工作流引擎 S2SH+JBPM4.4开发工作流的一个完整的请假流程例子。带有文档教程和所有源码+JAR包。在网上找了半天jbpm6\jbpm7的资料,都很少。所以 环境:Myeclipse2015 JDK1.7 mysql 5.0 Struts2+Spring3.1 1...

    jbpm5入门学习

    jbpm5入门学习资料

    jbpm5安装DEMO

    jbpm5安装DEMO

    JBPM5入门学习.doc

    JBPM5入门学习 JBPM5.4中文手册

    jbpm5 PDF 帮助文档

    jbpm5 PDF 帮助文档 jbpm5 PDF 帮助文档

    JBPM5 用户指南

    1.6 jBPM控制台 5 1.7 文档结构 6 第二章 获得开始 7 2.1 下载 7 2.2 获得开始 7 2.3 社区 8 2.4 资源 8 2.41许可证 8 2.42 源代码 9 2.4.3 从源文件构建 9 第三章 安装 9 3.1 必备的 9 3.2 下载 installer 9 3.3 ...

    JBPM5用户指南

    中文版JBPM5用户指南 JBPM5 JBPM5教程

    jbpm5环境配置、中文文档

    JBPM5.1入门学习 jBPM5_用户手册-中文版 jbpm5环境配置-myeclipse

    JBPM5表结构

    JBPM5表结构 亲手整理, H2转换成SQL SERVER

    JBPM5权威指南

    1.6 jBPM控制台 5 1.7 文档结构 6 第二章 获得开始 7 2.1 下载 7 2.2 获得开始 7 2.3 社区 8 2.4 资源 8 2.41许可证 8 2.42 源代码 9 2.4.3 从源文件构建 9 第三章 安装 9 3.1 必备的 9 3.2 下载 installer 9 3.3 ...

    JBPM5 整合Spring3经典案例

    经典的jbpm5整合例子,自动简表。只要保证数据库打开就可以了。运行简单,附带详细的使用说明。是jbpm学习开发则的必背资源。

    jbpm5第一个例子

    做好myeclipse集成后,按官方的文档做第一个例子即可。 ... 一般不会的问题,从官方找就行,但上面说的也不详细,...现在jbpm5的资料太少,如果谁有一些实例加说明,能给俺分享一下就好啦。无论是跟帖还是回复的方式。

    jBPM5 用户指南中文版

    jBPM5 用户指南中文版

    jbpm5 工作流

    jBPM的核心是使用纯Java编写的轻量级、可扩展的工作流引擎,你可以通过该引擎使用最新的BPMN 2.0规范执行业务流程。jBPM能够运行在任何Java环境中,既可以嵌入到应用中,也可以作为服务运行。除此之外,它还通过大量...

    jbpm5安装、配置、示例入门

    jbpm5下载、安装、配置、示例入门;jbpm5下载、安装、配置、示例入门

    JBPM5基于tomcat web的应用

    只是一个简单的基于web的jbpm5.2项目,运行在tomcat上,只要正确的安装jbpm5以上版本,正确配置tomcat即可运行,tomcat配置问题可以给我发信息

    jbpm4.1和jbpm5开发手册

    jbpm4.1和5开发手册 pdf 高清版

    jBPM5_用户手册-中文版

    jBPM5_用户手册-中文版

    JBPM5安装与配置for windows

    JBPM5安装与配置for windows,文章简单,适合入门级的人员。

Global site tag (gtag.js) - Google Analytics