(计算机软件与理论专业论文)面向服务的工作流系统设计与实现.pdf_第1页
(计算机软件与理论专业论文)面向服务的工作流系统设计与实现.pdf_第2页
(计算机软件与理论专业论文)面向服务的工作流系统设计与实现.pdf_第3页
(计算机软件与理论专业论文)面向服务的工作流系统设计与实现.pdf_第4页
(计算机软件与理论专业论文)面向服务的工作流系统设计与实现.pdf_第5页
已阅读5页,还剩82页未读 继续免费阅读

(计算机软件与理论专业论文)面向服务的工作流系统设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 随着软件技术的发展,信息化水平的提高,人们对软件的要求也越来越高。 早期计算机软件的应用主要是代替人工的计算,进行一些简单而又重复的计算工 作,然后渐渐发展到对信息的处理成为主要内容。信息化给企业带来了很大的方 便,各个部门开始利用网络进行信息的公开,同时依靠工作流技术实现了办公自 动化。但随着企业中各个信息系统的建立,办公自动化领域出现了新的问题:一 是如何解决部门之间相关的业务流程的集成问题;二是如何解决信息系统中企业 业务流程的随需而变的问题。为了解决这两个问题,本文提出了建立面向服务的 工作流系统。并研究了面向服务的工作流系统的设计、实现及在实际问题中的应 用。本文的主要工作和研究成果如下: 首先对面向服务的工作流系统所使用的开源技术框架,j b p m 工作流框架和 a x i s 2w e b 服务框架进行了深入的分析与研究。在对j b p m 源程序进行了深入剖析 的基础上对其核心模块进行了扩展。然后针对企业业务流程集成开发中的具体需 求,提出了工作流集中式控制模型和工作流分散式控制模型。工作流集中式控制 模型主要针对的是企业中跨系统新业务流程的扩展问题;工作流分散式控制模型 则用于解决企业中跨系统业务流程的集成问题。详细分析和设计了在这两种模型 中企业业务流程的执行过程。通过对流程在面向服务工作流系统和业务系统中执 行步骤的详细说明,阐明了工作流分散式控制模型和集中式控制模型在解决实际 问题中的具体实现。 然后基于以上两种模型提出了面向服务的工作流系统的体系架构,设计出了 面向服务的工作流系统的各个模块及模块的功能,然后将经过扩展的j b p m 和a x i s 2 框架进行了集成作为面向服务的工作流系统的底层框架,并在此框架基础上实现 了面向服务的工作流系统。面向服务的工作流系统采用开源技术框架,能够有效 降低企业开发成本,提高企业业务流程的开发效率,从而对于进一步提高企业信 息化程度,增强企业核心竞争力有着非常重要的意义。 最后将面向服务的工作流系统应用到了重庆电力技术监督管理信息系统之 中,解决了企业实际的流程集成和扩展问题。 关键字:w e b 服务,工作流,流程,流程实例,任务 a b s t r a c t w i t ht h ed e v e l o p m e n to ft h es o f t w a r e t e c h n o l o g ya n di m p r o v e m e n to ft h e i n f o r m a l i z a t i o n , p e o p l eh a v em u c hh i g h e rr e q u i r e m e n tf o rt h es o f t w a r e t h ee a r l v s o f t w a r ew a su s e dt oc a l c u l a t ei n s t e a do fp e o p l eo rs o m es i m p l ea n d r e p e a t e dw o r k t h e nt h em a i nt a s ko ft h es o f t w a r ec h a n g e di n t od e a l i n gw i t ht h ei n f o r m a t i o nd a t a t h e i n f o r m a t i o n i z a t i o nb r i n gal a r g ea m o u n to fc o n v e n i e n c et h a tm a k e st h e d e p a r t m e n t s d e c l a r et h ei n f o r m a t i o nt h r o u g ht h ei n t c r n c ta n dm a k eu s e o ft h ew o r k f l o wt e c h n o l o g y t oa c h i e v et h eo f f i c ea u t o m a t i o n b u tw i t ht h ee s t a b l i s h m e n t o ft h ei n f o r m a t i o ns y s t e m s i ne n t e r p r i s e s ,s o m en e wp r o b l e mc o m e so u ti nt h eo f f i c ea u t o m a t i s m f i r s t , h o wt o c o n t a c tt h eb u s i n e s sp r o c e s s e sf r o md i f f e r e n td e p a r t m e n t s s e c o n d ,h o wt o 溅e v e 也e c h a n g e so ft h eb u s i n e s sp r o c e s s e sa c c o r d i n gt ot h er e q u i r e m e n t i no r d e rt os o l v et l l e s e p r o b l e m s , im a k eu s eo fs e r v i c eo r i e n t e dw o r k f l o ws y s t e mi nt h i sp a p e r t h em a i ns u b j e c tf o rt h i sp a p e ri s s t u d y i n gt h ed e s i g n , p r e s e n t a t i o na n dt l l e a p p l i c a t i o no ft h es e r v i c eo r i e n t e dw o r k f l o ws y s t e m t h em a i nr e s e a r i c ha n d a c h i e v e m e n ta r ea sf o l l o w : f i r s t , t h i sp a p e rd o e sd e e pa n a l y s i sa n dr e s e a r c ho nt h eo p e ns o u r c ef r a m e w o r k so f t h es e r v i c eo r i e n t e dw o r k f l o ws y s t e m ,j b p mw o r k f l o wf r a m e w o r k , a x i s 2w e bs e r v i c e f r a m e w o r k m e a n w h i l e ,ih a v em a d es o m ec h a n g e sf o rt h ej b p ms o u r c ec o d ew i t ha g o o da n a l y s i so fi t t h e ni tg e t sa n di n t r o d u c e st h ei n t e g r a t e da n dd i s t r i b u t e dw o r k f l o w c o n t r o lm o d e l i n t e g r a t e dw o r k f l o wc o n t r o lm o d e li s m a i n l yo nt h ep u r p o s eo ft h e e x t e n s i v ep r o b l e m so ft h el a t e s tb u s i n e s sp r o c e s si ne n t e r p r i s em u l t i s y s t e m s d i s t r i b u t e d w o r k f l o wc o n t r o lm o d e li sm a i n l yo nt h ep u r p o s eo ft h ei n t e g r a t e dp r o b l e m so ft h e b u s i n e s sp r o c e s si ne n t e r p r i s em u l t i s y s t e m s t h e nt h ep a p e ri n t r o d u c e st h ea p p l i c a t i o n s a m p l e so ft h es e r v i c eo r i e n t e dw o r l d l o ws y s t e m t h r o u g hs u c hs a m p l e si tm a d et h a t h o wt os o l v et h ee n t e r p r i s eb u s i n e s sp r o c e s si n t e g r a t i o np r o b l e m sw i t ht h ei n t e g r a t e d a n dd i s t r i b u t e dw o r k f l o wc o n t r o lm o d e l sm o r ec l e a r l y t h e nb a s e do nt h e s em o d e l s ,id e s i g nt h es e r v i c eo r i e n t e dw o r k f l o ws y s t e m s a r c h i t e c t u r ea n dt h em o d u l e sa n df u n c t i o n so fi t t h e nu s i n gt h ej b p m ,a x i s 2o p e n s o u r c ef r a m e w o r k si tm a d et h es y s t e mc o m et r u e t h es e r v i c eo r i e n t e dw o r k f l o ws y s t e m a b s t r a c t w i t ho p e ns o u r c ef r a m e w o r kw i l ld e c r e a s et h ee x p e n d i n ga n de n h a n c et h ee f f i c i e n c yo f t h ee n t e r p r i s eb u s i n e s sp r o c e s sd e v e l o p m e n t i tw i l lm a k ed i f f e r e n c e s f o r t h e i n f o r m a t i o n i z a t i o na n dc a p a b i l i t yo fc o m p e t i t i o no ft h ee n t e r p r i s e a tl a s t ,t h es e r v i c eo r i e n t e dw o r k f l o ws y s t e mw a su s e di nt h ee p o ss y s t e mt os o l v e t h ee n t e r p r i s eb u s i n e s sp r o c e s si n t e g r a t i o na n de x t e n t i o np r o b l e m s k e y w o r d s :w e bs e r v i c e ,w o r k f l o w , p r o c e s s ,p r o c e s si n s t a n c e ,t a s k n l 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名:闺3 型 日期娜辉乡月? 貊 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:心导师签名: b 期:矽d 第一章绪论 1 1研究背景 第一章绪论弟一早三:百下匕 在2 1 世纪这个知识经济时代,企业运营所处的市场和社会环境已经发生了巨 大变化。市场快速变化是当今时代的主旋律,产品的市场周期大大缩短,时间逐 渐成为影响市场竞争力的第一要素。市场机会稍纵即逝,留给企业思考和决策的 时间极为有限,用户不但要求厂家按时交货,而且要求的交货期越来越短。因此, 缩短产品的开发、生产周期,在尽可能短的时间内满足用户要求,已成为当今所 有管理者最为关注的问题之一。同时顾客对产品和服务的期望日益提高,现在用 户已不满足从市场上买到的标准化的产品,他们希望得到按照自己要求定做的产 品或服务。这就要求企业必须具有根据每个顾客的特殊要求定制产品或服务的能 力【1 1 。 市场的快速变化导致了市场竞争的加剧,促使作为经济主体的企业进行合理 决策、不断开发和提供新的产品和服务。为了适应这种竞争,企业通过各种业务 流程,如分析企业市场需求、制订生产计划、寻找合适的原材料供应商、产品的 销售等,向外界提供产品和服务来实现自己的目标。这样一来,企业就会有大量 动态的、大规模的、分布式的业务需要处理。因此,企业业务流程的处理效率就 成为企业赢得竞争的关键【2 】。 工作流技术是优化企业业务流程、提高业务流程灵活性、更好地整合企业内 外部资源的使能技术,利用工作流管理系统支持企业内部不同阶段不同部门之间 业务流程的无缝联接和集成显得日益重要。但是,企业在长期的生产过程中,许 多部门都建设了自己的信息系统,这些系统使用不同的技术平台,各自负责解决 自己领域内的一些问题,缺乏业务沟通。随着公司业务的发展,许多业务涉及到 需要不同部门协同工作才能完成。这就需要对众多的遗留系统中的业务流程进行 集成,将其各自为政的业务流程改造为各个系统中的业务流程相互协调,相互配 合的统一的流程。为了达到这一目标,就需要企业建设一个对不同系统的业务流 程进行集成的系统,该系统能提供的业务流集成服务并能够屏蔽应用系统的异构 和分布特性。而传统的技术如d c o m 、c o r b a 或r m i 无法达到集成的目标或流 程集成时实现复杂,技术瓶颈给企业流程集成造成了巨大的困难。市场需求因素 电子科技大学硕士学位论文 是新一代流程管理技术产生的根本拉动因素,最近兴起的面向服务思想和w e b 服 务技术对业务流程管理系统有着巨大的推动作用【3 1 。本课题的目的就是通过面向服 务的思想来改进现有的工作流系统,设计并实现面向服务的工作流系统来集成企 业现有的流程同时提高企业业务流程的开发效率,降低企业的开发费用,避免企 业在信息系统建设中的重复投资和重复劳动。从而对于提高企业应对市场变化的 能力,增强企业核心竞争力,进一步提高我国企业信息化程度有着非常重要的意 义。 1 2 研究现状 工作流是在现代信息系统的建设中产生并逐步发展的,它有一个从局部到整 体、从初级到高级、从简单到复杂的发展过程,按其发展历程,一般把它分为三 个阶段h : 一个阶段是e d f ( 电子数据流) 阶段。这一阶段的工作流在信息技术中的应 用,仅着眼于利用信息技术减轻人们在流程中的计算强度,如设计一个流程用来 协调多个会计统计账目。所以,e d f 最主要的特点是仅对企业单项业务进行处理, 基本不涉及管理的内容。 t p f ( 事务处理流) 阶段。这一阶段并没有形成对企业的全局业务的管理,而 着眼于对企业局部业务的管理,比如,设计一套工作流程,来管理物资的采购和 供应。 当今的工作流已经发展到i m f ( 信息管理流) 阶段,i m f 强调对企业业务全 局的整体性的管理。在这个阶段,工作流就是为了完成同一目标而相互衔接、自 动进行的一系列业务活动或任务。 尽管经过工作流产品供应商与工作流技术研究人员多年的不懈努力,使得工 作流技术由最初的萌芽逐步发展起来,并取得了相当的成果,但是从工作流系统 的实际应用状况来看,还远未达到人们所期待的那样完善。从企业用户应用的角 度来分析,当前工作流产品有以下几个方面的不足【4 】【5 】: ( 1 ) 标准化程度差 不同的厂商所提供的工作流产品具有独立的一套工作流模型、工作流定义语 言、a p i 函数。但难于在不同系统之间进行交互,集成的效果不理想,不能方便 地在不同系统间进行应用对象的重复利用和数据的方便交流。 ( 2 ) 系统的集成性不理想 2 第一章绪论 工作流管理系统没有达到真正的集成,它们还是在自己独立地运行,处理一 些行政上简单的流程业务,不能很好将o a 、e r p 、c r m 、s c m 等具体事务处理 系统紧密地联系在一起,达到数据录入一次即可有效的目的。 ( 3 ) 实现的复杂性 实施一个完整的工作流管理系统,是一个复杂的过程,要了解其他应用系统 的业务,进行流程处理分析、业务流程改造、管理规程和操作规范建立等,并且 还必须有不同软件供应商的全力配合。 ( 4 ) 系统的安全性 系统中对于并发访问和异常错误缺乏正确和可靠的支持。一旦系统出现非正 常退出,如何恢复数据并保证数据的一致性还需要解决。 本课题的研究正是针对( 2 ) ( 3 ) 两个亟需解决的方面而提出的,专注于为工 作流引擎加入底层的通信基础结构的支持,以通过很小的改动对企业现有的流程 进行集成。还有提高企业工作流程的开发效率,解决跨系统的流程的运行问题。 而w e b 服务技术及面向服务思想的发展为本课题的研究提供了必要条件。 1 3 论文的主要工作 本文是以成都赛康信息科技有限公司的重庆电力技术监督管理信息系统 项目为背景的。面向服务的工作流系统是该项目的一个原型系统,由一个工作流 管理系统开发小组协作完成,本课题论文的内容是其中的一部分,主要介绍面向 服务的工作流系统进行设计和实现以及在实际企业流程开发集成中的应用。本文 作者完成的主要工作如下: ( 1 ) 深入研究了j b o s sj b p m 开源工作流框架,根据面向服务的工作流系统建设 实际需求对j b o s sj b p m 的源程序进行了修改。同时研究了a x i s 2w e b 服务 框架。由于这两个开源框架的文档较少,在研究中花费了大量时间。 ( 2 ) 在对面向服务的工作流系统需求进行分析的基础上,提出了面向服务的工 作流系统的工作流集中式控制模型和工作流分散式控制模型。工作流集中 式控制模型主要针对的是企业中跨系统新业务流程的扩展问题;工作流分 散式控制模型则用于解决企业中跨系统业务流程的集成问题。通过对这两 种控制模型的综合运用能够很大的提高企业业务流程的开发效率。 ( 3 ) 基于以上的研究工作,作者设计了面向服务的工作流系统的各个功能模块 和各模块的具体功能,通过实例阐明了其在面对实际业务流程集成扩展问 电子科技大学项士学位论文 题的解决方案,然后将经过修改的j b o s sj b p m 工作流框架和a x i s 2w e b 服 务框架进行了集成和封装作为面向服务的工作流系统的底层框架,最后在 此底层框架基础上实现了面向服务的工作流系统。 1 4 论文的章节安排 本文共分为六章,具体内容安排如下: 第一章:绪论。介绍论文的研究背景、目前国内外研究现状和论文研究的内 容。 第二章:工作流技术与面向服务体系架构。介绍了工作流的起源与发展、工 作流的定义及相关概念、及工作流管理联盟( w 彻c ) 提出的工作流系统参考模型, 对该模型的各个部分及功能进行了详细的介绍,工作流管理系统的体系结构、功 能、分类。面向服务的体系架构。之后介绍了面向服务的体系架构出现的背景、 特点及优势。并对w e b 服务所涉及到的技术进行了详细介绍。 第三章:面向服务的工作流系统需求分析。绍了面向服务的工作流系统的项 目背景。在此基础上提出了面向服务的工作流系统的需求。 第四章:面向服务的工作流系统设计。研究了面向服务的工作流系统所要用 到的技术框架,提出了两种工作流控制模型,并根据这两种模型设计了面向服务 的工作流系统的模块结构及各模块的具体功能。并举例阐述了工作流分散式控制 模型和工作流集中式控制模型如何解决实际业务流程集成和扩展的问题。 第五章:面向服务的工作流系统实现。在面向服务的工作系统设计基础上, 基于j b p m 和a x i s 2 开源框架,对面向服务的工作流系统进行了实现。 第六章:总结与展望。对全文进行了总结,指出了面向服务的工作流系统所 存在的问题,为以后的研究提出了方向。 4 第二章工作流技术与面向服务的体系架构 第二章工作流技术与面向服务体系架构 本章从工作流技术和面向服务体系架构的基本概念入手,主要介绍工作流技 术以及面向服务的相关概念,对w f m c 提出的工作流参考模型及工作流管理系统 做了比较详细的介绍,同时也对w e b 服务技术进行了详细阐述,为论文的研究奠 定了理论基础。 本章的安排如下:第一节,介绍工作流技术相关概念及工作流管理系统;第 二节,面向服务体系架构的相关概念及w e b 服务技术;第三节,对本章进行小结。 2 1 工作流技术研究 2 1 1 工作流技术发展历史 工作流技术发端于上个世纪7 0 年代中期办公自动化领域的研究工作,但工作 流思想的出现还应该更早,1 9 6 8 年f r i t zn o r d s i e c k 就已经清楚地表达了利用信息 技术实现工作流程自动化的想法。7 0 年代与工作流有关的研究工作有:宾夕法尼 亚大学沃顿学院的m i c h a e ld z i s m a n 开发的原型系统s c o o p ,施乐帕洛阿尔托研 究中心的c l a r e n c ea e l l i s 和g a r yj n u t t 等人开发的o f f i c e t a l k 系列试验系统,还 有a n a t o lh o l t 和p a u lc a s h m a n 开发的a r p a n e t 上的“监控软件故障报告”程序。 s c o o p ,o f f i c e t a l k 和a n a t o lh o l t 开发的系统都采用p e t r i 网的某种变体进行流程 建模。其中s c o o p 和o f f i c e t a l k 系统,不但标志着工作流技术的开始,而且也是 最早的办公自动化系统。 上世纪7 0 年代人们对工作流技术充满着强烈乐观情绪,研究者普遍相信新技 术可以带来办公效率的巨大改善,然而这种期望最终还是落空了。7 0 年代工作流 技术失败的技术原因则包括:在办公室使用个人计算机尚未被社会接受,网络技 术还不普遍,开发者还不了解群件技术的需求与缺陷。 含有工作流特征的商用系统的开发始于1 9 8 3 年至1 9 8 5 年间,早期的商用系 统主要来自于图像处理领域和电子邮件领域。图像处理许多时候需要流转和跟踪 图像,工作流恰好迎合了这种需求;增强的电子邮件系统也采用了工作流的思想, 把原来点对点的邮件流转改进为依照某种流程来流转。在这些早期的工作流系统 电子科技大学硕士学位论文 中只有少数获得了成功。 进入9 0 年代以后,相关的技术条件逐渐成熟,工作流系统的开发与研究进入 了一个新的热潮。据调查,截至1 9 9 5 年共有2 0 0 多种软件声称支持工作流管理或 者拥有工作流特征。工作流技术被应用于电讯业、软件工程、制造业、金融业、 银行业、科学试验、卫生保健领域、航运业和办公自动化领域f 6 】。 2 1 2 工作流定义 由于工作流技术仍在不断的发展,处于不断的完善阶段,所以到目前为止, 对于工作流仍然没有完全统一的定义。不同的研究者和工作流产品供应商从不同 的角度对工作流概念进行了描述,下面的不同描述可以使我们对工作流的一些基 本特征有一定的理解。 ( 1 ) 工作流管理联盟的定义【7 】 工作流是一类能够完全或者部分自动执行的经营过程,根据一系列过程规则、 文档、信息或任务能够在不同的执行者之间传递、执行。 ( 2 ) g e o r g a k o p o u l o s 的定义嘲 工作流是将一组任务( t a s k ) 组织起来完成某个经营过程。在工作流中定义了 任务的触发顺序和触发条件。每个任务可以由一个或多个软件系统完成,也可以 由一个或一组人完成,还可以由一个或多个人与软件系统协作完成。任务的触发 顺序和触发条件用来定义并实现任务的触发、任务的同步和信息流( 数据流) 的 传递。 ( 3 ) i b ma l m a d 饥r e s e a r c hc e n t e r 的定义【9 】 工作流是经营过程的一种计算机化的表示模型,定义了完成整个过程所需用 的各种参数。这些参数包括对过程中每一个单独步骤的定义、步骤间的执行顺序、 条件以及数据流的建立、每一步骤由谁负责以及每个活动所需要的应用程序。 ( 4 ) 我国清华大学范玉顺教授,吴澄院士等人的定义【8 】 工作流是一种反映业务流程的计算机化的模型,它是为了在先进计算机环境 支持下实现经营过程集成与经营过程自动化而建立的可由工作流管理系统执行的 业务模型。 以上这些对工作流的定义是用非形式化语言对工作流所进行的描述,虽然各 有不同,但基本上都达成了这样的一个共识:工作流是经营过程的一个计算机实 现,而工作流管理系统就是这一实现的软件环境。这些工作流的定义分别反映了 6 第二章工作流技术与面向服务的体系架构 经营过程如下几个方面的问题,即经营过程是什么( 由哪些活动、任务组成,也 就是结构上的定义) 、怎么做( 活动间的执行条件、规则以及交互的信息,也就是 控制流与信息流的定义) 、由谁来做( 人或者计算机应用程序,也就是组织角色的 定义) 、做得怎样( 通过工作流管理系统进行监控) 。相对于传统的企业业务流程, 工作流具有以下特点【l3 j : ( 1 ) 计算机管理:工作流管理是由计算机管理的企业业务流程,而不是手工管 理的流程,也不是部分步骤由计算机来完成的计算机应用。 ( 2 ) 自动流转:流程实现任务及任务信息在流程参与人间的自动流转,而无需 手工指派任务( 在必要时也可进行手工指派) 。 ( 3 ) 流程有显式或隐式的计算机定义:定义明确描述了流程在计算机上执行所 需的一切信息。 2 1 3 工作流相关概念及联系 下面简要介绍下与工作流相关的一些基本概念。 ( 1 ) 业务流程( b u s i n e 8 8p r o c e s s ) 一组用来实现一个商业或策略目标的存在关联的过程或行为,通常处于一个 定义功能角色和关系的组织结构的上下文中1 7 。在某企业或机构中,它能够实现业 务目标和策略的相互连接的过程和活动集,如公文处理流程、投保过程等等。 ( 2 ) 工作流( w b 衄o w ) 工作流是面向特定应用的业务流程的抽象。它是业务流程的整体地或部分地 自动化处理,文档、信息或任务按照一组规则自动从一个参与者传递给另一个参 与者处理【。 ? ( 3 ) 工作流引擎( w o r k f l o we n g i n e ) 工作流引擎为一个工作流实例提供执行环境。它提供的服务包括:过程模型 的解释、过程实例的控制( 创建、激活、暂停、终止等) 、在过程各活动之间的游 历( 控制条件的计算与数据的传递等) 、参与者的加入与退出、生成工作项通知用 户进行处理、工作流控制数据和工作流相关数据的维护、调用外部应用和访问工 作流相关数据等【1 0 】。 ( 4 ) 过程定义( p r o c e s sd e f i n i t i o n ) 过程定义也称过程建模,计算机所能识别的业务流程的形式化描述,用来支 持运行过程的自动化。流程一般被分解成一些子过程和活动以及它们之间的关系, 7 电子科技大学硕士学位论文 其定义主要包括运行过程中所涉及到的各种数据和参数,如过程的开始和终止条 件、各个工作环节( 活动) 及相互之间的控制流和数据流关系以及一些关于个体 行为的信息,如组成成员、与r r 相关的应用和数据等【1 1 1 。 ( 5 ) 工作流模型( w o r k f l o wm o d e l ) 工作流模型是对工作流的抽象表示,也就是对经营过程的抽象表示【7 1 。工作流 模型是使用工作流定义语言对某个应用域的业务过程形式化描述所得到的结果, 它包含工作流执行所需要的信尉1 1 1 。 ( 6 ) 活动( a c t i v i t y ) 活动是工作流中一些逻辑步骤或环节的工作任务,一般分为手工操作和自动 处理两类。活动是流程执行中的最小工作单元,要求有人员的参与或由计算机自 动完成【l l 】。 ( 7 ) 流程实例( p r o c e s si n s t a n c e s ) 流程实例是实际运行中的一个业务流程。每个实例代表一个能独立控制执行、 具有内部状态的线程。在流程实例执行的业务流程中,w f m s 将解释相应的流程 定义,生产相关的活动实例并根据定义中的控制规则协调这些活动之间的顺序关 系,同时根据数据流动关系的定义完成活动之间的数据传送。从参与者的角度来 说,实例的执行实际上是由参与者处理他所涉及的那些环节的数据,完成该环节 的任务,之后由w f m s 根据相应结果激活后续环节,同时通知后续参与者对之进 行处理,由此依次反复直至整个流程完成【1 0 1 。 ( 8 ) 活动实例( a c t i v i t yi n s t a n c e s ) 活动实例是过程实例中的一个逻辑步骤或环节【1 0 1 。 ( 9 ) 工作项( w o r l d t e r n ) 可被工作流参与者执行的活动实例的表示,一个活动实例通常产生一个或几 个工作项,工作项通过赋予相关参与者的工作列表而被参与者所感知【1 1 】。 ( 1 0 )任务( t a s k ) 活动和工作项的统一表示,在工作流定义的上下文中表示活动,在工作流实 例的上下文中表示工作项 1 l 】。 ( 1 1 ) 路由( r o u t i n g ) 工作流实例中任务间的关系,基本的路由关系有:顺序( s e q u e n c e ) 、选择 ( c h o i c e ) 、派生( f o r k ) 、合并( m e r g e ) 、同步( s y n c h r o n i z a t i o n ) 等【1 2 】。 ( 1 2 ) 组织( o r g a n i z a t i o n ) 任务执行所需要的,一般指参与者,可以是机器,也可以是人【1 3 】。 8 第二章工作流技术与面向服务的体系架构 工作流相关的基本概念之间的关系如图2 1 所示: 业务流程 过程定义 工作流管理系统 夕例 活动间关:多渔二i i 咧 自动处理 手工操作活动实例 r 趴l 参与者应用软件 图2 - 1 工作流基本概念关系图 2 1 4 w f m c 工作流参考模型 为了解决不同厂商各自的工作流管理系统互不兼容的问题,1 9 9 4 年1 1 月2 9 日,工作流管理联盟( w 蹦c ) 发布了工作流系统参考模型,详细描述了工作流系 统的有关概念,并在此基础上给出了工作流管理系统( w i l l i s ) 的各个主要组成部 分、各部分的功能以及相互之间的接口。为工作流技术的进一步发展和规范奠定 了基础。工作流管理系统参考模型如图2 2 所示。 图2 - 2w f l v i c 的工作流系统参考模型 9 电子科技大学硕士学位论文 这个体系结构图表示了工作流系统的主要组成部分和接口,可以看出它定义 了五类接口,下面对各个部分及功能做一个简要的说明。 2 1 4 1 过程定义工具 过程定义工具( p r o c e s sd e f i n i t i o nt o o l s ) 的主要功能是给用户提供一种对实际 业务过程进行分析、建模并生成可被计算机处理的形式化描述( 过程定义) 的手 段。 目前己有许多工具可以用于对商业过程的分析、建模、描述及记录,包括非 形式化的和复杂的形式化的工具。工作流模型本身并不关心这些工具的本质以及 在定义过程时怎样交互,这些工具可以作为对工作流产品的补充或者是一个独立 的产品工具集【1 4 】。如果工作流产品提供了自己的过程定义工具,它的过程定义将 被包含在工作流产品之中,可以通过程序接口进行访问。如果使用了独立的产品 定义了流程,需要在必要的时候进行过程定义转化。流程建模或设计活动的最终 输出是可被工作流引擎运行解释的过程定义【1 5 】【1 6 1 。 过程定义工具与工作流执行服务之间的接口,即接口l ,也被称作过程定义输 入输出接口,接口的本质是一个交换格式和a p i 调用,它支持对过程定义的转化。 2 1 4 2 工作流执行服务 工作流执行服务( w o r k f l o we n a c t m e n ts e r v i c e ) 是工作流管理系统的核心部件, 它提供了一个运行环境,在这个环境中,利用一个或多个工作流引擎进行流程实 例化或激活,通过与必要的外部资源进行交互,负责解释和激活部分或全部流程 定义,完成工作流流程实例的创建、执行与管理,如流程定义的解释、流程实例 的控制( 创建,激活,暂停,终止等) ,在流程各活动之间的游离,并生成有关的 工作项通知用户进行处理等,为工作流程的进行提供一个运行时的环境。 工作流执行服务是由一个或多个创建、管理和执行工作流实例的工作流引擎 组成,应用程序通过工作流应用程序接口来访问这种服务。在参考模型中,构成 工作流执行服务的过程控制逻辑与定义活动过程的应用工具以及用户任务是相分 离的。这种分离性为特定的工作流应用集成、更为广泛的工业标准和应用工具提 供了机会。 外部可访问资源通过以下两个接口之一与特定执行服务相作用: 客户应用接口,即接口2 。工作流引擎通过这个接口与工作项列表处理器相作 用,后者负责根据用户资源组织工作,并从工作项列表中选择和提升单个的工作 l o 第二章工作流技术与面向服务的体系架构 项,应用工具的激活是在工作项列表和最终用户的控制下进行的。 被调用应用接口,即接口3 。它使工作流引擎直接激活一个特定的工具从事特 定的活动,特别是对基于服务器的应用,只要一个特定的活动需要使用由用户参 与的工具,它就会通过工作列表接口正常触发,从而为用户安排任务提供了更大 的灵活性。 工作流引擎是工作流执行服务的核心,是业务处理过程的任务调度器,在某 种程度上还是资源的分配器。在采用工作流管理系统支持经营过程中,工作流引 擎可以看成是一个业务操作系统b o s ( b u s i n e s so p e r a t i n gs y s t e m ) 。业务过程在 它的管理、监控之下运行,因此工作流引擎的性能和可靠性就直接决定了业务过 程的运行效率和安全性。工作流引擎的主要功能是【1 6 】: ( 1 ) 实例化及执行工作流流程模型。 ( 2 ) 为流程和活动的执行进行导航。 ( 3 ) 与外部资源交互完成各项活动。 ( 4 ) 维护工作流控制数据和工作流相关数据。 工作流执行服务可以被看作一台状态变迁自动机,它的过程或活动实例根据 外部事件( 如活动的完成) 或者工作流引擎的控制来改变状态。图2 3 展示了流程 实例的基本状态变迁模式【引,其中状态变迁( 箭头表示) 是作为对特定的命令的响 应而发生的,某些状态之间的变迁也可以是对流程定义中被满足的变迁条件( 如 外部事件、依赖于时间或数据的条件) 的响应,这些基本的状态包括:起始( i n i t i a t e ) 、 准备运行( r u n n i n g ) 、运行中( a c t i v e ) 、挂起( s u s p e n d e d ) 、终止( t e r m i n a t e d ) 、 结束( c o m p l e t e d ) 等。 图2 3 工作流活动状态的变迁 电子科技大学硕士学位论文 2 1 4 3 工作流的客户功能 工作流的客户功能( w o r k f l o wc l i e n tf u n c t i o n ) 的作用是给用户提供一种手段, 以处理流程实例运行过程中需要人工干预的任务。每个这样的任务就被称为一个 工作项,它包括处理上的一些要求及待处理的数据对象等。w f m s 将为每一个用 户维护一个工作项列表,它表示当前需要该用户处理的所有任务。 工作项列表处理器负责在活动需要人力资源时跟最终用户进行交互,它可能 是工作流产品的附加部分,或者是用户自己编写的【1 7 】。工作流通常跟其他办公服 务,如电子邮件、工作安排等一起集成在一个公共的桌面环境中,为最终用户提 供一个统一的任务管理系统,这就需要在工作流执行服务和工作流客户应用之间 提供一种灵活的通信机制,以支持许多不同的可能会遇到的运作系统的构造。在 工作流模型中,客户应用和工作流引擎之间通过工作项列表作为接口界面进行相 互作用,工作项列表是工作流引擎分配给特定用户的工作项队列。工作流引擎在 分配工作项时要访问工作项列表,工作项列表处理器在检索工作项交给用户处理 时也要访问工作项列表。工作项列表里单个工作项的激活是在工作流客户应用或 最终用户的控制下进行的,在工作流客户应用和工作流执行之间定义了多个流程, 例如向工作项列表添加新项、从列表中移走己完成的工作项、暂停工作项等。工 作项列表处理器可以直接或在最终用户的控制下唤起应用程序,跟工作项相关联 的数据是工作列表处理器唤起应用程序所必要的信息【l 引。工作项列表可能包含同 一流程的不同活动句柄或不同流程的工作项,一个工作项列表处理器可跟几个不 同的工作流引擎相互作用。 2 1 4 4 被调用应用程序 被调用应用程序( i n v o k e da p p l i c a t i o nf u n c t i o n s ) 是指工作流执行服务在流程 实例的运行过程中调用的,用以对应用数据进行处理的应用程序。在流程定义中 包含这种应用程序的详细信息,如类型、地址等。目前己有的几种方式来执行这 些程序,包括应用代理、某种标准的互换机制、本地过程调用、远程执行调用、 o r b 等。 在异构的产品环境里,一个特定的w f m s 实现几乎不可能具有足够的逻辑来 对付所有潜在应用的触发,因此需要一种机制来将应用或工作流相关数据转化为 公共格式或编码。针对特定应用工具( 如字处理器) 所产生的数据类型的应用, 需要许多工作流系统来做专门处理,在其他情况下,特定应用的触发可以通过标 准的转化机制如x 4 0 0 来完成,也可以开发利用标准a p i 集与工作流执行服务进 1 2 第二章工作流技术与面向服务的体系架构 行通信的应用工具,用它接受数据、信号、事件响应等,这些a p i 可以被应用工 具当作前端与其他应用进行交互,而无需专门的工作流知识。 2 1 4 5 管理及监控工具 管理及监控工具( a d m i n i s t r a t i o n m o n i t o r i n gt o o l s ) 的主要功能是对w f l s 中的流程实例的状态进行监控与管理,如用户管理、角色管理、审计管理、资源 控制等。 系统管理和监控接口( 即接口5 ) 的目的主要是为了让多个工作流服务共享一 个公共的管理和监控系统,可以通过在w a p i 集合中提供特定的命令来完成管理 和监控功能。也可以利用通用管理信息协议( c m 口) 和简单网络管理协议( ( s n m p ) 这两个己经存在的协议来设定状态和获取统计信息。系统管理和监控主要有以下 几项内科1 9 】: ( 1 ) 用户管理,包括创建、删除、暂停、修改用户或工作组的权力; ( 2 ) 角色管理,包括定义、删除、修改角色、角色分配; ( 3 ) 审计管理,查询、打印、新建、删除审计跟踪或事件日志; ( 4 ) 资源控制,设立、修改过程或活动并发层次,询问资源控制数据; ( 5 ) 过程监控,改变流程定义或流程句柄的操作状态,控制流程定义版本,改 变活动状态,分配活动属性,终止流程句柄等。 2 1 5 工作流管理系统 工作流管理系统,是一个软件系统,完成工作流的定义、创建和管理,并按 照在计算机中预先定义好的工作流逻辑推进工作流实例的执行,它可以运行在一 个或多个能理解流程定义并与流程参工作流管理系统的体系结构与者相互协作的 工作流引擎之上,在需要时还能激活相应工具和外部应用系统。 2 1 5 1 工作流管理系统的体系结构 w f m c 提出的工作流管理系统的体系结构模型如图2 4 所示。这个体系结构模 型给出了抽象的工作流管理系统的功能组成部件和接口,它能够满足工作流管理 系统和产品所应该具有的主要功能特征,可为实现工作流产品之间的互操作提供 公共的基础。需要指出,组成工作流管理系统的每个功能部件可以在不同的软硬 件平台上采用不同的方法实现,同样接口也可以在不同的软硬件平台上采用不同 的设计技术和编程语言进行编程。从图2 4 可以看出,工作流管理系统主要由三类 1 3 电子科技大学硕士学位论文 构件组成,这三类构件分别是。 ( 1 ) 软件构件:完成工作流管理系统不同组成部分功能的实现。 ( 2 ) 系统控制数据:工作流管理系统中的一个或多个软件构件使用的数据。 ( 3 ) 应用与应用数据:对于工作流管理系统来说它们属于外部系统和数据 被工作流系统调用来完成整个和部分工作流管理的功能。 m ,! 竺 图2 4 工作流管理系统的体系结构模型 2152 工作流管理系统的功能 虽然不同的工作流管理系统具有不同的应用范围和不同的实旌方式,在过程 建模和工作流引擎的设计和实现方式上不同,但从一个较高的层次考察工作流管 理系统,可以发现几乎所有的工作流管理系统都提供了以下三个主要功能1 q 【2 0 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论