优品(BPM业务流程管理)BPM详解工作流管理系统

上传人:口口****O 文档编号:138263040 上传时间:2020-07-14 格式:DOC 页数:54 大小:511.50KB
返回 下载 相关 举报
优品(BPM业务流程管理)BPM详解工作流管理系统_第1页
第1页 / 共54页
优品(BPM业务流程管理)BPM详解工作流管理系统_第2页
第2页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《优品(BPM业务流程管理)BPM详解工作流管理系统》由会员分享,可在线阅读,更多相关《优品(BPM业务流程管理)BPM详解工作流管理系统(54页珍藏版)》请在金锄头文库上搜索。

1、优品(BPM业务流程管理)BPM详解工作流管理系统J2EE工作流管理系统jBPM详解(一)一、jBPM入门简介概述工作流业务流程管理技术是基于SOA技术实现的一个核心部分。使用工作流能够在软件开发和业务两个层次受益:1、方便开发工作流管理系统能够简化企业级软件开发甚至维护。降低开发风险-通过使用状态和动作这样的术语,业务分析师和开发人员使用同一种语言交谈。这样开发人员就不必将用户需求转化成软件设计了。实现的集中统一-业务流程经常变化,使用工作流系统的最大好处是:业务流程的实现代码,不再是散落在各种各样的系统中。加快应用开发-你的软件不用再关注流程的参与者,开发起来更快,代码更容易维护。2、业务

2、流程管理(BPM)在自动化业务流程之前,分析并将它们规格化是一件艰苦但会有很好回报的工作:提高效率-许多流程在自动化过程中会去除一些不必要的步骤较好的流程控制-通过标准的工作方法和跟踪审计,提高了业务流程的管理改进客户服务-因为流程的一致性,提高了对客户响应的可预见性灵活-跨越流程的软件控制,使流程可以按照业务的需要重新设计。业务流程改进-对流程的关注,使它们趋向于流畅和简单但从长远的角度,工作流流程管理技术的研究可为两个阶段进行:1.目前解决华研今后新项目中复杂业务流程如何使用工作流引擎技术进行实现的问题。2.上升到面向服务体系架构,实现各个服务之间的业务流程。jBPM,全称是JavaBus

3、inessProcessManagement,是一种基于J2EE的轻量级工作流管理系统。jBPM是公开源代码项目,它使用要遵循ApacheLicense.jBPM在2004年10月18日,发布了2.0版本,并在同一天加入了JBoss,成为了JBoss企业中间件平台的一个组成部分,它的名称也改成JBossjBPM.随着jBPM加入JBoss组织,jBPM也将进入一个全新的发展时代,它的前景是十分光明的。JBossjBPM只有最小的倚赖性,它可以很容易的作为java库来使用。当然它也可以用在访问量很大的J2EE群应用服务器环境中。JBossjBPM可以同任何数据库配置可以部署在任何应用服务器上。j

4、BPM最大的特色就是它的商务逻辑定义没有采用目前的一些规范,如WfMCXPDL,BPML,ebXML,BPEL4WS等,而是采用了它自己定义的JBossjBPMProcessdefinitionlanguage(jPdl)。jPdl认为一个商务流程可以被看作是一个UML状态图。jPdl就是详细定义了这个状态图的每个部分,如起始、结束状态,状态之间的转换等。jBPM的另一个特色是它使用Hibernate来管理它的数据库。Hibernate是目前Java领域最好的一种数据持久层解决方案。通过Hibernate,jBPM将数据的管理职能分离出去,自己专注于商务逻辑的处理。(具体选型报告可参考工作流技

5、术选型评估报告)。本文档主要是工作流研究小组关于开源工作流引擎jbpm的研究成果总结。内容包括工作流研究场景的介绍、jbpm的环境配置,并包括以下六个研究主题:JBPM同开发如何结合,又如何保持独立性;对应用系统的设计实现有什么样的制约用户/角色如何同应用系统结合,变化又如何处理流程中每个活动,如何动态指定执行者类似传阅功能如何实现子流程如何实现流程执行步骤耗时阀值和自动提醒设置jBPM当前版本的稳定性评估术语、定义和缩略语应用场景本场景是从房地产营销系统的需求中提取出来的,在房地产项目中,客户选户购房的过程是一个非常典型的工作流场景。我们将这一过程提取出来,作为jbpm技术研究的场景。在购房

6、过程中,会有以下人员参与。客户:购房的主体销售人员:在购房过程中指导看房,购房。销售经理:确定认购信息。财务人员:收取定金。客服人员:打印收据,打印客户认购书。客户购房的过程可以描述如下。客户来到售楼中心,销售人员进行接待。客户向销售人员提供预先申请的服务号。销售人员确认服务号是否有效,如果无效现场给出一个新的服务号。销售人员引导客户选房。客户确定户型,房号。销售人员录入客户认购资料。销售人员确认认购资料填写完整。销售人员将认购资料提交给销售经理审批。确定是否可以获得优惠,如果客户是一次交清房款,获得0.1%优惠。交上级经理审批。销售人员引导客户到财务处交纳定金。交纳定金后,客服人员打印收据。

7、客服人员打印认购书。为了使用研究的场景更有代表性,揉合其他典型的工作流应用场景,将上面的流程作一些删改。客户认购的流程改为:客户确定购房,销售人员录入认购资料。提交认购资料,必须保证录入资料的完整性。提交审核,按总金额进行分类审核。如果金额小于50万销售经理审核即可,大于50万还要上级经理两人同时审核通过。审批完成,客户到财务处交纳定金。客服人员为客户打印收据,打印认购书,认购完成。上面的流程中一些异常情况(流程中的一些分支),在这里先不作考虑,如,客户在交纳定金之前可以随时放弃认购。客户的认购要录入的资料内容包括:客户姓名,房号,定金,总金额,流程号等,这里仅选取几个重要的数据作为保存对象。

8、保存录入资料时自动取得一个流程号,任何时候,可以根据此流程号跟踪流程状态,所以在保存认购资料时要记录流程号。通用的标准规范jBPM是个功能全面的WorkflowEngine,融合了4大功能:Workflow,BPM,BPEL,PageFlow。它自己有个BPEL扩展,采用jbossHibernate实现,它使用自定义的自定义标准jpdl,不支持目前公开的工作流(业务流程)标准,如:JCPJSR208JavaBusinessIntegrationJSR207ProcessDefinitionforJavaOASISWS-BPELWorkflowManagementCoalition(WFMC)W

9、FMCXPDLBusinessProcessManagementInitiative(BPMI)BPMNObjectManagementGroup(OMG)StateChartXML(SCXML)处理测试阶段的JBossjBPMBPEL扩展准备支持BPEL1.1标准(非标准组织通过的标准)。技术方案由于公司采取的架构是ejb3+tapestry4架构,所以我们的场景实现架构也是基于以上架构进行实现的(tapestry4+ejb3+jbpm3.2),我们所采取的jbpm版本是3.2,这也是目前jbpm最新的版本。这里我们使用jboss作为我们的web服务器开发环境这里我们是采用eclipse3.

10、2开发工具进行开发,Tapestry4+ejb3的开发环境配置和以往的项目配置基本保持一致,这里就不再进行详细介绍,关键就是jbpm3.2的配置方法。我们从jBoss官方网站(http:/www.jboss.org)上下载jbpm-jpdl-suite-3.2.GA.zip,最新的版本是3.2.GA,这个包括:jbpm-server,预先配置的jboss应用服务器.jbpm-designer,jBPM流程图形化设计器的eclipse插件.jbpm-db,jBPM数据库兼容包(参看下面).jbpm,核心jbpm组件包括库和用户手册.jbpm-bpel,JBossjBPMBPEL扩展参考.预配置的

11、JBoss应用服务器有下列安装组件:核心jBPM组件,打包作为JBoss服务档案一个包括所有jBPM表格的完整数据库:默认的hypersonic数据库包含所有的jBPM表格和已经定义的流程.jBPM控制台web应用程序这个可以用来为jBPM管理员.jBPM调度程序所有定时器的执行.调度程序在新手工具箱里配置成了一个servlet.这个Servlet会为产生一个线程来监视每个定时器的执行.一个流程例子已经发布进了jBPM数据库,关于jbpm-jpdl-suite-3.2套件包的具体介绍,可以参考JBossjBPMCookbook手册。JBossjBPM是一个Java库.因此,它可以用在任何jav

12、a环境比如web应用程序,Swing应用程序,EJB,WebService等等,JBossjBPM核心组件被打包成一个简单的Java库文件.它依赖你所使用的功能性,库jbpm-jpdl.jar及一些相关的第三方的库比如.hibernate3.2,dom4j等等在我们实现场景中。要使用jbpm,我们首先需要将jbpm3.2的包导入我们的项目当中,jbpm3.2的主要包括两个包jbpm-jpdl.jar和jbpm-identity.jar。而jbpm-jpdl.jar是jbpm的核心包,jbpm-identity.jar则是jbpm自带的用户角色权限管理包。我们将这两个包导入我们的项目中。(具体可

13、参考jbpm的用户手册)在jbpm中,流程的定义主要是编写在xml文件中的,我们需要将具体的业务流程在xml中定义。所以我们需要在项目的根目录上新建一个源目录,这里我们命名为“processes”,在该目录我们可以保存流程定义xml文件。JBossjBPM包括一个图形化的流程设计工具.这个设计器是用来创作商业流程的,该图形设计器是一个Eclipse插件,图形化设计工具最重要的特性是它同时支持业务分析员和技术开发人员.这样就可以在业务流程建模和实际执行之间平滑转换。使用该插件你可以通过界面来拖拉描绘你的业务流程,而不需要靠手写编码来设计。该插件位于jbpm-jpdl-suite-3.2.GA.z

14、ip中,插件的安装方法可以参考elipse插件的安装方法。安装完毕后,我们下面可以通过该插件新建流程设计文件。步骤如下:1、在processes目录中右建选择“New”“other”2、选择“ProcessDefinition”,点击“Next”输入Processname,点击完成。打开设计界面,我们就可以在上面根据我们的业务来设计工作流流程文件。Jbpm本身包含很多自己的jbpm数据库表,jBPM内部使用hibernate来管理它的数据库,通过Hibernate,jBPM将数据的管理职能分离出去,自己专注于商务逻辑的处理,而且我们可以使jBPM移植在不同的数据库.。我们进行的每一步流程操作都保存在jbpm数据表中,通过调用jbpm提供的接口,我们可以对jBPM数据库进行存储,更新和检索流程信息的服务。这里我们使用Mysql5.0数据库,下面我们在项目中新建一个源目录“config.files”,名字可以任意,在该目录建立hibernate.cfg.xml文件:hibernate.cfg.xml?xmlversion=1.0encoding=utf-8?!DOCTYPEhibernate-configurationPUBLIC-/Hibernate/HibernateConfigurationDTD3.0/ENhttp:/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号