Activiti工作流

 说明:本文章内容在我最大努力范围之内确保其正确性、实效性和可观性,但并不代表所有的观点都是正确的,而仅代表个人看法。如发现不当之处,请多指教,谢谢!

 

一、工作流

1.工作流

工作流(workflow),就是让计算机帮我们实行部分或全部的业务工作流程、逻辑的自动化执行管理,实现多个参与者按照预定的流程去自动执行业务流程。

主要解决的是:使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现。

2. 工作流引擎

工作流引擎是指工作流(workflow)作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案。

比如开发一个系统最关键的部分是如何根据业务逻辑开发出符合实际需要的程序逻辑并确保其稳定性、易维护性和弹性。

比如系统中有一个任务流程,一般情况下这个任务的代码逻辑、流程都要自己来编写。实现是没有问题的,但开发过程中可能存在纰漏,所以,经过无数次的测试与改进,整个流程没有任何漏洞也是可以实现的,但是明显就会拖慢整个项目的进度。

 工作流引擎解决的就是这个问题:如果应用程序缺乏强大的逻辑层,势必变得容易出错(信息的路由错误、死循环等等)。

3.工作流生命周期

二、Activiti概述

1.简介

Activiti是一个开源的工作流引擎(框架,组件,jar包),通常activiti引擎需要嵌入到业务系统中去运行;它实现了BPMN 2.0规范,可以发布设计好的流程定义,并通过api进行流程调度。

其核心是基于Java 的超快速、超稳定的 BPMN2.0 流程引擎,强调流程服务的可嵌入性和可扩展性,同时更加强调面向业务人员。

Activiti 流程引擎重点关注在系统开发的易用性和轻量性上。每一项 BPM 业务功能 Activiti 流程引擎都以服务的形式提供给开发人员。通过使用这些服务,开发人员能够构建出功能丰富、轻便且高效的 BPM 应用程序。

 

Activiti前身 是jbpm4,Activiti架构和jbpm4基本上是一样的。activiti可以将业务系统中复杂的业务流程抽取出来,使用专门的建模语言(BPMN2.0)进行定义,业务系统按照预先定义的流程进行执行,实现了业务系统的业务流程由activiti进行管理,减少业务系统由于流程变更进行系统升级改造的工作量,从而提高系统的健壮性,同时也减少了系统开发维护成本。

1.1       BPM

Bpm(Business Process Management),业务流程管理,是一种理念,以持续的提高组织业务绩效为目的系统化方法,常见商业管理教育如EMBA、MBA等均将BPM包含在内。

1.2       BPMN

bpmn(Business Process Model andNotation),业务流程模型和符号。和bpm是两个不同的概念。Activiti使用bmpn标准进行流程建模。是由BPMI(Business Process Management Initiative)开发的一套标准的业务流程建模符号,使用BPMN提供的符号可以创建业务流程。

具体发展历史:

 

BPMN 是目前被各 BPM 厂商广泛接受的 BPM 标准。Activiti 就是使用 BPMN 2.0 进行流程建模、流程执行管理,它包括很多的建模符号,比如:

Event 用一个圆圈表示,它是流程中运行过程中发生的事情。

 

活动用圆角矩形表示,一个流程由一个活动或多个活动组成。

 

 

一个bpmn图形的例子:

 

 

 

Activiti使用Bpmn2.0标准进行流程定义(流程建模),bpmn采用xml描述 。

 

 

如何使用bpmn进行流程建模:

一般使用建模工具进行流程图绘制,生成一个图形,通过工具查看bpmn的xml描述;若熟练,手动编写pbmn的xml文档。(对坐标和结点大小通过工具完成)

 

2.特点

A.数据持久化

B.引擎Service接口

C.流程设计器

D.原生支持Spring

E.分离运行时与历史数据

 

3.应

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值