




已阅读5页,还剩70页未读, 继续免费阅读
(计算机软件与理论专业论文)钱塘应用服务器服务流平台的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
幽卜l 图卜2 图卜3 豳2 - 1 幽2 2 图2 - 3 图3 1 圈3 2 图3 - 3 图3 4 图3 5 图36 图3 7 图4 - 1 图4 2 图4 3 幽4 - 4 图4 5 图4 - 6 图4 - 7 图5 1 图6 1 图6 2 图6 3 图6 - 4 插图目录 w e b 服务角色关系图 w e b 服务协议栈9 j 2 e e 基本架构一1 0 t 作流系统示意酗一1 8 f 2 be n d p o i n t 实现原理图2 l j s ee n d p o i n t 实现原理图2 2 服务流平台体系结构图2 3 j t a n g f l o w - s 角色关系图2 4 e c li p s ec o e f 技术架构图一2 7 e c l i p s ed r a w 2 d 框架结构2 8 e c l i p s e6 e f 的m v c 模式2 9 注册服务查询界面3l 服务流程建模模块3 2 服务流程设计子系统总体架构3 6 服务查询和选取界面4 5 服务和应用绑定界面4 6 服务流程设计界面4 7 节点一边模型的m o d e l 类关系图4 8 节点一边模型的e d i t o r p a r t 类关系图4 9 节点一边模型的c o n t r n a n d 类关系图4 9 模型转换圈6 3 服务流程引擎体系结构6 5 定义数据库关系图,6 6 实例数据库关系图6 7 流程流转的整体过程图6 9 表格目录 表4 1 流程支持的应用类型及其地址格式表3 9 表4 2 活动的j o i n m l o d e 和s p lit m o d e ,4 l 表4 3 应用数据映射表4 2 表4 - 4 子流数据映射表4 3 表5 - 1 传统工作流模型及其形式化验证方法5 6 表5 2 验证能力和图形表达能力比较5 6 表6 - 1 流程活动的映射表6 7 表6 2 流程的活动表6 8 表6 3 流程服务的数据映射表一6 8 4 摘要 中间件技术和操作系统技术,数据库技术并列为三大系统级软件技术之一, i b m 、b e a 、o r a c l e 等国外著名一商围绕j 2 e e 应用服务器的中问件技术竞争也激烈 地展7 f :。但是j 2 e e 技术在解决异质异构系统的交互方面仍然面临巨大挑战,最近 几年,w e b 服务在分布式计算领域脱颖而出,它可以有效地解决j 2 e e 力所不及的 问题。因此,针对应用服务器的w e b h 务支持的技术竞争也随之而来。 面对这应用软件平台化的背景和趋势,j t a n g 应用服务项目的目标就是面向 制造业信息化、服务业电子化、电子商务、电子政务等应用领域,全面采用先进、 成熟的计算机技术及最新研究成果开发中间件软件平台产品。作为新产品,我们 有创新的优势,钱塘应用服务器服务流平台( j t a n g f l o w s 系统) 难是在这样的 目标下设计开发的。 j t a n g f l o w s 系统的目标就是让j t a n g 应用服务器支持不断成熟完善的w e b 服务技术,让更多企业在受益于j 2 e e 标准的同时,也能将其业务功能和流程包 装成标准的w e b 服务发布出去,实现与合作伙伴快捷方便的业务集成,让j t a n g 应用服务器成为掌握最新w e b 服务技术的应用服务器产品,让w e b 服务流程技术 成为钱塘应用服务器的核心竞争力之一! 本文的主要研究重点就是深入分析当前的w e b 服务技术标准和服务组合技 术,以及这些新技术对未来应用服务器发展的影响;同时研究j t a n g f l o w s 系统 的研发基础j t a n g f l o w 工作流系统和j t a n gw e b 服务基础架构的体系结构、系统 功能,为j t a n g f l o w s 的研发提供设计思想的启发和实现技术的积累;然后,本 文重点设计了j t a n g f l o w s 系统的体系结构,并从功能点、功能模型以及关键技 术角度对j t a n g f l o w s 系统进行详细的设计,在此基础上,对其中的流程设计子 系统和流程引擎子系统进行重点描述,并引入了p e t r i 网理论进行流程的验证和 仿真。实现了j t a n g f l o w s 系统的四大特点:所见即所得的流程设计、形式化的 流程验证仿真、基于语义的服务的注册和查询、与j t a n g 应用服务器的无缝集成。 本文工作得到浙江省重大基础软件产品开发专项( 2 0 0 4 c 1 1 0 5 3 ) 中间件 软件平台产品的研制及其产业化的资助。 关键词:钱塘应用服务器j 2 e ew e b 服务服务流程p e t r i 网 a b s t r a c t m i d d l e w a r et e c h n o l o g y ,t o g e t h e rw i t ho p e r a t i n gs y s t e ma n dd a t a b a s e ,a r el i s t e da st h et o p t h r e es y s t e ms o f t w a r et e c h n o l o g i e s m i d d l e w a r ev e n d o rs u c ha si b m ,b e aa n d o r a c l e i n t e n s e l yc o m p e t e sw i t he a c ho t h e rf o r t h ee m e r g i n gj 2 e ea p p l i c a t i o ns e r v e rt e c h n o l o g y b u t j 2 e ei sc h a l l e n g e db yt h ei n t e r a c t i o nb e t w e e nh e t e r o g e n e o u ss y s t e m s w e bs e r v i c e ,h o w e v e r , c a d s o l v et h a tp r o b l e me f f e c t i v e l y ,a n dw a r f a r ef o rw e bs e r v i c eo v e rj 2 e ec o m e si n t ob e i n g w i t ht h i st r e n d ,t h ed e v e l o p m e n to fj t a n ga p p l i c a t i o ns e r v e rf o c u s e so nf a c i l i t a t i n gt h e i n f o r m a t i o nt e c h n o l o g yo fm a n n f a c t o r i n g ,e - g o m m e r c e ,e g o v e r n m e n ta f f a i ra n dt h eu s a g eo f a d v a n c e dt e c h n o l o g i e s j t a n gh a st h ea d v a n t a g eo fi n n o v a t i o na n dr e s e a r c ha c c u m u l a t i o n ,t h e s e r v i c ef l o wp l a t f o r mi nj t a n ga p p l i c a t i o ns e r v e r ( j t a n g f i o w - s ) i so n eo f o u ti n n o v a t i o n s t h et a r g e t so fj t a n g f l o w si n c l u d et h ew e l ls u p p o r to fw e bs e r v i c ei nj t a n ga n dm a k i n g c u s t o m e r sb e n e f i tf r o mt h ew e bs e r v i c ee n c a p s u l a t i o no ft h e i rs y s t e mf u n c t i o na n dt h eb u s i n e s s i n t e g r a t i o nw i t ht h e i rp a r t n e r s w i t hj t a n g f i o w - s ,j t a n gc a nb eo d eo ft h ej 2 e ea p p l i c a t i o n s e r v e rp r o d u c t sh a v i n gt h eu pt od a t ew e bs e r v i c et e c h n o l o g y ,a n ds e r v i c ef l o wp l a t f o r mw i l lb e o n eo f t h ek e yc o m p e t i t i v e n e s so f j t a n g t h em a i nw o r ko f t h i sp a p e ri sl i s t e da sb e l o w :d e p t ha n a l y s i so f t e c h n i c a ls t a n d a r d so f w e b s e r v i c ea n ds e r v i c e c o m p o s i t i o n ,a n dt h ei m p a c t so ft h e s e n e wt e c h n o l o g i e so nt h e f u t u r e d e v e l o p m e n to fa p p l i c a t i o ns e r v e r ;m e a nw h i l e ,d o i n gr e s e a r c ho nt h ea r c h i t e c t u r ea n df u n c t i o n a l m o d e lo fj t a n g f l o ww o r k f l o ws y s t e ma n dj t a n gw e bs e r v i c ei n f r a s t r u c t u r eo nw h i c ha r e j t a n g f l o w - ss y s t e mb a s e d ;t h e nt h ea r c h i t e c t u r eo f j t a n g f l o w - si si n t r o d u c e da f t e ri n t r o d u c i n g t h ea r c h i t e c t u r a ld e s i g n ,d e t a i l e dd e s i g na n di m p l e m e n t a t i o no fs e r v i c ef l o wd e s i g n e rs u b s y s t e m a n ds e r v i c ef l o we n g i n es u b s y s t e mi se x p l a i n e df r o mt h ep e r s p e c t i v e so ff u n c t i o ns p o t ,f u n c t i o n m o d e la n dk e yt e c h n o l o g i e s e s p e c i a l l y , p e t r in e ti sa d o p t e di nf l o wv a l i d a t i o na n de m u l a t i o n j t a n g f l o w - s 7f o u rm a j o rf e a t u r e sa r es u m m a r i z e d :u s e r - f r i e n d l yf l o wd e s i g n e ri n t e r f a c e ,f o r m a l v a l i d a t i o no fs e r v i c ef l o w , s e m a n t i c b a s e ds e r v i c er e g i s t r a t i o na n dq u e r y ,a n dd y n a m i cb i n d i n go f s e r v i c e t h i sw o r ki s s u p p o r t e db yz h e j i a n gp r o v i n c ek e ys o f t w a r ed e v e l o p m e n tf o u n d a t i o n ( n o 2 0 0 4 c11 0 5 3 ) k e y w o r d s :j t a n g a p p l i c a t i o ns e r v e r j 2 e ew e bs e r v i c es e r v i c ef l o wp e 埘n e t 6 第一章绪论 1 。1 课题研究的背景和意义 现有的w e b 技术能很好的解决信息发布和共享问题,支持b 2 c 和非自动的b 2 b 电子商务模式,而且j 2 e e 、c o r b a ,d o t n e t 等对象和组件技术和标准也逐渐成熟, 被业界广泛接受,有i b m 、b e a 、o r a c l e 等国外著名厂商支持的j 2 e e 应用服务器技 术呈现百家争鸣的竞争态势。随着中国企业的i t 需求扩大和技术的成熟,钱塘 ( j t a n g ) 应用服务器也将进入中间件市场并成为有竞争力的产品。 但是j 2 e e 技术在解决异质异构系统的交互方面仍然面临巨大挑战,如使用不 同的计算机语言、不同的应用架构开发的信息系统问的信息共享和交互问题,都 是对各j 2 e e 应用服务器产品提出的难题。现有的中间件署d e a i 解决方案都实施困 难、耗费巨大,且不便于实现动态的应用集成。例如,在b 2 b 电子商务应用中, 企业与合作伙伴、供应商、分销及代理商、银行等实现应用集成都不能快速、方 便、廉价的进行。 最近几年,w e b j 眼务在分布式计算领域脱颖而出,它可以有效地解决以上j 2 e e 力所不及的问题。w e b j 艮务是一种基于w e b 的分布式计算技术框架,试图用来方便 各种平台的以各种不同语言和技术开发的分布式计算技术能够相互协作和交互。 它支持不同机器间的应用通过互联网实现交互。它的接口使用w s d l 格式进行描 述,其它系统按照约定的方式使用s o a p 消息访问w e b j r 务接口。w e b j 6 务既可以独 立使用,也可以与其它w e b j r 务一起使用以执行一个复杂的集合或一个商务交易。 因此,w e b 服务日益成为解决电子商务、政务及其它各类应用的松偶合集成的最 佳手段。w e b j 匣务最大优势是提供了跨平台的,用不同语言编写的各种程序之间 交互的一系列标准,它将改变现有的电子商务模式,并促进新的交易方式的出现, 对各种企业之间的信息系统进行整合和交流提供了一种现实且方便的解决途径。 所以钱塘应用服务器作为企业级软件平台,必须支持不断成熟完善的w e b j 务技术,让更多企业在受益于j 2 e e 标准的同时,也能将其业务功能和流程包装成 标准的w e b j 务发布出去,实现与合作伙伴快捷方便的业务集成。同时,作为一 个新的研究和工程领域,如何有效的组合企业内部和企业间的各类服务,实现服 务之问的无缝集成,形成功能丰富的企业级服务流程以达到企业的商业目标,已 经越来越成为钱塘应用服务需要实现的目标。对服务组合和流程设计的支持也将 成为下一代应用服务器重要技术指标。 服务流程技术也将成为钱塘应用服务器的核心竞争力之一。 1 2 应用服务器发展趋势概述 s u n 公司提出开发、部署、运行和管理基于j a v a 分布式应用的j 2 e e 标准。 j 2 e e1 0 最终规范要求要“符合j 2 e e ”规范,必须提供完整的j 2 e ea p i 产品套 件。从2 0 0 0 年起,就在各应用服务器厂商间展开了j 2 e e 符合性测试的竞赛,“符 合j 2 e e ”是获得竞争优势的必然选择。 所以,应用服务器产品的发展紧紧跟随着j 2 e e 规范的脚步,j 2 e e 标准也在 各应用服务器厂商的推动下不断发展。当前应用服务器厂商使用最广泛的是 j 2 e e1 4 版本的规范。j 2 e e1 4 比1 3 版增加了一些新特性,主要就包括对w e b s e r v i c e 的支持、消息传递的完善,部署和管理的增强( j m x ) ,以及使w e b 应用 开发相关的s e r v l e t 2 4 、j s p 2 0 技术。钱塘应用服务器的开发是在j 2 e e l 4 发 布之后,需要全面支持j 2 e e l 4 规范,尤其其中的与w e b 服务相关的j a x r p c 、 s a a j 、j a x r 。同时,服务组合技术的引入,也将让钱塘应用服务器走在技术的前 沿。 1 2 1w e b 服务技术 w e b 服务是一个软件接口,它描述了一组可以在网络上通过标准化的x m l 消息传递访问的操作。它是自包含的、模块化的应用程序,它可以在网络( 通常 为w e b ) 中被描述、发布、查找以及调用;也能够支持不同机器间的应用通过 互联网实现交互的软件系统。接口使用w s d l 格式进行描述,其它系统按照约定 的方式使用s o a p 消息访问w e b 服务接口。 w e b 服务建立在一些成熟的技术基础上,以x m l 技术为基础,通过基于x m l 技术的w e b 服务描述语言w s d l 对提供的服务进行封装,在i n t e r n e t 发布该服务 及提供服务的企业和组织的相关信息,供现有的或潜在的客户以一些标准的方式 访问。 w e b 服务架构包括三种角色,如下图所示: _ 服务提供者:包括服务接口提供者( 提供访问应用的接口作为w e b 服务) 和服务提供者( 提供可执行的应用程序作为w e b 服务) ; 一服务注册中心:作为w e b 服务的代理,服务提供者在此发布他们的服务 描述: 一服务请求者:是请求使用w e b 服务的应用程序( 客户端) 。最终用户可 以通过一个p o r t a l 或蜂窝电话来访问w e b 服务; 图1 - 1w e b 服务角色关系图 实现一个完整的w e bs e r v i c e 体系需要有一系列的协议规范来支撑,w e b s e r v i c e 体系呈现一种栈的结构。 图卜2w e b 服务协议栈 w e b 服务协议栈特点: _ 首先,协议的简单性,无论是如h t t p ,f t p 等传统t c p i p 网络协议,还 是s o a p ,w s d l ,1 3 d d i ,w s f l 等基于x m l 的协议都设计地力求简单。 - 其次,层次功能的按需选择,应用可以按照需要选则若干层次的功能( 如 w s d l s o a p ) ,而无需所有的特性就可以架构一个符合规范的w e b 服务。 一最后,技术的继承性,即没有创造个完全新的体系,而是基于现有的技 术设计开发的,w e b 服务也因其继承原有的被广泛接受的技术才使自己被 广泛接受。 1 2 2j 2 e e 中的w e b 服务 j 2 e e 应用服务器实现了j 2 e e 标准所提供的具有跨平台性、可移植性、对象 特性、内存管理等方面的优势的完整底层框架。包括j 2 e e 规范中定义的各种服 务,包括j s p 和s e r v l e t 容器、e j b 容器、j d b c 、j n d i ( 名字目录服务) 、j t s j t a ( 事务服务) 、j m s ( 消息服务) 等。e j b 组件可以高效的运行在应用服务器中, 用户可以通过s e r v l e t 或者j s p 调用运行在e j bc o n t a i n e r 中的e j b ,也可以通 过i i o p 直接访问运行在e j b 组件。除了应用服务器的基本特性以外,j 2 e e 应用 服务器还能够与业界主要的i d e ( 如3 b u i l d e r 、e c lj p s e 等) 集成;与标准的j a v a 操作平台兼容,如s u n 、i b m 等的系统平台。如下图是j 2 e e 的基本架构: j 2 8 e ;j a v a2p l a f r o r m 。s t a r t o a r de d h i o nj d b g 。j a v a0 味t a b a s oc o n n e 甜t y 竣拿皂= 渤j v a a v 8 a e a a u n 2 8 h ”a 蕊t i c 镕a t l o 。n n 背要盆:赣“。“轴“。 j j s m p s 。:妇& , 4 v as m 。e r a f g 鼢oa s e e r v l 。 取x p = 幽v a p b r x m l 舟砖 旧j 强嚣j 芒i 媳e a n s a c l 瀵a p i 图卜3j 2 e e 基本架构 1 0 在e j b2 1 规范正式推出之前,一些基于j 2 e e e j b 的中间件平台产品中就己 经有了对w e b 服务的基本支持,如通过简单地内置一些传输处理程序和一个s o a p 引擎,就可以把s e r v l e t 和e j b 封装成w e b 服务。e j b2 1 规范中,明确地为e j b 定 义了支持w e bs e r v i c e 的组件接口,这使得e j b 支持w e b 服务的编程和封装处理标 准化。 1 2 3 服务组合概述 有效组合企业和企业间的各类服务,实现服务的无缝集成,通过流程级别的 整合达到企业的商业目标是服务组合平台的目标。在企业界各公司也推出自己的 服务流程整合平台和设计工具,为企业量身定做随需应变的路线图,设计并实施 可重用的服务,在服务之上整合业务流程,最终将企业和客户、供应商、合作伙 伴的应用系统水平集成,已经越来越成为企业竞相争夺的市场领域。 服务组合主要的研究方面包括:服务组合建模语言、服务组合方法、服务组 合执行、服务组合验证等。但企业更注重w e b 服务组合在b 2 b 电子商务、跨组织 流程管理、企业应用集成等方面的应用,相继推出了b p e l 4 w s 、b p m l 、w s c d l 等w e b 服务之间的协作标准,并基于工作流的方法和理论进行服务组合平台和产 品的开发。 下面列举几个服务组合相关的产品4 1 : - e f l o w :h p 公司较早推出的一个基于工作流方法的支持服务组合设计、部 署、运行和监控的服务平台; _ m e t e o r s :美国乔治亚大学的l s d i s 实验室承担的服务综合管理项目。该 项目旨在结合工作流、语义网、w e b 服务三种技术以解决语义w e b 服务的描 述、发现、组合和执行问题; - s e l f - s e r v :澳大利亚新南威尔士大学和昆士兰大学合作研制的一个快速 开发和执行的服务组合平台; _ f l a m e 2 0 0 8 :中国科学院计算所和德国弗朗霍夫软件研究所合作开发的面 向北京2 0 0 8 年奥运会的一套服务中间件平台,旨在通过整合奥运会期间各 种自治的社会服务,为各类用户提供即时服务组合支撑环境,从而帮助业 务用户在业务层面组合配置各类服务形成应用,以满足个性化应用需求; 1 3 课题研究的内容及主要工作 本论文研究的内容大背景是浙江省重大基础软件产品开发专项“中间件 软件平台产品的研制及其产业化”课题。项目整体目标是在应用软件平台化的背 景和趋势下,面向制造业信息化、服务业电子化、电子商务、电子政务等应用领 域,结合浙江省制造业信息化、服务业电子化工程及国家8 6 3 项目,全面采用先 进、成熟的计算机技术及最新研究成果,整合我省软件企业资源,开发中间件软 件平台产品,实现我省中间件产品的跨越式发展,为全省多数软件开发商提供平 台支撑,辐射广大应用软件开发商,提升我省软件企业的层次和水平,增强我省 软件企业的核心竞争力,其主要研究内容可以概括为“需求调研、技术攻关、平 台开发、标准制定和应用推广”。 _ 开发具有自主知识产权的轻量级j 2 e e 应用服务器,提供e j b 容器服务、j m s 服务、j d b c 及连接池服务、j t sj 匣务、j n d i 、c l u s t e r 服务、j m x 及动态部 署七大功能。 一研究通用应用系统集成技术:面向各类信息系统,研究支持企业应用集 成的中间件技术,包括过程集成技术、数据集成技术、界面集成技术、 异构数据映射技术、支持同异步的集成作业调度技术等。 _ 研究支持分布协同、可扩展的开放系统体系结构:研究可支持跨地区跨 行业的、可扩展、可维护、柔性开放的中间件平台系统架构。 我围绕本论文主要做了如下一些主要工作: - 调研几个主流的应用服务器产品的w e b 服务支持,深入分析当前的w e b j 务技术标准和服务组合技术,形成了一系列分析文档; - 参与讨论并确定了钱塘应用服务器服务流平台的技术路线和整体架构, 并将项目分解为:钱塘w e bs e r v i c e ,服务注册,服务流程设计,服务流 程执行引擎等几大主要模块; 参与定义了服务流程描述语言s f d l ; 一详细描述了服务流程设计的系统需求,设计了服务流程设计器的系统架 构和功能模型,并最终在e c l i p s e 插件平台上实现了流程设计器,包括服 务查询器,流程定义器,流程验证仿真器,流程描述语言生成器: 1 2 - 详细描述了服务流程执行引擎的数据库定义,参与设计执行引擎的架构 和功能模型,参与引擎的测试; _ 通过一个具体的基于语义的服务流程案例,对钱塘应用服务器的服务组 合平台进行了功能测试、基本的性能测试、系统测试,形成下一阶段的工 作目标。 1 4 文章结构 本文内容共分七章,包括:第章“绪论”,第二至六章为主要内容,第七 章是“总结与展望”。 第一章绪论 介绍本论文的研究背景、意义和主要内容,同时对w e b l 臣务技术、服务组合 技术以及j 2 e e 应用服务器技术的发展历程、现状做简单的介绍。 第二章j t a n g f lo w s 研发基础 本章中重点介绍了j t a n g f l o w s 研发所依赖的两个项目:j t a n g f l o w 工作流系 统:f j t a n gw e b 服务基础架构。j t a n g f l o w 为j t a n g f l o w _ s 的研发提供了技术积累, 后者继承了前者的设计思想;j t a n gw e b 服务技术为j t a n g f l o w s 提供了基本的底 层服务支持。 第三章j t a n g f l o w s 系统设计 本章中首先对j t a n g f l o w s 系统的体系结构进行了整体性的描述,并对各核 心模块进行简单的介绍,使得读者对j t a n g f l o w s 系统有一个全面的了解。随后 并对其中涉及到的关键技术进行了分析和比较,使得读者能够进一步加深对 j t a n g f l o w s 平台的理解。最后,总结出j t a n g f l o w s 平台的四大特点。 第四章流程设计子系统实现 本章首先对j t a n g f l o w - s 的流程设计子系统( j t a n g f l o w sd e s i g n e r ) 的体 系结构进行了整体性的描述,并对该子系统的关键技术s f d l 服务流模块进行了 重点的介绍。然后,按子系统的模块结构分别进行了详细介绍,使得读者对 j t a n g f l o w sd e s i g n e r 子系统有一个细致的了解。 第五章基于p e t r i 网的服务流程验证 本章主要介绍了j t a n g f l o w sd e s i g n e r 的验证仿真模块的具体实现。首先阐 述了服务流程验证的基本概念,同时对比了传统 丁作系统中的流程验证技术;然 后介绍了p e t r i 网作为验证仿真工具的理论依据和基础,以及p e t r i 网理论在服务 流程验证和仿真中的应用,并通过具体实例表现p e t r i 网在服务流程中的应用; 最后详细给出了j t a n g f l o w s 中s f d l ) 务流程模型转换成p e t r i 网模型的算法,以 及j y a n g f l o w sd e s i g n e r 所使用的流程验证算法。 第六章流程引擎子系统实现 本章首先对j t a n g f l o w s 的流程引擎子系统的体系结构进行了整体性的描 述;然后重点介绍了引擎数据库的设计。为了更加清晰的描述该子系统,本章按 予系统的模块结构分别进行了详细介绍,使得读者对) _ t a n g f l o w se n g i n e 子系 统有一个细致的了解。 第七章总结与展望 对论文的工作进行回顾、总结,并对后续工作进行了展望。 1 5 本章小结 本章是一个综述性的章节,力求使读者对服务组合和服务流程设计的研究背 景、研究意义和研究内容有个大致的了解。同时对服务组合的发展历程、现状和 其在应用服务器中的地位进行简单的描述。最后给出文章的主要内容和章节安 排。 第二章j t a n g f l o w s 研发基础 j t a n g f t o w s 系统的研发依赖于j t a n g 的两个项目:j t a n g f l o w 工作流系统 和j t a n gw e b 服务技术。j t a n g f l o w 为j t a n g f l o w s 的研发提供了技术积累,后 者继承了前者的工作流管理系统的设计思想:j t a n gw e b 服务技术为j t a n g f l o w s 提供了基本的底层服务支持,支持将e j b 和s e r v l e t 组件封装成w e b 服务运行在 j t a n g 应用服务器中。 2 1j t a n g f i o w 工作流系统 2 1 1 工作流技术 工作流( w o r k f l o w ) 是为提高工作效率而产生的,它通过先进的电子通讯和 网络技术,使得企业中并行任务的执行过程线性化。从用户使用的角度来看,工 作流就相当于将特定的任务发送给用户,用户可以使用相应的应用工具进行表单 处理和数据存储,按要求执行完任务之后,将执行结果传递给下一个用户,下一 个用户再按照要求执行任务。如此反复下去,便形成了工作流程,简称为“工作 流”。1 。 工作流管理系统( w o r k f l o w m a n a g e m e n ts y s t e m ,简称w f m s ) 是一种能定义、 创建和管理工作流执行的系统,它是一套完整的中间件。主要包含以下3 种功能: _ 流程建模功能,即完成工作流过程和相关活动的定义和描述; _ 流程执行控制功能,即执行工作流过程,完成活动调度、任务分发和流 程流转; 人机交互功能,即在各种活动执行过程中实现用户与应用工具之间的数 据交互。 对于软件应用开发商,工作流系统提供了一个开发者可以迅速、便捷的建立 基于协同工作和业务流程的应用系统的平台。开发者可以从繁重的流程流转、任 务分配、数据获取的应用开发中解脱,而专注于独立的支持可重用的应用模块的 开发。 2 1 2j t a n g f l o w 系统简介 t a n g f l o w 工作流管理系统即面向上层应用系统的通用服务中的流程控制服 务,运行于基础中间件平台之上,是一个稳定、高效、支持开放式标准的集流程 定义、流程执行和流程龉控等功能于一体的流程管理工具,满足电子商务、电子 政务等领域得流程管理需求。j t a n g f o w 工作流管理系统是在w f m c 的工作流参 考模型的基础上进行开发的,系统可以分为系统建模工具、工作流运行平台两个 部分。 系统建模工具是提供给应用系统开发者,让其定义流程,定义组织结构和登 记所开发的页面应用的工具,包括流程定义工具,组织结构定义工具和应用管理 工具。这些工具都是运行于客户端的w i n d o w s 程序。 应用管理工具 工作流系统调用的外部应用的集中注册的图形化工具,应用系统的开发 者通过它,将其所开发的页面的相关信息,如虚拟路径,输入输出参数等登记到 工作流系统中,在随后定义的流程中,就可以使用这些页面。 组织结构定义工具 工作流系统涉及的人员、组织和角色的集中管理的图形化工具。应用系 统的开发者通过它,为系统中的人员和组织结构建模。建立的组织结构模型包括 人员,部门和角色。流程的任务分配,任务获取和权限管理等工作就是根据这里 的组织结构模型进行的。 流程定义工具 流程定义工具包括一个图形化的流程定义工具和一个编译器。应用系统 的开发者通过流程定义工具可以设计其所需要的流程,并且把通过应用管理工具 登记的页面和通过组织结构定义工具定义的人员,角色等加入到定义的流程中, 形成一个完整的流程描述。在流程定义完成后,可以通过流程定义工具将流程信 息自动转化为x p d l 语言文本。然后,就可以使用编译器将x p d l 语言文本解析, 把相关信息写入数据库。( 这一部分是否可以考虑,保留组织结构引入的概念, 这样组织结构器可以让用户自己配置,只需要修改引入的接口即可,但需要考虑 到同步的机制) 】6 流程运行平台用以在系统运行时,支持流程的执行,主要作用有保证流程正 常流转,分派任务,提供接h i e 用户获取任务等。流程运行平台可以分为工作流 引擎、工作流接口,工作流任务管理器、工作流监视器。 工作流引擎 工作流引擎是在后台运行的个j a v a 程序,主要负责流程的正常流转。主 要的作用有启动和结束活动,检查流程是否超期等。这个程序直接操作数据库, 和工作流接口以及应用系统没有直接的联系,而系统开发者和使用者也都不需要 做和其相关的工作。 工作流接口 工作流接口是为丌发应用程序所提供的e j b 形式的编程接口( 目前我们也将 一些重要接口以d l l 形式给出) ,通过这些接口开发者可以开发一个工作流应用 平台或者支持工作流的应用页面。在工作流本地接口中最主要的是工作流应用编 程接口,这令接口主要实现了w f 淝提出的礴a 鄙接口2 ,接口3 和部分的接口5 的功能,提供了任务管理,应用调用,流程的监视和管理等功能。而组织管理接 口和通知提示接口则是两个辅助接口。组织管理接口用于实现用户管理操作和角 色管理操作,而通知提示接口则是管理工作流系统发给各个用户的通知和提示信 息。在工作流接口的基础上,开发者就可以开发基于工作流的应用系统,这个系 统一般是用j s p 和s e r v e r e t 开发的,可以调用以e j b 形式提供的工作流本地接 口。应用系统不属于工作流管理系统,但和工作流管理系统有密切的关系。一般 来说,这样的应用系统也可以分为两部分。一部分是工作流应用平台,这个部分, 通过调用工作流本地接口使得用户可以执行一系列对工作流管理系统的操作,如 启动流程,获取活动,监视和管理流程等,是应用系统的使用者和工作流管理系 统之问的连接部分。另一部分则是基于流程的具体应用页面,这样的页面基本上 不需要直接调用工作流接口,而只需和工作流应用平台进行数据交换即可。 工作流任务管理器 工作流任务管理器是工作流用户与工作流系统的交互工具。通过该工具,工 作流用户获得自己的工作流任务,并且在该工具中执行任务、提交任务,获取系 统信息等等。 工作流监视器 工作流监视器是供工作流高级用户对: 作流的执行情况进行监控。该工具可 以对流程定义、流程实例、活动实例、任务、流程数据等进行跟踪查看。 2 1 3j t a n g f i o w 体系架构 图2 - 1 工作流系统示意图 2 1 4j t a n g f l o w 系统功能特点 j t a n g f l o w 工作流管理系统提供如下几个方面的功能: 流程流转 系统可以运行比较复杂的流程。在系统中,一个流程由若干个活动组成。执 行时,按指定的顺序执行这些活动。各活动之间由连线相连表示其顺序,各活动 间可以任意连线;同时,可以指定某个活动同时或分别发出多条连线指向不同的 活动。通过这种方法,可以实现活动的顺序、分支和循环执行。同时,可以在一 个活动结束后同时启动多个下一步活动,也可以规定必须在多个前趋活动完成 后,再启动新的活动。活动的流转可以由连线的转移条件确定,也可以在前面某 个活动完成后,由该活动的执行者进行选择。 任务分配策略 如何将各流程中活动分配给用户是工作流系统要解决的重要问题。在该系统 中,一般是定义时将一个活动指定给一个特定的角色。在执行时,一旦这个活动 的任务生成,该角色的用户就都可以看到这个任务,由其中某个用户来完成。有 时不同的流程实例要求用户不同,如要求某个流程只在某部门内部执行,这时可 以在相关活动的用户选择的地方加上部门限制。此外,还可以通过条件表达式指 定执行用户的特殊属性,可以规定多个活动必须由同一个用户执行。甚至运行在 流程运行过程中,由某一个活动的执行用户指定其后面活动的执行者。 流程的启动、监控、查询和结束通知 系统提供了监控和查询流程的接口。每一个流程都可以为其设定启动者、查 询者、监控者和结束通知者;拥有启动权限的用户可以启动一个流程;拥有查询 权限的用户可以查看流程的执行情况;而拥有监控权限的用户则可以删除流程实 例,将任务转发给新用户等;而结束通知者在流程结束时会接到流程结束的通知。 应用集成功能 目前,该系统现支持w e b 应用,这些应用可以是独立于系统,不使用编程接 口的应用。这些应用与流程数据之间的数据交换是靠流程定义时设定的数据映射 来完成的。这样就可以开发一些和系统联系较少,比较独立的应用。同时,对于 与系统联系较紧的应用也可以直接使用系统的编程接口,实现一些比较复杂的功 能。 子流功能 这里的子流分为同步子流和异步子流两种。同步子流指的是在子流启动后, 直到子流结束,父流程才执行下一步活动。一般用于将较大的、复杂的流程分成 各个模块。而异步子流指的是在子流启动后,父流程就开始执行下一步活动。这 种子流一般是与父流程相关的流程。如在一个发文流程中可以启动一个收文流 程,但不必等到收文流程结束,发文流程就可以做后面的工作。 活动的超时提醒功能 流程中的活动可以设定工作期限。工作期限既可以在定义时设定为某个确定 的值,也可以在流程实例运行过程中由某个用户动态设定。当活动超过期限还未 完成时系统会通知流程监控者作出相应处理。 用户代理功能 系统提供功能允许用户将自己的工作转交给其他用户完成。如用户外出时, 就可以让他认为合适的人完成某些他需要参与的流程。这罩的代理可以让用户为 其在不同流程中以不同角色参与的任务代理给别人,还可以让用户选择是否将自 己在该流程中的其它权限如跟踪、监控等也交给代理人。一旦代理设置并生效后, 被代理流程中用户任务会同时出现在代理人的任务列表中,同时代理人也获得了 交给他的其它代理权限。 消息功能 系统将一些流程相关的信息以消息的形式发给用户。消息主要包括流程结 束、流程超期、任务超期、新任务到达、活动缺少无执行者等不同类别。系统也 支持用户自定义消息。自定义的消息可以在流程定义时设定,也可以在应用中通 过编程接口发出。编程接口中提供了读写消息的接口,可以在此基础上开发相应 的应用。系统还提供了独立的消息接收程序,可以使用专门的消息接收客户端来 接收消息。 2 2j t a n gw e b s e r v i c e 基础架构 2 2 1j 2 e e w e b s e r v i c e 在j 2 e e i 4 规范正式推出之前,一些基于j 2 e e e j b 的中间件平台产品中就已 经有了对w e b 服务的基本支持,如通过简单地内置一些传输处理程序和一个s o a p 引擎,就可以
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美甲护理理论知识培训课件
- 2025四川攀枝花华润水电开发有限公司社会招聘、校园招聘8人考试参考试题及答案解析
- 2025年甘肃中医药大学敦煌医学与转化教育部重点实验室科研助理招聘考试参考试题及答案解析
- 2025浙江衢州市江山市自然资源和规划局招聘编外驾驶员2人备考练习试题及答案解析
- 2025年海南省人民政府办公厅所属事业单位公开招聘工作人员4人备考练习试题及答案解析
- 2025云南省大理州检察机关招聘聘用制书记员(18人)备考练习题库及答案解析
- 2025曲靖市事业单位定向招聘驻曲部队未就业随军家属(8人)考试参考试题及答案解析
- 2025年公安警察、辅警招聘知识考试题(附含答案)
- 2025河北省公安厅公开招聘警务辅助岗位劳务派遣人员450名考试备考试题及答案解析
- 速写动漫人物课件
- 驾驶员安全教育培训考试试卷含答案
- 2025广东河源市暨南大学附属第五医院急需紧缺人员招聘117人(第二批)笔试参考题库附答案解析
- 2025江苏航空产业集团有限责任公司人才招聘备考试题及答案解析
- 污水处理站运行记录台账范本
- 2025年消毒供应室业务学习考试试题(附答案)
- 无人机地下结构探测技术-洞察及研究
- 校园基孔肯雅热防控措施课件
- 图像特征提取讲解
- 多彩贵州地方课程课件
- 劳技自制收纳盒课件
- 《管理学基础与实务》 课件全套 曾宪达 第1-11章 管理与管理者- 管理创新
评论
0/150
提交评论