JBPM工作流管理系统在OA中的应用
1 工作流及工作流管理系统
1.1 工作流及工作流管理系统定义
根据工作流管理联盟(wfMC)的定义,工作流(Workflow)就是业务过程整体或部分的计算机化或自动化。简单地说,工作流就是一系列相互衔接、自动进行的业务活动或任务。一个工作流的终点可能就是另一个工作流的起点。工作流技术的主要特点是过程的自动化处理。工作流管理系统是指运行在一个或多个工作流引擎软件上的用于定义、实现和管理工作流运行的一套软件。这套软件按照在计算机中预先定义好的工作流逻辑推进工作流实例的执行。
1.2 基于JBPM的工作流管理系统
JBPM,全称是Java Business Process Management,是基于J2EE的轻量级工作流引擎。工作流引擎是工作流管理系统的核心组件,对流程实例,任务实例进行管理。JBPM是一个开源的、灵活的、易扩展的工作流管理系统,用JAVA语言开发,其核心类库是’J2SE类库,用于管理流程定义和流程实例执行时的运行环境。JBPM特色之一是采用了自己定义的JPDL(JBoss Process definition language)流程描述语言。JPDL认为一个任务流程可以被看作是一个UML状态图。JPDL就是详细定义了这个状态图的每个部分,如起始、结束状态,状态之间的转换:这种图形化的流程定义,直观地描述业务流程。JBPM的另一个特色是在持久层使用Hibemate来管理其数据库。这样,JBPM就将数据的管理职能分离出去,自己则专注于商务逻辑的处理。
2 JBPM工作流管理系统在OA中的应用
2.1 工作流建模
工作流建模可以帮助企业将实际业务流程转化为计算机可以识别的数字信息,存储模型,以便工作流运行时调用,在JBPM中,采用JPDL流程描述语言图形化建模,如图1所示。JPDL流程文件保存为processdinination.xml文件。
在JBPM中,流程定义被封装成流程档案。流程档案被传送到JPDL流程引擎加以执行。JPDL流程引擎负责遍历流程图、执行定义的动作、维持流程状态,并且记录所有流程事件。JBPM利用状态机作为控制状态变化的基础,并且扩充活动图的建模模型。
工作流建模中,主要包括节点、任务定义等。在图中示例中,用到的节点与对应的节点任务有:开始状态节点(start-state),任务为发文流程实例化的开始:结束状态节点(end-state),任务为发文实例的结束;任务节点(task'node),任务为来文登记、拟办意见、分管主任签批、分管领导审阅、A、B部门领导审核、主办人汇总处理、置于信息栏公开浏览:判定节点(decision),任务为是否公开传阅;自动节点(node),任务为归档。
2.2 工作流应用
2.2.1 工作流基本要素
工作流基本要素包括参与者、活动、数据。参与者是任务的执行者,JBPM目前只需要参与者的ID,对参与者的具体解释由业务应用层负责;任务创建时可以指定任务的参与者,也可以不指定,在此应用中,没有采用JBPM的.identity组件:活动(任务)是组成流程定义的节点,流转就是从一个节点到另一个节点的行为;数据为对活动的说明,数据随着活动的流转从一个节点转移到另一个节点,具体表现形式为存储在数据库中的工作列表,在JBPM中,持久层数据库的管理交由hibernate负责。
2.2.2 工作流过程
(1)流程定义(ProcessDefinition),。主要定义流程的业务逻辑,包含业务节点和流程,在图1中,可以看到是一个有向图结构。计算机能够理解的是一个xml文件,在JBPM的特有标记
图1. 工作流模型
(2)流程部署。是把定义好的流程放入计算机系统中。
(5)执行流程。流程实例启动后会产生一系列旧任务实例信息.这些任务实例信息就足供参与者来办理的,为了能找到当前用户的代办信息,需要获取任务列袁。任务列表通过如下语句获取:
LisL list=taskMgmtScssion.findTaskInstance(userID)
根据某个用户的ID找到用过户列表,找到列表后调出任务就可以办理了。
(6)完成任务。流程调用TaskInstancc接口end()方法来站束当前的任务,和任务开始时样,任务的站束时间会被填写,接着下一个节点初始化开始。当前任务的结束和下一个流程节点的开始是在一个事物内完成,从而保证了数据的完整性。
2.2.3 人工选择流程的走向
前面定义公文流转文什的时候.在“是否公开传阅”节点,有两个路由可以选择,一个路由是转到“分管领导审批”节点,一个是转到“置于信息公开栏浏览”节点。在xml定义流程代码中.具体表现为此节点处有两条transition语句,可以人工选择流程的走向。
2.2.4 程序自动选择流程走向
通过设置decision节点来自动选择流栏走向,在xmI定义流程代码中,具体表现为在decision节点中定义JBPM特有的
2.2.5 使用泳道为多个任务指定相同的参与者
当一个人处理多个任务,为了避免jaca类的过度膨胀,JBPM提供了泳道(Swimlane)的方式用来解决这一问题。
2.2.6 会签的应用
在OA中,为了科学决策和避免腐败,对于某些任务需要多个用户共同完成,这就是JBPM中的会签技术。在图1中,A部门和B部门领导都批准公文后,任务才完成,交由主办人汇总。在这里可以通过Action动态创建TaskInstance来“会整”。
3 结束语
JBPM工作流系统应用于OA系统当中,使得OA有关流转问题容易实现。JBPM的开放性、可扩展性、图形化建模等特性,在处理这些工作流模型时,可以快速灵活地部署,及时满足客户的需求,是一个理想的工作流引擎。
- 1OA办公自动化
- 2好用的OA
- 3OA哪家好
- 4免费OA
- 5OA网站
- 6OA维护
- 7OA问题
- 8OA平台
- 9OA开源
- 10工业检测行业OA系统(ERP)
- 11旅行社行业OA系统(ERP)
- 12食品行业ERP系统(OA)
- 1协同OA办公系统对决策效能的终极影响
- 2协同OA软件技术篇:JAVA当道 漫步云端
- 3浅析协同OA办公系统的应用实施
- 4关于OA办公系统在企业应用的思考
- 5互联网改变了啥 协同OA市场半年度报告
- 6国产软件扶摇直上 协同OA软件市场悄然生变
- 7基于Lotus Domino的移动OA办公系统
- 8OA办公系统强势参与政府“打虎行动”
- 9协同办公引领杭州华日电冰箱信息化整体发展
- 10数据整合成OA办公系统深化应用标准
- 11寒冬煮酒论OA品牌
- 12协同OA软件行业生存压力下面前的多重选择
- 13智能化扑面而来 智OA蓄势崛起
- 14什么是协同OA办公系统?
- 15oa协同办公的主要功能有哪些?
- 16江淮汽车:OA建设应用指南
- 17OA+ERP势在必行 引领后信息化时代
- 18三大管理软件鏖战4G移动应用
- 19聚焦OA核心应用 挖掘OA传统价值
- 20JBPM工作流管理系统在OA中的应用
- 21协同OA软件领军企业感恩节里发起筹办“义基金”
- 22构建信息协同平台,提升企业生产力
- 23像用智能手机一样去用OA
- 24中小企业协同OA办公系统实施的理由
- 25移动办公平台设计与实现
- 26协同OA软件哪里有谁知道?
- 27企业级社交寻求消费级玩法的背后
- 28协同OA助力焦煤集团迈入世界500强行列
- 292012年终OA厂商评选特刊
- 30关于协同OA办公系统应用及其档案管理的探索