【OA】流程管理——JBPM4.4工作流应用
2016-07-24 20:25
381 查看
工作流定义:
工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。工作流管理系统(WfMS,Workflow Management System)的主要功能是通过计算机技术的支持去定义、执行和管理工作流,协调工作流执行过程中工作之间以及群体成员之间的信息交互。工作流需要依靠工作流管理系统来实现。工作流管理系统是定义、创建、执行工作流的系统,应能提供以下三个方面的功能支持:
1.定义工作流:包括具体的活动、规则等
2.运行控制功能:在运行环境中管理工作流过程,对工作流过程中的活动进行调度
3.运行交互功能:指在工作流运行中,WfMS与用户(活动的参与者)及外部应用程序工具交互的功能。
采用工作流管理系统的优点:
1.提高系统的柔性,适应业务流程的变化
2.实现更好的业务过程控制,提高顾客服务质量
3.降低系统开发和维护成本
工作流框架有:Jbpm、OSWorkflow、ActiveBPEL、YAWL等
我们做的OA系统主要用到的是JBPM工作流,在敲之前,做了几个小例子,来理解JBPM的应用。JBPM是基于java的业务流程管理系统,是一款开源工作流引擎,引擎底层基于ActiveDiagram模型。jBPM4.4使用了hibernate(3.3.1版),因此可以很好的支持主流数据库。jBPM4.4共有18张表。这篇博客先来看看工作流的定义和基本概念,下一篇博客给大家介绍在项目中的应用。
核心概念理解
ProcessDefinition一个流程的步骤说明,是一个定义的过程。如下图就是一个请假的审批流程。
ProcessInstance
代表流程定义的一次执行,比如张三提交一次请假的申请,直到总经理审批之后结束,这就是一个processinstance。
Execution
一般情况是,一个流程实例是一个流程树的根节点。用树结构的原因是,这个概念只有一条执行路径,用起来更简单。业务API不需要了解流程实例的执行之间功能的区别。因此,API只有一个执行类型来引用流程实例和执行。
process(流程)
是.jpdl.xml的根元素,可以指定的属性有:属性名 | 作用说明 |
name | 流程定义的名称,用于显示。 |
key | 流程定义的key,用于查询。 如未指定,则默认为name的值。 |
version | 版本,如果指定,则不能与已有的流程定义的版本重复;如未指定,则此key的流程定义的第1个为版本1,以后的是版本递增(每次加1) |
Transition(连线、转移、流转)
1,一个活动中可以指定0个或多个Transition。a) Start活动中只能有一个Transition。
b) End活动中没有Transition。
c) 其他活动中有1条或多条Transition
2,如果只有一个,则可以不指定名称(名称是null);如果有多个,则要分别指定唯一的名称。
总结:
初次接触java语言中的工作流引擎,发现跟.net中的工作流是一样的。基本思想不变,学习起来可以快速的上手,很轻松。相关文章推荐
- PMP学习笔记(二)常见合同类型
- 解决Your iOS Development certificate has been revoked.
- Lapm+xcache安装wordpress
- 一堂课玩转rpm包的制作
- Bonita BPM Study
- npm下载报错情况的处理
- MSM8976平台概述
- 04传智_jbpm与OA项目_部门模块改进_直接在BaseAction中实现ModelDriven<T>
- yum和rpm的一些命令
- 主题:rpm安装,LAMP分离+xcache
- npm版本更新问题(国内镜像问题)
- PMP学习笔记(1)工作分解结构-资源分解结构-职责分配矩阵-资源日历
- 有关mapminmax的用法详解
- 一个程序员给产品经理的话
- 产品经理用到的工具都有哪些?
- 产品经理和程序员的爱恨情仇
- 【笔记】PMBOK第6章项目进度管理
- 【笔记】PMBOK第5章项目范围管理
- 产品经理心里要记住两句话:“关你鸟事”和“关我鸟事”
- 作为产品经理,我是这样设计登录和注册的