原文地址:http://docs.jboss.org/jbpm/v5.4/userguide/ch.overview.html
1.6 表单生成器
1.7 Guvnor 库
1.8 基于网站的管理控制台
1.9 文档
1.1、什么是jbpm
jbpm是一个灵活的业务流程管理(BPM)套件,是一个基于java实现的轻量级,完全开源的软件(Apache许可证下发行),他允许在你业务流程的生命周期中建模,执行和监控流程。(It allows you to model, execute and monitor business processes, throughout their life cycle.)?
一个业务流程允许你用一个流图去描述你要实现目标要执行的步骤和顺序来建立的你业务目标模型。这样可以可以很大程度改良业务逻辑的可见性和敏捷性,JBPM 重点关注那些可执行的业务流程,即包含了足够细节能被BPM引擎真正的执行的。可执行的业务流程为用户和开发人员之间搭建一座桥梁,使开发人员的高级别的,特定领域的概念可以被业务人员理解,同时可以直接执行。
图1、流程图
jbpm核心是一个轻量级的,可以扩展的工作流引擎,他采用纯java来实现,你可以使用最新的BPMN2.0规范来执行你的业务流程,他可以在你的应用程序程序中以嵌入服务的形式运行在任何java环境中。
此外,在核心引擎在业务流程的整个生命周期中,还有有许多特性和工具可以被使用。
>eclipse版和网页版的业务流程图创建工具。(使用拖、拉的操作)
>以JPA/JTA为基础的持久化和事务插件
>以WS-HumanTask 为基础的包含需要被不同角色完成的任务的人工任务服务插件
>支持流程实管理,任务列表,任务表单管理以及报表的管理控制台
>创建,生成,和/或者编辑任务表单的生成器。
>可选的用来发布流程或者保存其他相关知识的的库
>历史日志用来查询,分析和监控
>可以整合Maven,Spring,OSGI,等
BPM(业务流程管理)以业务人员和开发者都喜欢的形式,通过提供流程管理特性和工具,构建了,业务分析人员,开发者,以及最终用户之间的桥梁,特定领域的知识点可以在控制板显示,使得业务流程可以更加简单的被业务人员理解。
JBPM可以支持那些需要灵活构建的,不能用一个固化的流程来描述的复杂的,现实生活的场景的自适应的动态的流程。我们把控制权交还给最终用户,让他们来决定哪些部分可以被执行,那些部分从流程中分离,等
JBPM不仅仅是一个孤立的流程引擎,复杂的业务逻辑可以建模成业务规则和复杂的事件流程的组合。JBPM能够结合Drools project提供了一个可以整合了业务流程,业务规则,事件组合模型的统一的环境。
除此之外,还有挺多的附件组件你可能用到,像eclipse版和网页版的业务流程图创建工具以及管理控制台
1.2 概要
图1.1:
这张图显示jbpm的不同的组件,jbpm还可以和许多其他的服务整合(图中灰色部分),这里我们主要关注jbpm自身的组件。
>流程引擎是项目的核心,如果你要执行业务流程这个也是必须的(所有虚线框内的组件都是可选的),你的应用程序在需要的时候(启动流程,通知事件)调用核心引擎。
- 历史日志是可以可选的核心服务,用来记录所有流程实例当前的和历史的状态。
- 另一个可选的核心服务是人工任务服务,专注于流程中人类角色参与的人工任务。
>两种类型的定义业务流程的图形编辑工具:
- Eclipse插件形式的工具,主要面向开发人员,可以使用拖拉创建业务流程,以及高级调试,等等。。
- web形式的编辑器 ,允许业务人员在网络环境下管理业务流程 ,网络表单生成器允许你创建,生成,编译跟这些业务流程相关的表单(启动流程,或者结束流程)。
> Guvnor 可以用来存储业务流程。支持团队合作,以及版本化等。他同时整合了Eclipse和网络版的工具,支持不同工具之间的互相传递。
>网络版管理控制台允许业务人员,管理运行中的业务流程(类似启动新的流程,检查运行的实例。)管理任务列表,以及完成业务活动监控(BAM)和生成报表。
每一个组件在下面都有更加详细的描述。
1.3. 核心引擎
项目的要点是jbpm引擎。是一个轻量级用来执行业务流程的工作流引擎。他可以直接嵌入在项目中,也可以作为一个单独的服务部署(通常在云服务器上),他的最重要的特性有:
>可靠的,稳定的执行流程实例
>原生支持建模和执行业务流程的最新的BPMN2.0规范。
>着重关注性能和可伸缩性。
>轻量级(能够部署在任何支持java运行环境的设备,不需要任何其他web容器)
>(可选的)默认JPA实现持久化插件
>作为一个通用的流程引擎实现,可以扩展支持新的节点或其他流程语言
>多种事件监听器
>可以动态迁移运行流程到一个新版本的流程定义。
核心引擎也可以整合一些其他(独立的)核心服务:
人工服务 (重复略)
历史日志 (重复略)
1.4. Eclipse Editor
eclipse编辑器是一个Eclipse的插件,可以让你整合业务流程和你的开发环境,主要面向开发人员,主要有一些向导开始项目,以及一个用来创建流程的图形编辑器,和高级测试,调式功能
图略
包含特性
》创建新JBPM项目的向导
》BPMN2.0的图形编辑器
》嵌入自己专业领域的的知识点
》验证
》运行时支持(选择我们自己使用的jbpm版本)
》图形调试,查看选择会话中的所有流程实例,以及显示特定流程实例的当前状态等。
》审计视图用来查看运行时流程概要
》流程单元测试
》整合知识库
1.5. Web-based Designer
网络版设计器允许你在一个网络环境中建立你的业务流程,主要面向业务人员,类似于eclipse,他提供一个图形编辑用来查看和编辑业务流程支持业务流程在网络版和eclipse插件之间的互相转换。
1.6. Form Builder
网络版的表单生成器使用一个所见即所得的编辑器。通过拖拉多种表单元素到一个面板中然后填充必须要的细节,这样非技术人员也可以创建任务表单
1.7. Guvnor Repository
略
1.8. Web-based Management Consoles
略
1.9. Documentation
略