jBPM7.5 中文文档——概述

2018-06-18 03:51:37来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

1. 概述

1.1. 什么是 jBPM?

jBPM 是一套灵活的商业进程管理 (BPM) 套件。轻量、开源(基于Apache License 2.0) 、使用Java实现。你可以用于商业进程与案例整个生命周期中的建模、执行与监控。

Process

商业进程作用是将一个个按步实现商业目标建立成模型,并用流程图将其顺序表示出来。这样的进程让商业逻辑变得更容易理解,更加敏捷。 jBPM 关注可执行的商业进程,这些进程要求拥有足够的细节使其确实能够在BPM引擎上运行。可执行商业进程在商业用户与开发者之间的鸿沟上建立起了一座桥梁;其层次更高、使用商业用户可理解的特定领域概念,并且可以直接拿来执行。

商业进程需要提供全生命周期的支持:创建、部署、进程管理、任务清单、仪表盘、还有报表。

jBPM的内核是一个轻量可扩展的纯Java写的工作流引擎,可执行使用最新BPMN 2.0规范的商业进程。它可运行在任何Java环境中,嵌入到应用程序里或做成服务。

内核引擎的顶端,提供了大量支持商业进程功能、工具,覆盖了商业进程全生命周期:

  • 基于WS-human任务的可插入人工任务服务用于包含由人工角色执行的任务。

  • 可插入的持久化与事务 (基于 JPA / JTA)。

  • 内核引擎增加了案例管理功能,用于提高案例使用时的适应性和灵活性。

  • 基于网页的进程设计器以图形化的方式创建、模拟商业进程(支持拖放)。

  • 基于网页的数据模型编辑器、表单编辑器用于创建数据模型和任务表单。

  • 基于网的可自定义的仪表盘及报表。

  • 基于网页的一站式工作台,用于整个BPM生命周期:

    • 建模与部署——创建进程、规则、数据模型、表单及其它资产。

    • 执行——在核心运行时引擎上执行进程、任务、规则和事件。

    • 运行时管理——处理分配的任务、管理进程实例等。

    • 生成报告——使用商业活动监控功能持续追踪执行轨迹。

kie wb after login
  • 基于Eclipse的开发者工具用于建模、测试及进程调试。

  • 引擎可作为服务,提供远程接口(包括REST, JMS, 远程Java API)

  • 与Maven、Spring、OSGi等集成.

BPM提供进程管理的功能与工具,以一种商业用户与开发者都喜欢的方式,建立起商业分析师、开发者及最终用户之间的桥梁。商业用户将特定领域节点可以插入到选项板中,使得进程理解起来更加容易。

jBPM支持案例管理,提供更先进的功能来支持自适应和动态进程,案例管理能够灵活对复杂的、不太容易使用固定进程表示的现实情况进行建模。我们将控制权返回给最终用户让用户自己控制进程执行部分,这允许进程中的动态偏差。

jBPM并非仅仅是一个独立的流程引擎。复杂商业逻辑模型可以是商业进程、业务规则及复杂事件处理的组合。jBPM可以结合Drools项目建立一个统一的图表环境来建立由进程、规则和事件的组合表示的商业逻辑模型。

1.2. 概述

Overview

jBPM项目各组件一览

  • 核心引擎是项目的心脏,以一种灵活的方式执行商业进程。一个纯java组件,可以作为嵌入到应用程序中一部分,或将其部署为服务,可以打开基于网页的界面或连接到远程API。

    • 人工任务服务是可选的核心服务,它负责进程中有人参与的人工任务的生命周期。

    • 运行时持久化是另一个可选的核心服务,它保存所有进程实例的状态,并记录运行时发生的所有事件的审计信息。

    • 应用程序可以通过java API或CDI服务,还可以通过REST和JMS API远程连接到核心引擎。

  • 基于网页的工具允许您建模、模拟和部署流程和其他相关工件(如数据模型、表单、规则等):

    • 流程设计器让业务用户在基于网页的环境中设计和模拟业务流程。

    • 数据建模器可以让非技术用户查看、修改和创建在流程中使用的数据模型。

    • 基于网页的表单建模器可以创建、生成或编辑与流程相关的表单(启动进程或完成一个用户任务)

    • 编写规则指定不同类型的业务规则(决策表、引导规则等)来与流程相结合。

    • 所有资产由Guvnor库(通过GIT)储存和管理,并且是受控的(版本控制),可构建的和可部署的。

  • 基于网页的管理控制台让业务用户管理其运行时(管理业务流程,如启动新流程、检查运行实例等)、管理任务列表和执行业务活动监控(BAM)并查看报告。

  • 基于Eclipse的开发工具是针对开发人员的Eclipse的扩展,使用拖放方式创建业务流程、测试和调试进程等。

下面将更详细地介绍每个组件。

1.3. 核心引擎

核心jBPM引擎是这个项目的心脏。这是一个轻量的工作流引擎,用于执行业务流程。可以嵌入到应用程序中或部署为服务(可能是云)。其最重要的功能如下:

  • 坚固、稳定的核心引擎用于执行流程实例。

  • 原生支持最新BPMN 2规范中的建模及执行业务流程。

  • 专注于性能和可伸缩性

  • 轻量化(几乎可以部署在任何提供了简单的java运行环境的设备;不需要任何Web容器)

  • (可选)默认的JPA实现的可插入持久层

  • 默认JTA实现的可插入的事务。

  • 实现为通用流程引擎,可以通过扩展支持新的节点类型或其他流程程语言。

  • 监听器用于获取各种有关事件的通知。

  • 能够将正在运行的流程实例迁移到其流程定义新版本中。

核心引擎还可以与一些其他(独立的)核心服务集成:

  • 人有人工参与的进程可使用人工任务服务来管理这些任务。它是完全即插即用的,默认实现WS-Human Task规范,人工任务服务管理任务,任务列表,任务表单的生命周期,以及一些更高级的功能,如增援,委托,规则分配等。

  • 历史记录可以存储引擎中各个进程的所有执行信息。如果需要访问历史信息,这是必要的,运行时持久化只存储所有活动流程实例的当前状态。历史日志可用于存储活动的和结束的流程实例的所有当前和历史状态。它可以用来查询出与执行流程实例有关的信息进行监视、分析等。

1.4. 流程设计

jBPM设计器是基于网页的,在网页上创建商业模型。其针对商业用户,提供了图形化的编辑器,用于查看及编辑商业进程(使用拖放),同Eclipse插件一样。Eclipse编辑者与基于网页的设计者之间无缝衔接。它也可以模拟流程。

Designer
图 1. 网页版设计器创建BPMN2 进程

1.5. 数据建模器

进程基本都有某些类型数据要处理。数据建模器让非技术用户查看、编辑或创建这些数据的模型。

通常,业务流程分析师或数据分析师负责流程或应用程序的需求,并将这些需求转换成一组正式的相互关联的数据结构。新的数据建模工具为构建逻辑和物理数据模型提供了简单、直接、可视化的协助,而不需要高级开发技巧或编写显式的代码。数据建模器被透明地集成到工作台中。它的主要目标是在过程改进周期中让数据模型成为一等公民,通过综合使用数据结构(以及与它们交互的表单)实现全过程自动化。

1.6. 表单建模器

 jBPM的表单建模器即是表单引擎也是编辑器,用户可以创建表单以获取、显示流程或任务执行期间的显示信息,无需任何编码或模板标签方面的技能。

可见即所得的表单建模方式,方便非技术用户使用。

FormModeler
图 2. 表单建模器

关键功能:

  • 表单建模时所用的 WYSIWYG 界面

  • 从数据模型、Java对象自动生成表单

  • Java对象的数据绑定

  • 公式与表达式

  • 自定义表单布局

  • 表单嵌入

表单建模器的用户界面旨在为流程分析师和开发人员构建和测试表单。开发人员或高级用户还可以利用高级特性定制表单行为和外观。

1.7. 进程实例及任务管理

业务流程可以通过基于web的管理控制台进行管理。它针对的是业务用户,其主要特点如下:

  • 流程实例管理:可以启动新流程实例,获取正在运行的流程实例的列表,可视化地检查特定流程实例的状态。

  • 人工任务管理:能够获得所有当前任务的列表(无论是分配给您还是您想要的),以及任务列表中的完成的任务(使用可定制的任务表单)。

ProcessInstanceDiagram
图3.管理流程实例

1.8. Business Activity Monitoring

6.0版本的jBPM自带功能齐全的BAM工具,允许非技术用户直观的组合业务仪表板。这个全新的模块,让建立在jBPM之上的开发业务活动监控和报表解决方案上变得相当容易!

BAM
图4.业务活动监控

关键功能:

  • 仪表盘可视化配置(拖放)。

  • KPI(关键绩效指标)的图形表示。

  • 交互式报告表格的配置。

  • Excel和CSV格式的数据导出。

  • 过滤和查询,无论是内存内还是基于SQL。

  • 通过不同协议从外部系统中提取数据。

  • 针对不同用户配置文件的细粒度访问控制。

  • 外观定制工具。

  • 可即插即用的图表库体系结构。

目标用户:

  • 管理者/企业主。仪表盘和报表消费者。

  • IT /系统架构师。系统连接和数据提取。

  • 分析师/开发人员。仪表盘组合和配置。

要了解jBPM中更多不熟悉的和有价值的关于BAM的功能,请阅读《业务活动监控》这一章。

1.9. 工作台

工作台是一个基于web的应用程序,它将所有上述基于Web的工具组合成一个可配置的解决方案。

它支持以下内容:

  • 存储库服务使用Git存储库存储业务流程和相关工件,支持版本控制、远程Git访问(使用文件系统)和通过REST访问。

  • 针对企业用户使用Web界面管理业务流程,对象的可视化(编辑,像网页设计师,数据和表格模型集成在一起),还可以分类,构建和部署等。

  • 协作功能,多角色(例如业务用户和开发人员)在同一项目上协同工作。

工作台应用程序涵盖了BPM项目的完整生命周期,从创作阶段开始,涉及实现、执行和监视。

kie wb after login
图5.KID工作台应用程序

1.10. Eclipse开发者工具

基于Eclipse的工具是一组用于Eclipse IDE的插件,用于开发环境中集成业务流程。它针对的是开发人员的图形编辑器,用开始向导创建业务流程(使用拖放),还包括许多进阶测试和调试功能。

EclipseFlow
图6.Eclipse编辑器创建BPMN2流程

它包括以下功能:

  • 用向导创建一个新的JBPM项目

  • BPMN 2流程图形化编辑器

  • 可插入自己特定领域节点

  • 验证

  • 运行时支持(所以你可以选你喜欢的版本的jBPM)

  • 图形化调试,查看所选会话的所有正在运行的流程实例,可视化某个特定流程实例的当前状态等。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java入门(二):注释和基本数据类型

下一篇:Java集合系列[1]----ArrayList源码分析