收藏 分销(赏)

面向Web服务的业务流程管理系统的研究和实现模板.doc

上传人:精*** 文档编号:4691892 上传时间:2024-10-10 格式:DOC 页数:117 大小:1.17MB
下载 相关 举报
面向Web服务的业务流程管理系统的研究和实现模板.doc_第1页
第1页 / 共117页
面向Web服务的业务流程管理系统的研究和实现模板.doc_第2页
第2页 / 共117页
面向Web服务的业务流程管理系统的研究和实现模板.doc_第3页
第3页 / 共117页
面向Web服务的业务流程管理系统的研究和实现模板.doc_第4页
第4页 / 共117页
面向Web服务的业务流程管理系统的研究和实现模板.doc_第5页
第5页 / 共117页
点击查看更多>>
资源描述

1、面向Web服务的业务流程管理系统的研究和实现104资料内容仅供参考,如有不当或者侵权,请联系本人改正或者删除。分类号_                                      密级_U D C _硕士学位论文面向Web服务的业务流程管理系统的研究和实现学位申请人: 程    炜学科专业: 通信与信息系统指导教师: 杨宗凯 教授论文答辩日期   5月10日 &n

2、bsp;  学位授予日期                答辩委员会主席 刘文予              评阅人  刘文予 谭运猛      A Thesis Submitted in Partial Fulfillment of the Requirementsfor the Degree of Master of EngineeringResearch and Implementation o

3、f Web Service-Oriented Business Process Management SystemCandidate:    Cheng WeiMajor:       Communication & Information SystemSupervisor:   Prof. Yang ZongkaiHuanghzong University of Science & technologyWuhan, 430074, P.R.ChinaMay  摘要近几年, 随着电子商务的深入发展, 对企业信

4、息化程度提出了更高的要求, 如何利用现代网络技术来帮助企业管理各类业务流程, 实现业务流程自动化已成为企业关注的热点。所谓业务流程( Business Process, BP) , 是指为了在一定时期内达到特定的商业目标, 而按照各种商业规则连接起来的业务功能的集合。这些业务功能是抽象定义的: 业务功能的具体实现受限于业务功能运行所需的可用资源。业务功能的构成由商业目标决定。业务流程中商业规则的目的是为了业务管理决策的实现。而业务流程管理( Business Process Management, BPM) 是理解、 系统化、 自动化以及改进公司业务运作方式的一门艺术, 它能够看作是文档工作流

5、和企业应用集成的紧密结合。BPM的技术实现被称为业务流程管理系统( Business Process Management System, BPMS) 。BPMS能够为管理者提供定义、 变更、 实施业务流程的方法, 并保证灵活性和一致性, 从而不必考虑业务流程实现的细节问题。本文经过对企业应用系统集成框架、 企业业务流程管理及自动化方面关键技术的研究, 将BPM技术与Web服务技术相结合, 提出了一种面向Web服务的应用集成框架, 并在此基础上提出了一套基于J2EE的BizPro业务流程管理系统的实现方案, 同时详细论述了BizPro系统中的核心组件流程引擎的具体实现方法, 并以论文审批流程为

6、例, 介绍了业务流程在实际中部署实施的完整过程。BizPro系统能够为企业提供一个面向业务流程的应用集成平台, 帮助企业在多个应用系统之间实现业务流程的定制、 管理、 执行、 监控和优化, 缩短实施或变更业务流程的开发周期, 并经过对应用系统的无缝集成实现业务流程处理的自动化。关键词: 业务流程管理系统  Web服务  企业应用集成  流程引擎  业务流程建模语言  简单对象访问协议  可扩展标识语言AbstractRecently, with the rapid development of E-Business, the issu

7、es that how to help the enterprises manage their various business processes and implement the business process automation with modern network technologies have become the focus of attention.By a business process (BP), we mean an interconnected set of business functions, constrained by various busine

8、ss rules in order to achieve a specific set of business goals pertaining to a specific enterprise over time. The business functions are defined abstractly: The specific implementation of a business function depends on the resources available at the time it must be executed. What constitutes a busine

9、ss function is determined by objectives of the enterprise. The assertion of business rules in a BP are nothing more than the implementation of business management decisions. Business Process Management (BPM) is the art of understanding, codifying, automating, and improving the way a company does bus

10、iness. BPM can also be seen as a marriage between document workflow and Enterprise Application Integration (EAI). The technological implementation of BPM is called a Business Process Management System (BPMS). A BPMS provides managers with the means for defining, changing, and implementing (via integ

11、ration services) a businesss processes with agility and consistency, irrespective of the details of their implementation.Based on the research on the EAI architecture and the key technologies for BP Management and Automation , this paper, combining the BPM and Web Services, provide a new Web-Service

12、-Oriented EAI architecture, and a solution for a J2EE-based BPMS, BizPro. Furthermore, it also discussed the implementation of the Process Engine, the core component in BizPro, and introduced the implementation and deployment of a BP in practice by a sample. The BPMS provide an BP-Oriented applicati

13、on integration platform for enterprises and help them define, manage, execute, monitor and improve the BP crossing various application systems. Using this BPMS, enterprises can reduce the time and cost of implementing or changing the BP, and automate the BP by the seamless integration among applicat

14、ion systems.Keyword: BPMS; Web Service; EAI; Process Engine; BPML; SOAP; XML缩略语BP - Business Process业务流程BPEL4WS - Business Process Execution Language for Web ServicesWeb服务的业务流程执行语言BPM - Business Process Management业务流程管理BPML - Business Process Modeling Language业务流程建模语言BPMS - Business Process Manageme

15、nt System业务流程管理系统CORBA - Common Object Request Broker Architecture公共对象请求代理架构DCOM - Distributed Component Object Model分布式组件对象模型EAI - Enterprise Application Integration企业应用集成EJB - Enterprise JavaBean企业JavaBeanERP - Enterprise Resource Planning企业资源计划J2EE - Java 2 Platform, Enterprise EditionJava 2企业平台J

16、MS - Java Message ServiceJava消息服务JSP - Java Server PagesJava服务器页面MOM - Message Oriented Middleware消息中间件RMI - Remote Method Invocation远程方法调用SOAP - Simple Object Access Protocol简单对象访问协议UDDI - Universal Discovery, Description, Integration服务发布与发现机制WSCI - Web Service Choreography InterfaceWeb服务协作接口WSFL -

17、 Web Service Flow LanguageWeb服务流程语言WSDL - Web Service Description LanguageWeb服务描述言语XML - eXtensible Markup Language可扩展置标语言XPDL - XML Process Definition LanguageXML流程定义语言目录摘要IAbstractII1  绪论1.1课题背景(1)1.2业务流程管理系统概述(3)1.3业务流程管理技术发展概况(4)1.4本文内容与组织(7)2  BizPro业务流程管理系统的分析与设计2.1系统概述(8)2.2业务流程的建模(

18、10)2.3系统框架设计(15)2.4系统功能模块(21)2.5系统特点(26)2.6本章小结(26)3  基于J2EE的流程引擎的设计与实现3.1流程引擎的分析(28)3.2流程引擎的设计与实现(29)3.3流程引擎的部署(43)3.4本章小结(44)4  BizPro业务流程管理系统的应用4.1论文审批流程(46)4.2现有系统(47)4.3实现步骤(48)4.4流程测试(51)4.5本章小结(54)5  结束语5.1研究成果(55)5.2发展方向(55)致谢(57)参考文献(58)附录一( 攻读硕士期间发表论文目录) (62)附录二( 论文审批流程描述文档)

19、 (63)1  绪论企业内部流程整合和B2B电子商务是当前电子商务领域两大热点。近年来, 业务流程管理系统( Business Process Management System, BPMS) , 作为企业业务流程整合及B2B商务自动化处理的重要组成部分, 正得到企业界越来越高的重视。另一方面, Web服务作为一种基于Internet的面向电子商务的分布式计算体系结构, 结合了面向组件方法和Web技术的优势, 当前已经得到了IT领域的普遍认可和支持, 并正在成为B2B( Business to Business) 电子商务的重要途径。本章从总体上介绍了BPMS的相关概念及其与Web服

20、务技术相互融合的发展趋势, 说明了本课题的背景、 来源及研究意义。1.1 课题背景本课题来源于国家十五科技攻关”电子商务与现代物流技术研究开发及示范工程”项目中的”基于行业中间件的电子商务系统集成技术研究与应用”课题。该课题在中间件技术、 三层结构技术、 XML( eXtensible Markup Language) 技术及相关工业标准的基础上, 从电子商务系统集成框架、 底层支撑服务、 商务流程集成与企业间商务协同、 电子商务应用平台等多个角度出发, 对电子商务系统集成中涉及到的关键核心技术, 进行系统深入的研究, 开发一组符合中国国情、 具有自主知识版权、 支持主流电子商务标准、 面向企

21、业业务流程的电子商务系统集成平台, 并在具有电信、 流通领域特点的区域、 省市推广应用, 实施电子商务系统集成的示范工程。电子商务要想健康发展, 除了外部环境的诸多因素外, 最关键的还是企业自身所要解决的许多问题, 这些问题包括: 随着企业的发展, 企业内部数据和信息不断积累, 但与此同时, 存储和维护这些资源的应用系统之间却相互隔离, 形成”信息孤岛”。 有许多企业的内部系统根本无法集成, 即使能够集成, 也往往是采取硬编码方式, 将整合的业务流程固化到集成应用系统中, 因此, 一个简单业务流程的实现也可能会消耗大量的人力、 物力, 同时也会为系统本身带来许多潜在的不稳定因素, 这种硬编码的

22、集成方式往往是系统刚刚部署完成, 企业的业务需求就已经发生变化。 每个应用系统的数据描述格式均不相同, 很难在企业间甚至是在企业内进行便捷的信息交换, 因此如今的企业往往是依靠大量的人工操作来完成不同应用系统间的连接与协作。 企业如果要适应如今瞬息万变的市场变化, 就必须能够灵活调整自己的业务流程和商业规则, 可是在集成的系统环境中, 没有强大技术支持是不可能达到这个目标的, 一个简单业务的变更, 需要技术人员和商务人员一次又一次的交流和沟通, 浪费了大量的资源和宝贵的时间。 企业如今拥有庞大规模的用户群及合作伙伴, 如何能够让任何人在任何时间、 任何地方使用任何设备都能够获得她满意的服务将是

23、企业最关心的问题。因此电子商务系统集成方案首先要解决的是企业内应用集成的问题, 只有企业内应用系统具有良好的互操作性和统一的流程管理模式, 才能为企业的用户和商业伙伴提供高效的服务; 可是如前所述, 由于企业内各应用系统间的数据格式差别很大, 因此解决应用集成首先就要解决传统数据转换的问题; 其次是实现企业应用系统间的互操作, 然后要解决的问题就是建立统一的流程管理模式, 使业务分析人员能够直接经过设计业务流程来协调各应用系统的协作关系, 从而构造出新的、 完整的服务。在此基础之上, 如果企业具备向外提供服务的能力, 就使企业间B2B的信息交换成为可能, 那么围绕着企业如何注册、 发布、 检索

24、、 发现服务并成功实现企业B2B信息交换的问题, 将是企业间应用集成的核心环节。在本课题中, 我们主要是针对BPMS的体系结构和其中涉及的主要技术问题进行系统深入的研究, 包括基于Web服务的应用集成、 业务流程建模及其实现、 业务流程自动化、 XML数据转换等电子商务领域的共性技术, 自主开发一套面向Web服务的业务流程管理系统, 为企业提供一个面向业务流程的应用集成平台, 帮助企业在多个应用系统之间实现业务流程的定制、 管理、 执行、 监控和优化, 缩短实施或变更业务流程的开发周期, 并经过对应用系统的无缝集成实现业务流程处理的自动化。1.2 业务流程管理系统概述在讨论或定义什么是业务流程

25、管理或业务流程管理系统之前, 我们先来讨论一下”业务流程( Business Process, BP) ”这一术语。所谓的业务流程, 是指为了在一定时期内达到特定的商业目标, 而按照各种商业规则连接起来的业务功能集合1。这些业务功能是抽象定义的: 业务功能的具体实现受限于业务功能运行所必须的可用资源。业务功能的构成由目标决定, 其中的任何操作、 活动、 任务都是为实现目标而设。而设置商业规则的目的是为了业务管理决策的实现。在业务流程中, 商业规则或者表现为限制, 或者表现为条件分支, 或者表现为实施并行、 串行等流程中的节点。这些商业规则对于某一企业来说是独特的, 而且在某一确定的时间点上也是

26、如此。因此, 正如行业观察家所定义的那样, 业务流程的管理是理解、 系统化、 自动化, 以及改进公司业务运作方式的一门艺术2, 3。业务流程管理能够被看作是文档工作流和企业应用集成的紧密结合。传统的工作流应用是以人为导向, 即每个人都得面对她或她必须完成、 批准或执行的电子文档。而在一个企业应用集成环境中, 应用程序彼此连接并在无人干涉的情况下进行合作。例如, 应用程序利用消息系统来交换信息。业务流程管理是如下两种技术的结合: 以人为导向的工作流和应用集成的结合。业务流程管理并不是什么新事物, 但管理和改进业务流程执行技术的使用却是最近的事情。业务流程管理的技术实现被称为业务流程管理系统。理想

27、的BPMS技术能够向那些希望管理业务流程和业务活动的企业提供如下帮助1: 能够迅速使业务调整经过业务概念和业务目标等形式付诸实施, 而且这些实施几乎能够是实时进行。( 商业灵活性和完整性) 能够从业务角度对这些调整进行分析和评价。( 商业度量和分析) 能够按照商业目标, 保证具体业务的顺利实施, 进而经过优化, 降低成本, 提高效率。( 保证业务运营) 将商业目标与资源管理分离, 只不过知识和流程的引用是按照目标来统筹安排的。( 流程和数据分离) 与DBMS能够帮助企业管理业务数据一样, BPMS能够有效地帮助企业管理业务流程。尽管DBMS和BPMS技术都需要专业人员来帮助企业设计组织结构等信

28、息, 并给予管理和维护, 可是能够降低对用户技术上的要求。用户仅仅需要知道这些工具如何使用, 各种元素的含义以及各种元素之间的关系即可。如果没有DBMS, 特别是关系型DBMS, 用户需要了解大量管理如何存储、 访问和数据的管理知识, 因而不能集中精力于查询、 更新等, 也就无法有效地管理业务信息。如果没有BPMS, 用户则需要深入了解实施业务流程所需要的工具和设备, 因而无法集中于商业目标的实现以及业务流程管理本身。如果是这样, 那么网络时代对业务灵活性的要求是无法满足的, 也是用户无法接受的。从业务的角度来看, 使用商业目标、 业务功能、 限制等来代替流程所需资源信息对业务流程进行描述是非

29、常重要的。在业务流程设计过程中, 需要业务经理与实施业务流程管理所需资源的管理人员之间经常进行交流, 以保证业务流程管理的顺利实施。综上, BPMS提供了一种方法来获得并有效实施企业管理者所做出的决策。管理决策的实现依赖于业务流程。BPMS技术能够为管理者提供定义、 变更、 实施业务流程的方法, 并保证灵活性和一致性, 从而不必考虑更多的细节问题, 如管理者责任范围、 客户、 产品、 服务、 提供产品和服务所需的资源等。不论是对于B2B、 B2C企业, 还是集成类企业, 这就是BPMS所体现出的核心价值。1.3 业务流程管理技术发展概况在20世纪60年代到70年代期间, 企业应用大多是用来替代

30、重复性劳动的一些简单设计。当时并没有考虑到企业数据的集成, 惟一的目标就是用计算机代替一些孤立的、 体力性质的工作环节。到了20世纪80年代, 有些公司开始意识到应用集成的价值和必要性。这是一个巨大挑战, 很多公司的技术人员都试图在企业系统整体概念的指导下对已经存在的应用进行重新设计, 以便让它们集成在一起。然而这种努力收效甚微。传统的企业由于缺少不同系统相互集成的技术, 导致很多关键的信息被封闭在相互独立的系统中, 部门间重复着冗余的工作, 这直接导致了企业工作效率的降低和运营成本的上升。20世纪90年代, ERP( Enterprise Resource Planning) 应用开始流行的

31、时候, 同时也要求它们能够支持已经存在的应用和数据, 这就必须实现企业应用集成( Enterprise Application Integration, EAI) 。企业迫切需要一种方法, 让它们少写程序, 无须花巨大的费用, 就能够将各种已有的应用系统和新的系统集成起来。推动EAI市场的因素包括基于流程的业务处理、 Web应用集成以及供应链管理等等。随着企业各种应用的迅速增加以及更多地把自己的业务转向电子商务, EAI方案对企业的重要性也日益显现。越来越多的企业开始采用EAI解决方案将企业内部的应用软件与外部客户和供应商的应用软件进行链接, 实现数据流和业务运作的自动化, 从而达到业务的实时

32、与快速。EAI与电子商务的结合为企业快速实现业务的自动化提供了可靠的保证, 呈现在我们面前的将是一个同时具有数据自动化和业务流程高度可塑的企业管理框架, 从而进一步加快了端到端的电子商务应用集成。从集成的深度上来说, EAI能够分为三个层次: ( 1) 数据的集成, ( 2) 应用系统的集成, ( 3) 业务流程的集成46, 因此一个完整的EAI集成框架是在全面的集成平台基础上实现业务流程的分析和管理, 可见BPM已经成为下一代企业整合平台软件的基础。当前许多EAI的解决方案利用消息中间件( Message Oriented MiddleWare,  MOM) 技术实现应用系统的整合

33、, MOM利用消息通信服务提供了可扩展的整合能力, 适合用于管理大业务量以及地理分布广泛的基础设施。但这一功能是需要一定代价的, MOM的实施和维护非常昂贵, 同时各种MOM的实现技术( 例如通信协议、 数据格式) 各不兼容, 又为企业带来了新的集成问题, 更重要的是MOM本身缺少面向业务流程的整合能力。因此随着90年代后期XML语言和Web服务的出现, 将Web服务与BPM技术相结合, 构建一个面向业务流程的应用集成平台已经成为EAI发展的趋势, 得到了IT界的共识。另外, 最近几年, 在新应用系统的开发中广泛运用了三层体系架构, 三层结构的重要性已被认可。在三层环境中, 划分了三个逻辑层次

34、: 表示逻辑层、 业务逻辑层和数据访问逻辑层。该划分就每个层在不同设备上运行来说是完整的。例如基于浏览器应用的实例, 由HTML 驱动的浏览器负责表示层, 业务逻辑封装在应用服务器中, 从应用服务器上访问的数据能够由远程机器上的数据库服务器来管理。在三层环境基础上, 下一步就是面向业务流程管理。现在, 从业务逻辑层中提取封装在业务逻辑层中的业务逻辑和商业规则, 而且在基于工作流的环境中被表示, 形象地阐述业务流程不同步骤。在每个节点, 商业规则用于选择下一个节点和执行的业务逻辑。结果, 商业规则也就变得更加明确、 可见和快速可变了。这使得公司对市场的变化能够做出更加迅速的反应。因此, 如图1-

35、1所示, 企业内的应用系统也由原来一个个彼此孤立的系统发展为构筑在基于面向流程的框架平台上的应用系统7, 8: 1.4 本文内容与组织本文经过对企业应用系统集成框架、 企业商务流程管理及自动化方面关键技术的研究, 将BPM技术与Web服务技术相结合, 提出了一种面向Web服务、 面向业务流程的应用集成框架, 并在此基础上提出了一套基于J2EE的BizPro业务流程管理系统的实现方案, 同时详细论述了BizPro系统中的核心组件流程引擎的具体实现, 并以论文审批流程为例, 介绍了业务流程在实际中部署实施的完整过程。本文共分五章, 内容安排如下: 第一章, 首先简要概述了本课题的项目背景, 然后介

36、绍了业务流程管理系统的基本概念和业务流程管理技术的发展概况。第二章, 首先分析了业务流程管理系统的需求, 简要介绍了BizPro系统中业务流程模型的主要组成部分, 然后对整个系统的设计思想、 总体框架, 以及系统模块的划分做了详细的阐述, 最后对我们BizPro系统的特点进行了简要的总结。第三章, 主要阐述了BizPro系统中业务流程引擎的设计、 实现, 从引擎的功能定义、 设计思想、 系统结构到流程实例和活动生命周期的分析、 事务管理和异常控制机制、 XML数据映射的实现、 引擎数据库的设计、 一直到引擎的部署情况都一一做了详细的介绍。第四章, 以一个论文审批流程为例, 介绍了业务流程管理系

37、统在实际应用中的实施步骤, 并给出了流程描述文档的样例, 以及流程测试样例的运行结果。第五章, 总结了本文的研究成果与贡献, 并简要论述了BizPro系统需要继续改进和完善的方面。2  BizPro业务流程管理系统的分析与设计2.1 系统概述BPMS旨在帮助企业从战略上, 管理和提高动态业务流程效率。这正是”业务管理”的本质所在。因此, 一个BPMS系统需要达到以下目标1, 2, 9:   规范企业业务流程;  迅速实现商业规则和商业目标的改变, BPMS必须提供实现改变的必要技术并确保业务经理能够对正在改变的业务状况作出迅速的反应; 在流程执行过程中的每一个步骤

38、中, 合理调度业务功能以及完成这些功能所需要的资源;   按照商业度量, 定时管理和监控某些业务流程 给予商业度量, 动态调整业务流程和流程实例以进行优化; 测量流程改变的影响的能力, 能够做出迅速改变固然是重要的, 但BPMS 必须提供现在比改变以前更好的业务流程信息, 该信息可能包括更迅速的执行或更便捷的操作; 以前后一致的方式定义、 改变和实现业务流程, 有能力近于实时地改变业务流程的实现是有价值的, 但没有什么比企业的完整性更重要; 这些目标决定了一个BPMS系统需要完成以下核心任务1012: 流程设计允许业务分析师在没有任何编程技术的条件下设计流程是BPM 解决方案许诺的主

39、要功能之一, 因此需要提供一个界面友好、 操作简单的业务流程定制工具, 例如采用鼠标拖拉( drag-and-drop) 技术的图形用户界面( GUIs) , 使得业务使用者能够随心所欲的设计、 修改流程。全面的流程设计模型将支持所有的流程资源( 包括信息、 应用系统、 业务人员) 、 子流程、 并行流程、 创立业务规则以及异常处理、 事务控制等。 流程执行对于已经定义好的业务流程, BMPS需要提供一个流程执行的环境, 也就是流程引擎。流程引擎是BPMS的核心部件, 没有了流程引擎, BPMS最多就是一个计划工具。引擎的目的是解析、 执行业务流程, 并按照逻辑的流程定义来实时地管理业务功能的

40、启动和终止。它不对流程的形式和业务功能的细节作出规定, 也不对业务活动的实现施加影响, 可是建议它们使用通用的标准和良好的设计。 流程监控BPM的主要目标之一就是实现流程的不断完善、 优化, 因此流程监控的重要性显而易见, 因此BMPS需要提供一个管理控制工具来监控流程实例的执行情况, 跟踪业务活动的执行状态, 以及在什么时间, 由什么角色或什么系统, 使用什么资源完成, 因此管理控制工具提供的信息是理解业务流程并找到改进方法的依据, 同时还能够经过该工具来干预流程引擎中流程实例的执行。从以上的分析, 我们能够看出这些核心任务决定了BPMS系统应当具有以下特征1, 13: 业务流程定义和具体实

41、施可能非常复杂, 不易理解而且经常改变;   业务功能的实现能够是人工的、 自动的或者两者兼有的, 时间限制跨度很大; 流程实例的执行路径往往取决于业务功能的内部逻辑和其最终状态, 数据流和控制流的分离更利于优化。 监控重点是按照战略目标对业务流程效率做出分析和评价( 需要关于时间、 方法、 效果、 成本等方面的数据信息) ; 管理重点是对于出现的商业机会, 在业务流程上进行战略优化。( 这需要流程实例的调整、 风险分析和管理) ;   业务流程的运行以及有效地为业务流程配置资源只是一个战术意义上的事情; 业务功能的质量和成本( 包括时间和资源) 比该功能是否完成对于流程决

42、策有更大的影响; 考察业务流程是否完整一般不包括实施过程, 因为前向业务功能序列和异常过程处理本身就能保证完整和确定的商业智能特性; 2.2 业务流程的建模业务流程的基本结构是一些相关的活动的集合, 它们之间有着逻辑的和数据的依赖关系, 同时还包括与活动相关的数据以及活动参与者等14。当前许多组织和企业都提出自己的基于XML的业务流程描述语言, 例如BPMI组织提出的BPML( Business Process Modeling Language) ; WFMC提出的XPDL( XML Process Definition Language) ; IBM与Microsoft联合提出的BPEL4

43、WS( Business Process Execution Language for Web Services) , 它是由IBM公司的WSFL( Web Service Flow Language) 与Microsoft公司的XLANG的合并而成; 以及BEA、 Intalio、 SAP和Sun四家公司联合推出的WSCI( Web Service Choreography Interface) 等等。可是对于这些流程描述语言的功能和局限性当前还缺少系统的分析与评价1517, 它们各自都有支持的组织和企业, 尚未形成统一的规范。考虑到BPMI组织是由众多IT企业组成的非盈利性国际组织, 它的

44、成员包括Action、 BEA、 HP、 IBM、 SAP、 Sun、 Sybase等等, 因而BPML语言也得到了众多企业的支持, 因此我们在BPML语言的基础上定义了描述业务流程模型的基本对象以及基于XML的业务流程描述语言, 该流程描述语言在运行时由BizPro系统解释成为一组内部对象模型来管理流程的运行。由于篇幅所限, 下面只给出了业务流程模型中基本对象的简要介绍18: 2.2.1 活动业务流程实际上是由多个活动以及活动间、 活动与参与者之间传递的数据流组成的。在此我们将活动分为三种类型: 简单活动、 复杂活动、 流程活动。1、 简单活动( Simple Activity) 是用来表示

45、对于信息、 任务、 数据或货物的产生和处理。它同时表示操作或动作, 或者通信失败异常。简单活动包括与环境的交互, 一般表示为表单格式的数据交换或者与参与者( Participant) 的原子级别的信息交换。简单活动仅仅处理通信或者操作的失败, 同时可能需要定义时间约束( time constraints) 以及补偿活动( compensating activities) 。简单活动包括: consume: 等待一个来自于特定的参与者的消息, 并将该消息或该消息的某一部分作为流程数据保存 empty: 不作任何处理的活动, 用来表示一个在流程管理系统范围之外发生的活动, 如企业管理人员召开会议等

46、等 exception: 在过程中引发一个异常, 或者将异常消息传递给参与者 operation: 定义一个原子操作, 如调用一个Web服务, 或业务人员手工处理一项任务 produce: 从流程数据中产生一个消息并将其传递给特定的参与者2、 复杂活动( Complex Activity) 用于建立一个控制流( a flow of control) 的模型, 这个控制流可能是顺序的( serial) 、 并行的( parallel) 或者条件执行的( conditional) 。复杂活动建立的控制流模型包括: 顺序活动模型( sequence) : 所有活动顺序执行, 最后一个活动一旦完成,

47、控制流结束 并行活动模型( all) : 活动并行执行, 由多个控制流组成, 当所有的子控制流结束时, 控制流结束 条件分支活动模型( switch) : 零个或多个活动会被执行, 由规则的结果来决定, 当所有的活动都已经完成或者没有活动需要执行时, 控制流结束 遍历活动模型( foreach) : 根据一组取值来顺序执行一系列活动, 当超出这一组取值的范围, 而且最后一个子活动已经完成时, 控制流结束3、 流程活动( Process Activity) 用于管理流程数据、 挂起和结束流程、 重复执行活动或状态( 后者用于实现有条件和无条件循环) , 它仅仅影响流程本身, 不与任何参与者交互,

48、 因此不需要考虑异常控制和时间限制等问题。流程活动包括: complete: 使流程立即结束。能够作为sequence活动的最后一个活动, 或在switch活动中出现一次 repeat: 重复执行父活动, 可作为sequence活动的最后一个活动或在switch活动中出现一次 assign: 执行流程数据之间的赋值, 即实现XML数据映像 release: 释放不再使用的流程数据2.2.2 活动参与者活动定义了业务流程需要完成的任务以及执行的顺序, 可是活动的执行需要具体的参与者来完成。一个活动的参与者是那些与流程交互的实体。参与者能够经过消息与流程互相通信。在此我们将参与者分为以下两类: Web服务, 企业后台应用系统以Web服务的形式参与流程活动的执行 业务人员, 包括企业内部员工和企业外部合作伙伴或客户2.2.3 消息和流程数据流程和参与者之间的交互都是经过消息交换来实现的。消息交换是电子商务协议的基础, 在我们定义的业务流程模型中使用了基于消息的模型, 流程和所有参与者之间都是经过XML消息传输来实现通信的, 因此业务流程需要定义参与者与流程之间消息流动的方式, 以及每条消息中传输的内容和格式, 每个消息在流程中都有唯一的名称可供识别。消息定义了业务流程的中数据类所包含的信息

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签
资源标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服