




已阅读5页,还剩53页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西安电子科技大学 硕士学位论文 基于JBPM工作流引擎的OA系统设计与实现 姓名:刘建建 申请学位级别:硕士 专业:软件工程 指导教师:田斌;李景文 20090601 摘要 越来越多的企业、政府都成为O A ( 办公自动化) 的用户,通过办公自动化来提 高部门之间的协同办公、信息流动与共享。与此同时工作流技术逐渐成为了新一 代办公系统必不可少的支撑技术。常见的有O S W o r k F l o w 和J B P M 等,已经在办 公自动化中得到越来越多的应用。 O A 对流程的着重点放在自己特有的流程模型上面,但是在应用过程中,上述 工作流系统暴漏了一些缺陷,在满足办公自动化当中的特殊流程模型方面显得无 能为力,业务分析人员的分析模型和开发人员的实施模型存在较大的差异,使得 工作流系统的实施难度加大。 J B P M 工作流引擎克服了上述缺陷,J B P M 引擎把一个业务流程看做一个u m l 活动图,详细定义了活动图的每个部分,有利于业务人员与开发人员之间沟通和 流程的实施;灵活的扩充机制,使得J B P M 在处理O A 流程模型,包括回退任务、 提醒任务、会签任务、抄送任务、动态任务是提供了有力的支持。 论文对J B P M 工作流引擎进行了研究,完成的工作和取得的成果如下: 对办公自动化系统做了需求分析。详细分析了系统应用需求,给出了系统解 决方案,根据需求分析,设计了系统的总体框架和模块组成。同时对于O A 中工 作流平台以及O A 中工作流平台和J 2 E E 框架的结合给出了详细的设计及实现。 系统经过测试,运行正常,各个功能符合企业用户需求。现在系统已经投入 应用并取得了良好效果。 关键词:工作流工作流管理系统办公自动化J A V A 企业级开发流程模型 A b s t r a c t M a n ye n t e r p r i s e sa n dg o v e r n m e n t sc a l T yo u to f f i c ea u t o m a t i o nw i t hc o m p u t e r s y s t e mt oe n h a n c ew o r k i n ge f f i c i e n c ya n ds e r v i c eq u a l i t y , w h i c hm e a n st h a ts e v e r a l d e p a r t m e n t sc o l l a b o r a t et of i n i s haj o ba n dt h ei n f o r m a t i o n , f l o w sb e t w e e nt h e m T h e t e c h n o l o g yo fw o r k f l o ws y s t e mi su s e dm o r ea n dm o r et om e e tt h en e e d s T h et y p i c a l w o r k f l o ws y s t e m si n c l u d eO S W o r k F o wa n dS h a r k W h e nt h ew o r k f l o ws y s t e mi su s e d ,O As y s t e mf o c u s e so nh o w t oi m p l e m e n ti t s s p e c i a lw o r k f l o wp a t t e r n ss u c ha sr e t r o v e r s i o np a t t e r n B u tt h ew o r k f l o ws y s t e m s r e f e r r e da b o v eh a ss o m ed r a w b a c k s T h e ya r en o tf l e x i b l ee n o u g ht oi m p l e m e n tt h e s p e c i a l w o r k f l o w p a t t e r n s o fO A T h ed i f f e r e n c eb e t w e e na n a l y s i sm o d e la n d i m p l e m e n t a t i o nm o d e li sf a r A l lt h e s eb r i n gt h ed i f f i c u l t yo fa p p l i c a t i o no fw o r k f l o w s y s t e mi nO A F o r t u n a t e l y , J B P Mw o r k f l o ws y s t e mC a no v e r c o m et h e s ed r a w b a c k s J B P M s u p p o r t st h em o d e lo fU M La c t i v i t y , w h i c ha l l o w st h ed e v e l o p e rt od e f i n ee v e r yp a r t so f a l la c t i v i t y , i n c l u d i n gs t a r t s t a t e , e n d s t a t ea n dt h et r a n s i t i o n sb e t w e e ns t a t e s B u s i n e s s a n a l y s ta n dt h ed e v e l o p e ru s et h es a m em o d e l A n dt h ee a s ya n df l e x i b l ee x p a n d i n gw a y o fJ B P Mw o r k f l o wd e f i n i t i o ng i v e ss t r o n gs u p p o r tt ot h ei m p l e m e n t a t i o no fs p e c i a l w o r k f l o wp a t t e mi nO A T h i st h e s i sh a sm a d ead e t a i l e ds t u d yb a s e do nJ 2 E Ef r a m e w o r ko ft h eo p e n S O I U O e w o r k f l o wm a n a g e m e n ts y s t e mJ B P M T h em a i n w o r ko ft h i st h e s i si sa sf o l l o w s : H a sd o n ead e t a i ln e e d sa n a l y s i so na u t o m a t i c a lo f f i c es y s t e m ,a n da l s om a d ea d e t a i l e da n a l y s i so ft h es y s t e ma p p l i c a t i o nr e q u i r e m e n t s ,B a s e do nt h en e e d so f a n a l y s i s , t h et h e s i sh a sd e s i g n e dt h eo v e r a l lf r a m e w o r ko ft h es y s t e mc o m p o n e n t sa n dm o d u l e s , a tt h es a m et i m e ,t h et h e s i sh a sm a d et h ec o m b i n a t i o no ft h ed e t a i l e dd e s i g na n d i m p l e m e n t a t i o na b o u tt h eo f f i c ea u t o m a t i o n S y s t e mt e s t e da n df u n c t i o n i n gp r o p e r l y , t h ev a r i o u sf u n c t i o n si nl i n ew i t ht h en e e d s o f b u s i n e s su s e r s N o wh a v eb e e np u ti n t oa p p l i c a t i o ns y s t e ma n da c h i e v e dg o o dr e s u l t s K e y w o r d : W O R K F L O WJ B P MJ 2 E EO AP R O C E S SM o D E L 创新性声明 本人声明所呈交的论文是我个人在导师的指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中 不包含他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均己在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:娃 日期孚垃 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印或其他复制手段保存论文。( 保密的论 文在解密后遵守此规定) 本人签名: 导师签名: 醐彳业 1 11 1 之华窆! J Z 第一章绪论 第一章绪论 随着办公自动化的兴起,通过流程或特定环节将日常事务联系在一起,使公 文在流转、审批、发布等方面提高效率,实现办公管理规范化和信息规范化,降 低企业运行成本。在这背后有一种技术为工作流慢慢凸显出来。工作流就是自动 运作的业务过程部分或整体,表现为参与者对文件、信息或任务按照规程采取行 动,并令其在参与者之间传递。简单地说,工作流就是一系列相互衔接、自动进 行的业务活动或任务。 1 1 国内外研究现状 国内外基于J 2 E E 的工作流引擎很多,但主要占优势的有两种,即 O S W O R K F L O W 及J B P M ,此外国内也有对应的工作流引擎。但工作流引擎并 没有发展到不需要程序员不必动用多少代码就可以直接使用的程度。工作流流程 的定义直至实现完全依赖程序员来实现,其软件的可用性,适应性完全依赖程序 员自身的素质,因而很难把握。此外基于工作流的O A 在可定制方面也很差,当 用户的需求发生变更后,原有的流程发生变化,则基于工作流的系统无法适应用 户的需求,因此在设计上可以进行一些改进,使工作流在实际应用中更加灵活以 满足用户多变的需求。 工作流技术起源于二十世纪七十年代中期办公自动化领域的研刭2 1 ,由于当时 计算机尚未普及,网络技术水平很低并且缺乏相应的理论基础,这项新技术并未 取得成功。1 9 8 3 年至1 9 8 5 年问,在图像处理领域和电子邮件领域出现了早期的 含有工作流特征的商用系统I l J 。 进入九十年代以后,随着个人计算机、网络技术的普及和推广,以及信息化 建设的日益完善,使得工作流技术的研究与开发进入了一个新的热潮。1 9 9 3 年8 月,第一个工作流技术标准化的工业组织一工作流管理联盟成立【2 】。1 9 9 4 年,工 作流管理联盟发布了用于工作流管理系统之间互操作的工作流参考模型,并相继 制定了一系列工业标准。与此同时,关于工作流技术的学术研究也十分活跃,许 多原型系统在实验室里开发出来。国际工作流管理联盟( W o r k f l o wM a n a g e m e n t C o a l i t i o n ,W f M C ) 的成立标志着工作流技术开始进入相对成熟的阶段【4 】。为了实 现不同工作流产品之间的互操作,W f M C 1 J 在工作流管理系统的相关术语、体系结 构及应用编程接口等方面制定了一系列标准。工作流管理联盟给出的工作流定义 是:工作流是指整个或部分经营过程在计算机支持下的全自动或半自动化。在实 2 基于J P B M :I = 作流引擎的O A 系统设计与实现 际情况中可以更广泛地把凡是由计算机软件系统( 工作流管理系统) 控制其执行 的过程都称为工作流。 进入二十一世纪以来,工作流技术已被越来越多的人认可,与之相关的标准 规范、工作流引擎及商业产品不胜枚举。人们在开发推广工作流产品的同时,更 加注重工作流的理论研究,以推动该项技术走向成熟。 1 2 论文的研究背景及目的 现在的企业办公自动化( O f f i c eA u t o m a t i o n ,o A ) 已经是流程的自动化,所 以对流程的处理凸显的很重要,占很大比重,但是由于各个公司的业务有所不同, 以及业务变动,对工作流提出了很高的要求。工作流是针对工作中具有固定程序 的常规活动而提出的一个概念。通过将工作活动分解成定义良好的任务、角色、 规则和过程来进行执行和监控,达到提高生产组织水平和工作效率的目的。工作 流技术为企业更好地实现经营目标提供了先进的手段。现在的工作流分为两块: 一块是工作流引擎,一块是工作流的应用。一个好的应用是建立在好的工作流引 擎基础上的。目前基于J 2 E E 技术的工作流有W ill o w 、O p e n W F E 、J B P M 、0 p e n E b X M L 、 W e r k f l o w 、O S W o r k f l o w 等。各个工作流引擎都有自己的特有需求,然而,适应性 还需要改进。此外,对于应用方面,大都希望工作流可以做到客户自定义,即不 用程序员来进行代码,客户可自己来调整或定制一些简单的工作流。这些工作流 是已经由程序员实现的,被作为组件来实现,这些部分,在D o t N e t 平台上的已有 浪潮公司的产品,J 2 E E 平台主要有普元的P r i m e t o nE O SW o r k F l o w 等。 1 3 论文主要工作 “华美讯达O A 系统是笔者研究生期间参与的一个商业项目,该O A 系统包 括人事管理、发文管理、会议管理、报表管理、个人信息管理和公共信息管理等。 供公司员工使用。本文将以笔者参与开发的华美讯达O A 为基础,综合参与开发 的“宝盈基金O A ”、“中柏P o r t a l 等项目,论述J B P M 4 工作流系统在O A 系统中 的应用。 文章主要工作有: ( 1 ) J B P M 工作流实施过程总结 工作流的J B P M 实施包括流程的定义、流程部署、流程执行、流程监控、流 程的定义包括从基本的过程定义、任务定义、流程的业务逻辑扩充,包括事件监 听扩充、任务分派扩充、节点动作扩充; ( 2 ) 应用J B P M 来解决O A 系统中的特殊工作流 第一章绪论 3 对O A 系统中的特殊概念,如“任务回退、“会签”、“抄送”等进行了详细 的研究; ( 3 ) J B P M 在华美讯达O A 中的应用模块 以华美讯达O A 系统为背景,主要讲述了J B P M 在协同工作中的应用,主要 论述了报销流程、请假流程的分析、流程的设计、任务分配类,节点动作的类的 设计,最后展示了应用效果。 “宝盈基金O A ,华美迅达O A 以及中柏P o r t a l 项目”基础之上的。以上项目 由华美迅达深圳分公司研发部完成开发。本人主要针对工作流引擎设计、工作流 平台架构以及周边协同功能进行了一些研究,以上研究均不违反公司保密规定, 属个人成果。 本文研究了工作流平台的体系结构及应用。重点介绍和实现了工作流引擎的 核心,也可以称之为W o r k f l o wE n 西n e ,这是因为工作流引擎是工作流平台的核心 所在,在此基础上深入介绍工作流引擎在实际工作中应用的情况。 1 4 论文章节安排 按照论述的内容,本文共分为五章,各章主要内容安排如下: 第一章为绪论,主要指出J B P M 工作流系统的背景和国内外现状,以及主要 工作内容; 第二章,基于工作流O A 系统的分析,以及基于J B P M I 作流的特点分析; 第三章,J B P M 流程建模。详细研究了J B P M 工作流系统实施过程; 第四章,详细研究分析了O A 中特殊工作流模式,并在J B P M I 作流引擎的基 础上加以解决; 第五章,J B P M 在华美讯达O A 中的应用,详细介绍了J B P M I 作流如何使用在 O A 中: 第六章,结束语。对工作流中间件的发展做了展望,并提了以后需要改进和 注意的地方。 1 5 本章小结 本章首先介绍了工作流在自动化办公的需求,产生的原因及应用特点。分析 了国内外研究趋势,从而提出对工作流技术进行研究的必要性,引出了论文主题 的课题背景,最后对这篇论文的研究内容和章节安排进行了介绍。 第二章基于丁作流的O A 系统 5 第二章基于工作流的O A 系统 O A 系统由很多模块构成,其中应用工作流的模块包括报销审批,请假审批, 发文管理,会议管理,财务审批等。其中最常见的是报销审批和请假审批等。 2 1 基于工作流的O A 分析 2 1 1O A 系统中工作流的主要实现方式 办公自动化应用系统的核心包括公文审批流转出来、会议管理,财务审批等。 没想工作以流程的形式,由发起者( 申请人) 发起流程,经本部门以及其他部门 的处理( 如审批通,驳回,会签等) ,最终到达流程的终点( 如发出信息,流程 归档) 、工作流程是可以相互衔接、交叉或循环进行的,如果一个工作流的终点 就有个可能是另外一个工作流的起点,如上级部门的发文处理就可能引发下一级 部门的收文处理。工作流也可以跨部门、跨单位,如发生在组织和组织之间的相 关单位。工作流自动化的目标就是要协调组成工作流的四元要素,即人员、资源、 事件、状态,推动工作流的发生、发展、完成,实现全过程监控、信息技术不仅 应该管理工作流全过程的操作,还应该主动推进工作流成的实现,如及时地收回 和赋予不同人员的操作权限、主动提示和催促工作人员实现末一阶段信息处理, 从而整体提高工作流处理的效率 3 。 工作流自动化有三种模式: ( 1 ) 基于邮件的; ( 2 ) 基于共享数据库的; ( 3 ) 基于邮件和共享数据库模式的。 基于邮件的工作流应用就是通过邮件将数据从一个人邮箱传送到另外一个人 邮箱。非常简单,但是无法进行实时监控,没有一个管理者可以随时掌握工作流 的状态。同时它难以实现自动化处理如通过代理催办、集中归档、统计,满足条 件自动执行;数据容易出现多份拷贝,难以控制安全性和准确性;大量的邮件传 输易引大量的网络流量。 基于共享数据库的工作流应用,可以克服上述邮件工作里的缺点。如信息存 储单一、自动处理、安全性好、容易监控等。 基于邮件和共享数据库结合模式的工作流应用,结合了上述两者的优点。通 过数据库管理工作流信息,同时通过电子邮件来提醒工作任务,即“跟踪一通知 6 基于J P B Mj l :作流引擎的O A 系统设计与实现 模型。基于J B P M 的办公自动化系统可以充分利用邮件和数据库的优点。 2 1 2J B P M 工作流引擎应用于O A 的特点 J B P M 工作流引擎之所以受到广泛的好评,是因为J B P M 有着好多其他工作流 引擎所没有的优点【3 】: ( 1 ) J B P M 工作流引擎是组件形式的,可以很好的和其他服务集合起来,例 如邮件服务【4 】; ( 2 ) J B P M 工作流引擎使用h i b e r n a t e 作为持久层,可以广泛应用于各种数据 库 9 1 ; ( 3 ) 基于U M L 活动图的建模,缩小了业务分析人员和开发人员的实施模型 之间的差异【习; ( 4 ) 容易扩展流程,在解决工作流模型和特殊工作流模型上有一定的优势【6 】; ( 5 ) 标准的J A V A 组件,完全支持J 2 E E 开发,支持各种J 2 E E 框架【刀。 2 1 3 基于J B P M 工作流引擎的J 2 E E 系统模型 B P M 是一个标准的J 2 E E 应用程序,采用J 2 E E 三层架构,即客户端,应用服 务层及数据层【8 】。 图2 1 基于J B P M 的J 2 E E 系统结构图 如上图2 1 所示:客户端是w e b 浏览器;引用服务器是开源的J B O S S ( 也可 采用T O M C A T ) ,数据库可以采用各种数据库,如常见的内存数据库D E R B Y , 及其他数据库如M Y S Q L ,S Q L S E R V E R ,O R A C L E ,D B 2 等,这是由于J B P M 采用了优秀的O RM a p p i n g 工具H I B E R N A T E 。采用H I B E R N A T E 有很多好处, 首先它可以将面向对象的思维方式直接应用于数据库,监护数据库操作,其次它 第二章基于工作流的O A 系统 7 的底层实现对数据库操作提供了许多优化,可以提高数据库执行效掣1 0 1 。J B P M 的 整体系统结构可以细分分为五层,分别是浏览器层:通过友好的W E B 接口,分别 给用户提供不同的业务功能,并提供图形化的显示方式来描述工作流以及工作流 的当前执行位置,这里按级别是指权限级别,如管理员,普通用户等不同角色的 用户。W E B 容器:针对客户端的请求进行处理和相应,包括S T R U T SA C T I O N 的触发,J S P 的编译等。S E S S I O NB E A N 层:使用f a q a d e 模式,向上以及绘画E J B 的形式提供服务,封装了对数据库的具体操作【l 。数据库映射层:H I B E R N A T E 提供了对底层数据库的访问和操作。数据库:存储了工作流管理系统的所有信息。 各层功能分离非常明确,相邻的层才发生联系。 2 2O A 中工作流需求 办公自动化系统对工作流的依赖是非常强烈的。传统的信息系统和办公自动 化使用基于“文档”的数据管理,它认为所有的数据( 如表单、日程、文件) 都 是一份份“文档”,而无法深入了解到数据的内部构造,无法实现这种灵活的工作 流控制,更难以与基于“关系表的业务系统进行数据沟通。传统“信息系统和 办公自动化 的这种局限,使它们无法进一步满足用户在决策支持、流程管理和 过程控制等方面的要求。而现代的办公自动化系统就打破了传统表单的文件办公 形式,更加深入到数据层,对数据达到精确的掌控。 一般O A 中的工作流需求除了常见的行政需求,如常见的人事考勤、会议管 理、公文管理等;此外还有业务上的工作流需求,如工作职能所决定业务上的流 程,常见的如呼叫中心的工作流程,基金公司的工作流程等。业务上的工作流程 是一个O A 系统中的重心。它的完善程度与否决定了办公自动化仅仅是用来处理 日常行政业务还是是否具有处理工作业务的分水岭。 根据工作流程的需求不同对工作流进行细化处理,工作流不外乎以下几种模 型: ( 1 ) 回退任务模型 在办公过程中,经常碰到申请或已经处理过的业务被退回来重新进行处理, 这类需求为回退模式; ( 2 ) 提醒任务模型 在办公过程中,往往会对时间有所要求,比如某件事情必须在某个时间节点 给予办理,过期可能会作废,此时就需要对任务根据时间进行提醒。 对工作流加上时间约束,是O A 的一个实用功能,以前绝大多数工作流引擎 不支持时间约束,因为传统工作流系统只讲流程的执行而不关心任务的时间特性。 J B P M 支持对任务限时; 基y - J P B M 工作流引擎的O A 系统设计与实现 ( 3 ) 会签任务模型 在O A 中,有些审批往往需要多个用户共同会签来决定,在财务模块表现的 尤为突出。如果参加会签者都投赞成票,这表示通过,否则失败。利用会签,可 以有效防止滥用职权、独断专行。或者通过会签来收集所参与人员的意见等。是 非常有用的; ( 4 ) 抄送任务模型 在O A 中,经常会遇到某些事情已经处理完毕,但是需要将处理结果转发或 归档,而转发或归档不影响流程的进程,这类的需求为抄送任务模型; ( 5 ) 动态任务模型 在O A 会议管理,秘书行政部安排好会议后,就需要通知与会者,在每次会 议管理流程中,与会者并不确定,而是由会议发起人在指定,所以,系统需要动 态的根据与会者的情况,生成会议通知任务实例。这种情况下任务实例的个数需 要根据实际的需要来生成。 2 3 工作流介绍 2 3 1 工作流管理系统介绍 工作流管理系统是整个工作流应用的管理系统,主要功能有:开始的工作流 程定制,工作流在运行状态的各种任务流转的控制,工作流程在流转过程中的监 控。按照W f M C 的定义:工作流管理系统( W o r k f l o wM a n a g e m e n tS y s t e mW f M S ) 是一个软件系统,它完成工作流的定义和管理,并按照在计算机中预先定义好的 工作流逻辑推进工作流实例的执行。 工作流管理系统的图形模型,如图2 2 所示: 图2 2 中可以看到工作流管理系统的总体架构分为三部分:工作流的建立阶 段,工作流的运行阶段,人机交互部分。 ( 1 ) 工作流的建立阶段:工作流运用建模工具根据具体流转业务建立相应的应 用模型。将实际的业务逻辑转换为软件里可直接识别使用的逻辑模型。为工作流 实例提供基本任务流转规则方式。形成相应的文件( 比如X M L 定义文件) 或者持 久化到数据库进行逻辑信息和数据信息的保存。 ( 2 ) 工作流实例的运行阶段:工作流实例化后会根据步骤信息,角色信息,任 务分配信息,任务流转信息形成相应的逻辑实体。这一阶段也是工作流技术中最 关键最复杂的环节。由工作流引擎来具体调度,生成,分配各种任务信息和相应 任务的控制信息。 ( 3 ) 人机交互:工作流实例在步骤间的传递和工作里实例某环节下业务实例的 第二章基于工作流的O A 系统 9 信息的监控都需要人机交互。人机交互控制的是软件的表现层,但是没有人机交 互,工作流引擎里面的任务流转,和其他的控制事件便无法触发。 过程定义与设计 过程分析建模与定义工具 建立阶段 一过程定义卜一 运行阶段 图2 2 工作流管理系统功能示意图 2 3 1 工作流管理系统介绍 J B O S SJ B P M 是一个灵活的、以扩展的工作流引擎,提供标准的J A V AA P I 调用方式。应用灵活,可以在标准的J A V A 环境中使用 6 】。其核心构建是一个普 通J A V A ( J 2 S E ) 库,用来管理流程定义和流程实例执行的运行环境。如图2 3 所 示,它由流程定制工具j P D LG r a p h i c a lD e s i g n e r 、运行核心库j P D LL i b r a r y 组成。 运行核心库j P D LL i b r a r y 提供流程的运行环境 J B P M 是一个J A V A 库。因此,它可以在人呢和一个J A V A 环境上使用。例如: W E B 应用、S W I N G 应用、E J B 、W E B S E R V I C E 等等。J B P M 库也能够当做一个 无状态会话E J B 打包发布。这样就适合具有极高的吞吐量要求的场合集群部署和 伸缩性 1 2 】。 此外J B P M J P D L J A R 库对其他的第三方库有些依赖。例如:H I B E R N A T E 、 D O M 4 J 和其他的库 1 3 】。 对于持久化,J B P M 内部使用H I B E R N A T E 。除了传统的O R 映射外, H I B E R N A T E 也能解决在不同的数据库之间的S Q L 方言的差异,使得J B P M 可以 在目前所有的数据库之间进行迁移。 在J B P M 中,流程定义被封装成流程文件。流程文件被送到J P D L 流程引擎加 载以执行。J P D L 流程引擎负责遍历流程图、执行流程定义的动作、维持流程状态, l o 基y - Y P B M 。L 作流引擎的O A 系统设计与实现 并记录所有流程时间。J B P M 利用状态机作为控制状态的基础,并扩展活动图的建 模模型,执行机制采用p e r t r i 网算法 1 】。 图2 3 J P D L 套件图 该引擎提供以下功能: ( 1 ) 对过程定义进行解释。 ( 2 ) 控制流程实例的创建、激活、挂起、终止等。 ( 3 ) 控制过程活动间的转换。 ( 4 ) 支持用户操作的界面。 ( 5 ) 维护工作流控制数据和工作流相关数据,在应用和用户间传递工作流相关 数据。 ( 6 ) 提供用于激活外部应用程序和访问工作流相关数据的接口。 ( 7 ) 提供控制、管理和监督的功能。 2 4 基于J 2 E E 的O A 开发技术 O A 系统的设计,使用了许多比较先进的J 2 E E 技术。展现层使用了S t r u t s 2 框 架,该框架的M V C 模式分离了模型、试图、控制,提高了软件的清晰度;持久层 方面采用了h i b e r n a t e 框架,它极大的提高了开发速度,并优化了数据库操作;在 工作流方面选择了j b p m 工作流引擎,由于它的建模采用的是u m l 的活动图形式, 因此流程需求的获取和建模可以有机的统一起来,极大的提高了建模速度;此外 还采用了和o f f i c e 交互的p o i 技术,a j a x 采用了d w r ( d r e c tw e br e m o t e ) 快速实现 技术,极大的提高了开发的速度以及软件的人性化使用;此外,整个项目使用s p r i n g 进行管理,所有的b e a n 都由s p r i n g 进行托管,数据库事务也由s p r i n g 来进行实行, 第二章基丁二r 1 :作流的O A 系统 极大提高了代码效率。 2 4 1S t r u t s 2 概述 A p a c h eS t r u t s 2 是一个优雅的,可扩展的J A V AE Ew e b 框架。框架设计的目标 贯穿整个开发周期,从开发到发布,包括维护的整个过程。 图2 4s t r u t s 2 拦截器原理图 如上图2 4 所示,s t r u t s 2 通过拦截器,来实现M V C ,以及国际化,转换器。 校验等。在该O A 中,s t r u t s 2 用来进行页面跳转,后台调用。 2 4 2H i b e r n a t e 概述 H i b e r n a t e 是一个开放源代码的对象关系映射框架,它对J D B C 进行了非常轻 量级的对象封装,使得J a v a 程序员可以随心所欲的使用对象编程思维来操纵数据 库。H i b e r n a t e 可以应用在任何使用J D B C 的场合,既可以在J a v a 的客户端程序使 用,也可以在S e r v l e t J S P 的W e b 应用中使用,最具革命意义的是,H i b e r n a t e 可以 在应用E J B 的J 2 E E 架构中取代C M P ,完成数据持久化的重任。 2 4 3 S p r i n g 概述 S p r i n g 作为开源的中间件,独立于各种应用服务器,甚至无须应用服务器的支 持,也能提供应用服务器的功能,如声明式事务等。 S p r i n g 致力于J 2 E E 应用的各层的解决方案,而不是仅仅专注于某层的方案。 1 2基于J P B M + T :作流引擎的O A 系统设计与实现 可以说S p r i n g 是企业应用开发的“一站式”选择,并贯穿表现层、业务层及持久 层。然而,S p r i n g 并不想取代那些已有的框架,而是与它们无缝地整合。在该O A 项目中,采用s p r i n g 进行托管b e a n 类,并对h i b e r n a t e 进行事务管理。 2 4 4D w r 概述 D W R ( D i r e c tW e bR e m o t i n g ) 是一个开源的类库,可以帮助开发人员开发包 含A J A X 技术的网站。它可以允许在浏览器里的代码使用运行在W E B 服务器上的 J A v A 函数,就像它就在浏览器里一样。 它包含两个主要的部分:允许J a v a S c r i p t 从W E B 服务器上一个遵循了A J A X 原 则的S e r v l e t 中获取数据。另外一方面一个J a v a S c r i p t 库可以帮助网站开发人员轻 松地利用获取的数据来动态改变网页的内容。 D W R 采取了一个类似A J A X 的新方法来动态生成基于J A V A 类的J a v a S e r i p t 代码。这样W E B 开发人员就可以在J a v a S c r i p t 里使用J a v a 代码就像它们是浏览器 的本地代码( 客户端代码) 一样;但是J a v a 代码运行在W E B 服务器端而且可以自由 访问W E B 服务器的资源。出于安全的理由,W E B 开发者必须适当地配置哪些J a v a 类可以安全的被外部使用。 这个从J A V A 到J a v a S c r i p t 的远程功能方法给D W R 的用户带来非常像传统的 R P C 机制,就像R M I 或者S O A P 一样,而且拥有运行在W E B 上但是不需要浏览 器插件的好处。 D W R 不认为浏览器W E B 服务器协议是重要的,而更乐于保证编程界面的简 单自然。对此最大的挑战就是把A J A X 的异步特性和正常J A V A 方法调用的同步 特性相结合。在异步模式下,结果数据在开始调用之后的一段时间之后才可以被异 步访问获取到。D W R 允许W E B 开发人员传递一个回调函数,来异步处理J a v a 函数 调用过程。 2 5 本章小结 本章分析了工作流在O A 中的应用以及分析了当前O A 中工作流的实现方式, 提出了J B P M 用于O A 中的优点并分析了基于J B P M 工作流引擎的J 2 E E 系统的模 型,并对O A 中工作流的需求进行了分析,此外对系统所使用的技术框架做了简 要介绍。 第三章华美讯达公司O A 需求及系统设计 1 3 第三章华美讯达公司O A 需求及系统设计 本章将着重介绍J B P M 工作流系统的基本模块和工作流实施过程,重点分析 J B P M 的流程定义过程,包括从简单的流程定义,任务开始到流程的扩充。流程的 实施过程,主要包括定义、部署、执行、监控,是J B P M 应用于O A 系统的实施 过程。 3 1 华美迅达O A 系统功能需求 华美迅达分公司O A 系统基于W E B 平台构建,采用B S 工作方式。华美讯达 深圳分公司的O A 采用J 2 E E 技术,使用s t r u t s 架构。该O A 具有综合行政模块、 公文流转模块、知识库模块、收发文管理模块、系统管理模块等。其中综合行政 模块大量应用了工作流技术。如请销假流程、财务报销流程、考勤流程等一系列 流程。本节着重介绍华美迅达O A 的系统功能。 3 1 1 系统管理 o A 系统 瞻 综 厶 口 行 政 模 块 公 文 流 转 模 块 信 息 发 布 模 块 知 识 库 模 块 收 发 文 管 理 模 块 图3 1O A 系统功能模块图 系 统 管 理 模 块 系统管理可以对整个系统的组织机构进行设置;对用户账号进行管理,可以 新建员工账号、管理帐号;同时通过岗位设定可以对岗位进行设定;权限组设定, 设定权限;查看近期用户登录状况等。 3 1 2 综合行政 综合行政包括考勤管理、财务管理、会议管理、车辆管理、办公用品、图书 馆里等。对日常行政工作进行处理。 1 4 基丁J P B M 丁作流引擎的O A 系统设计与实现 3 1 1 信息发布模块 信息发布模块可以进行新闻、公告、通知、电子期刊、大记事的发布管理。 有相关权限的人可以发布各种新闻、公告、通知、电子期刊、大记事等,同 时在发布前可以设定审批流程、通过审批的才可以发布出去;同时也可以对发布 的内容进行范围管理,使得只有被选择的某些人、部门或全体员工可以看到;并 且可以删除已发布的内容。 3 1 3 公文流转 在网上起草申请,并发送给相关负责人进行审批,实现无纸化办公。审批 人可以在网上直接对申请内容进行修改、审批,注明审批意见,并盖章或签名。 申请内容在多个审批人之间按顺序自动流转,审批过程即可以在建立审批模板时 设定,也可以由起草者设定。可以在审批管理中根据单位要求设置模板的统一格 式,可以设置每个模板的使用者、管理者和修改者。具有使用权限的用户能够使 用模板起草申请;具有管理权限的用户能够在表单管理中管理使用该模板起草的 申请;具有修改权限的用户能够对模板进行维护。 审批的流程即可以采用固定流程,一个模板梆定一个流程的方式,也可以设 定允许在流转过程中自定义流程或修改已设定的流程,流程支持直流、分流、并 流、条件分支、流程嵌套以及各种协办、联办等复杂流程。 在审批中,可以按照角色进行审批的流转,可以通过相对路径找到相应的岗 位,如审批者的上级领导,当前审批者的上级领导。 流程中可以支持退文的功能,可以退到以前的任何一级,也可以退回到发起 人。 在审批过程中,支持痕迹保留,电子印章,手写签名、全文批注。可以实现 催办,督办,统计。 3 1 4 知识库管理 知识管理:这里是单位各种知识和资源的共享中心,单位可以将各种资料分 门别类的存放到这里,便于日后方便的查阅,可以使成功案例、先进经验、技术 方法、各种表单、文件资料等资源在这里共享,便于大家共同学习、使用,快速 提高。可设置权限以保护机密资料安全。 下载中心:单位可以将平时积累的文摘、收集的信息、经常需要使用到的工 具、文件、客户资料等各种资源有序的存放在这里进行统一管理,便于需要的时 候及时查阅下载,而不必再东寻西找,浪费时间。系统运行中需要下载的O A 助 第三章华美讯达公司O A 需求及系统设计 1 5 手、控件等也在此下载。 规章制度:政策法规、人事制度、行政制度、财务制度、管理制度、销售制 度等各种制度文件的在线存放、查阅,可以方便的进行管理。 知识管理、下载中心、规模制度等模块中,均可以对文档进行按权限的全文 检索。包括W o r d E x c e l P P T H T M D F R 1 陌等格式。 可以对目录夹设定候修改和访问的权限,只有有权限的员才可以修改目录夹 及相关文件,在设定权限时,可以按人来设定,也可以按部门来设定。 可以通过设定,对每个人的上传附件的大小进行限制。 3 1 5 收发文管理 A 、发文管理是拟稿人根据需要选择行文类别( 行文用笺,处理流程,正文模 版) 起草公文,根据行文类别的流程设定,送交相关人员进行审核,复核,会签、 签发、校对等工作,然后由办公室进行发文登记、编号、套头,盖章后进行文件 的发放( 分发、下发、办结) 等工作,最后由公文管理员对办结公文进行归档过 程。提供督办、催办功能。 在发文的审批中,可以按照角色进行审批的流转,可以通过相对路径找到相 应的岗位,如审批者的上级领导,当前审批者的上级领导。 发文的流程既可以采用固定流程,一个模板梆定一个流程的方式,也可以设 定允许在流转过程中自定义流程或修改已设定的流程,流程支持直流、分流、并 流、条件分支、流程嵌套以及各种协办、联办等复杂流程。 流程中可以支持退文的功能,可以退到以前的任何一级,也可以退回到发起 人。在审批过程中,支持痕迹保留,电子印章,手写签名、全文批注。可以实现 催办,督办,统计。 B 、收文管理是公文到达后,收文登记人选择公文类别,登记公文,送交相关人 员进行拟办,根据公文类别的设定流程,送交相关人员进行批示、承办、传阅等 工作,也可以自定义下一步相关处理人员。并且在流转过程中,只有待办人员才 有权打开批办,其他人都不能打开。最后由公文管理员对公文进行归档。归档时, 可采用自动归档和手工归档。 由于我们在收发文管理中采用了M SO f f i c e 插件的技术,系统可以提供:扫描 输入、原文引入、手写笔输入、手工录入、从电子邮件中直接转入多种录入方式。 3 2 华美讯达公司O A 系统设计 华美讯达深圳分公司O A 采用A p a c h e 的开源项目s t r u t s 架构( M V C 架构的一 1 6 基于J P B M : 作流引擎的O A 系统设计与实现 种实现) 、模块化设计。除人事、权限、消息等基本模块外,其余模块互相独立、 可以任意添加、删除,通过配置文件像码积木一样组装出不同的产品。 在办公个自动化中,特别是办公自动化应用系统的核心应用公文流转处理、 会议管理,以及各种审批等。每项工作以流程的形式,由发起者发起流程,经本 部门以及其他部门的处理,最终到达流程的终点( 发出文件、归档) 。工作流可以 是互相连接、交叉或循环、嵌套的。如一个工作流的终点可能是另外一个工作流 的起点。 基于J B P M 工作流引擎的办公自动化系统,从信息技术的角度出发,除了传 统的任务方式外,J B P M 引擎可以集成邮件系统、短信发送系统作为催办提醒工具, J B P M 引擎可以结合“推”、“拉 技术;从工作流建模的角度出发,J B P M 引擎对 基于U M L 活动图建模的支持,缩小了业务分析人员的分析模型以及开发人员实施 模型之间的差异;从实施的角度出发,J B P M 引擎允许直接进行任务分配、节点动 作和事件响应的扩充,使得模块功能更加清晰。 3 2 1 系统技术架构 该O A 系统主要用于华美讯达深圳分公司日常内部信息资源维护及办公,主 要包括考勤,邮件,请销假,及时通信,会议管理等报表管理,收发文等管理。 系统采用J 2 E EB S 结构,用户通过w e b 浏览器访问系统,采用t o m c a t 作为J 2 E E 服务器,遵循M V C 模式,表现层采用S t r u
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 额度授信管理办法
- 道路交通标线及信号灯优化项目涉路工程安全评价
- hiv患者管理办法
- 为加强专业管理办法
- 风暴管理办法定义
- 湖南民宿业管理办法
- 交邮合作站管理办法
- 高校物价管理办法
- 电力施工队管理办法
- 高校站群管理办法
- 药品质量追溯系统建立考核试卷
- YDT4444-20235G小基站网络管理系统南向接口数据模型
- 工作技能培训课件
- 2025年消防心理测试题或答案及答案
- 矛盾调解培训课件
- 智慧健康养老服务与管理专业教学标准(高等职业教育专科)2025修订
- 器械gcp培训课件
- 2025年甘肃省高考物理试卷(含答案解析)
- 2025年裂解(裂化)工艺考试试题题库
- 碳纤维研究报告-碳纤维项目商业计划书(2025年)
- 工业数字孪生建模与应用
评论
0/150
提交评论