第5章工作流核设计与实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章工作流核心设计与实现 正如第二章中介绍的那样,工作流引擎用于创建、管理和执行工作流实 例。它不仅仅需要解释业务流程的定义,根据执行者的需要创建流程实例, 而且更为重要的是为了流程实例的运行进行导航和控制。如何指定活动任务 的转发,是引擎处理的核心内容。本章首先从工作流系统的建模出发设计了 工作流引擎的数据模型,然后基于这个数据模型设计出工作流引擎的核心类, 并且探讨设计核心类所需要考虑的一些相关问题。 5.1工作流系统的建模 5.1.1组织建模 组织模型提供参与工作流执行的资源、人员的信息的定义、维护。在人 工活动中需要指定执行者,每个执行者可隶属于一个部门。部门定义为层次 结构,每一个部门可能有零个或者一个上级部门,每个部门包括若干下级部 门。这样就构成一个层次结构的组织机构。本系统被设计成为按人员分配任 务的工作流系统,每项活动必须指定一个具体的执行者。 这个组织模型是一个非常简单的组织模型,并不是一个强大的组织模型, 一个完备的组织模型应该包括人员、角色和部门。也就是说可以为任务指定 执行者、角色或指定由某个部门来完成。 5.1.2过程建模 过程模型用来定义工作流的过程逻辑,包括组成工作流的所有活动以及 活动之间的依赖关系。它是整个工作流模型的基础与核心,其他模型均为其 提供支持。他包含了描述一个能够由工作流执行服务进行执行的过程的信息。 这些信息包括过程的开始和完成条件、构成过程的活动以及活动间转换的规 则、用户所需要完成的任务、可能被调用的应用、以及工作流执行需要的控 制数据和相关数据的定义。过程定义可能会引用组织模型中的组织结构,角 色人员等信息。 过程模型既然用来定义工作流的过程逻辑,必然通过一总手段将现实过 程逻辑转换成计算机中可进行存取的抽象表示。本文通过流程和活动两个方 面来对过程进行建模。 1.流程(workflow):相当于一个活动的集合。它是对现实过程的一个抽象, 用来表示一个过程逻辑的整体。它一般包含诸如模型名称、描述等一系列基 本属性。 2.活动(Activity):活动相应于企业经营过程中的任务,主要反映完成企业 经营过程需要执行那些功能操作。主要属性有活动名称、活动类型、活动的 执行体等。当工作流运行在分布的环境下时,在活动的属性中还应该包括执 行该活动的工作流引擎的位置。 本文定义了3种活动,分别是:开始活动,中间活动,结束活动。 开始活动,结束活动主要起到一种标记性的作用。由于活动网络本身是 一个可能带有自环的有向图,而有向图是一种非线性的数据模型结构,与线 性结构不同的是,他可能具有多个入口节点(即只有连接弧由该节点发出,而 没有连接弧指向该节点);而且,理论上选取图中的任意节点开始图的遍历都 是被允许的。这就给用户与工作流引擎正确理解与解释流程的开始情况带来 了不便,甚至会发生疏漏与错误。因此,需要引入一类具有特定含义的标志 性节点一开始活动。本文规定:开始活动是一个工作流过程的唯一入口点。一 个流程开始执行时,最先被激活的就是开始活动,它无前驱活动,然后在由 开始活动去激活后继的活动:结束活动是一个工作流过程的唯一出口,它无后 继活动,流程的结束以执行到结束活动为标志。标志节点的引入简化了对流 程开始的定义与流程结束的判断。特别是对于分布式的工作流执行环境,这 种简化将使工作流引擎无需运行多余的判断算法,只需按照模型定以来执行 即可,流程的开始与结束都己经十分清楚了。 中间节点是指需要人参与执行的活动,这样的活动需要对其定义参与者, 在运行期当活动实例开始执行时由工作流引擎将工作分配到参与者的工作列 表中,由客户端应用程序来访问工作列表来决定当前登录人员的待做工作, 当工作完成后在由客户端应用程序来告诉工作流引擎当前活动已经完成并将 结果放入过程数据中。工作流管理系统并不负责此类活动的执行,而是密切 监视活动的状态,并管理由活动产生的工作流相关数据。在企业中,特别是 自动化程度不高的企业或部门中,还大量存在需要有人来完成的活动,因此 工作流系统必须提供对人工型活动的支持,包括定义与管理,特别是管理, 因为对人工型活动实现有效的管理是提高企业运作效率的重要手段。 中间活动是执行具体操作的活动,其活动类型由流程定义工具在操作列 表种选取。中间活动需要指定它的实现功能,以及执行者。 有三种中间节点: 1创建文档活动。 该活动用来创建一个流程的业务数据,可以是请假的申请,发文的通知, 招聘人员的个人信息等,创建的业务数据是流程的主要信息,也是流转到各 个执行者的主要信息。 2审批活动 该活动对当前流程进行审批,执行者根据业务数据来作出判断,决

文档评论(0)

su66498185ci + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档