- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
元数据驱动的工作流引技巧
元数据驱动的工作流引技巧
引言
工作流管理联盟WFMC(Workflow Management Coalition)对于工作流的定义[1]:工作流是一类能够完全或者部分自动执行的经营过程,根据一系列过程规则,文档、信息或任务能够在不同的执行者之间传递、执行。工作流引擎为流程的执行提供软件执行的环境,是流程成功执行的关键。一个设计良好、方便使用、可扩展的工作流引擎对工作流流程来说至关重要,它直接关系到流程是否能够正确执行以及流程的执行效率。工作流技术出现之后得到了广泛的应用,但是目前的应用多是针对比较固定、简单的业务流程,随着企业的发展,要求随时能对业务流程进行修改和扩展[2],迫切需要工作流具有一定的柔性,这种柔性主要体现在以下三个方面:1)业务流程建模阶段:能够快速、简单、准确地表达各种复杂程度的业务流程,最大程度降低对于业务人员的专业要求;2)业务流程执行阶段:能够实现业务流程的动态修改和扩展,不会对当前的整体系统造成重大影响;3)业务流程维护阶段:能够提供比较友好的流程维护环境,实现流程的分析和优化,为企业业务流程优化升级提供技术基础。为了实现这种柔性,本文基于元数据及工作流的相关技术,提出了一种元数据驱动的工作流引擎技术,实现业务流程的灵活性和可扩展性,并对工作流引擎进行了设计和实现,最后对于元数据驱动的工作流引擎进行了总结与展望。
1元数据驱动的工作流1.1 元数据的含义元数据是对数据资源的描述,英文名称是“Metadata”,元数据是信息共享和交换的基础和前提,用于描述数据集的内容、质量、表示方式、空间参考、管理方式以及数据集的其他特征。它可以是单个文件、多个文件或者数据库数据。元数据一般可以分为描述性元数据、结构性元数据、存取控制性元数据以及管理性元数据等。元数据在工作流中得到了广泛的应用,在程序中并不直接被处理,而是通过值的改变对程序产生影响,也即在程序的具体执行过程中,元数据往往是起到“解释”的作用[3],开发人员可以通过改变元数据的值来改变系统的运行方式。这样,不同的元数据值可以让同一段程序具有不同的运行结果。通过元数据可以使得程序具有一定的柔性,随着元数据值的变化而使程序流转到不同的流程。1.2工作流的驱动方式工作流的驱动方式主要有两种:一种是控制驱动,另外一种是数据驱动。基于控制驱动工作流的控制信息由流程设计者在流程设计时建立,活动的执行按照控制信息依次向下执行,活动与活动之间具有较强的依赖性,所以基于控制驱动的工作流缺乏柔性,当企业的业务流程发生变更时需要重新建立工作流,会对整体产生较大的影响。与控制驱动的工作流不同,基于数据驱动的工作流并不预先确定流程,而是在活动的执行过程中通过改变活动的相关数据而自动建立业务流程,这种数据驱动的工作流,活动与活动之间是解耦的,可以实现工作流的灵活配置。本文基于元数据的相关概念,建立了元数据驱动的工作流。
2工作流建模方法工作流的建模方式主要有四种:数据流程图、IDEF方法、角色活动图、事件驱动过程链以及Petri网络等,在工作流建模过程中,活动以及活动之间的关系是需要重点考虑的内容,本文基于面向对象的相关概念,将活动抽象为“对象”,通过元数据建立活动对象的结构,并通过元数据的值的改变,推动活动对象依次向下执行,活动对象的具体结构如图1所示。图1活动对象示意图该活动对象以XML的形式进行描述:各个对象的属性含义如下所示:活动名称Name:活动的名称,在同一个业务流程中可以有同样的名称,例如采购过程中的审批活动,可能存在多次审批;活动编号Code:活动对象的唯一确定编号,用以区分各种不同的活动对象;输入参数In_Par:活动的输入参数,用以触发是否可以执行该活动;执行条件Condition:活动对象的执行条件,通过输入参数的值判断活动对象是否满足执行条件;输出参数Out_Par:活动对象执行完毕之后的输出参数,用以向下流转;开始时间BeTime:活动对象开始执行的时间;结束时间EndTime:活动对象结束执行的时间。元数据驱动的工作流建模过程无须指定具体的流程,而是将业务流程分解成一个个活动对象,活动对象之间通过输入、输出参数以及执行条件进行动态的绑定,具体的执行流程如图2所示。
首先对于流程进行初始化,由外界条件对于活动对象A进行触发,活动对象A接到触发条件,然后结合自身的执行条件判断对象A是否可以执行,如果可以执行,则执行活动对象A的相关动作并输出参数,并将参数发布到工作流引擎中,工作流引擎扫描引擎池中的活动对象,看是否具有符合活动对象的输入参数是活动对象A的输出参数,如果活动对象B符合,则通过活动对象B的执行条件判断活动对象是否可以执行,通过此种机制依次向下执行活动,最终活动对象C的输出参数为End,活
- 软件下载与安装、电脑疑难问题解决、office软件处理 + 关注
-
实名认证服务提供商
专注于电脑软件的下载与安装,各种疑难问题的解决,office办公软件的咨询,文档格式转换,音视频下载等等,欢迎各位咨询!
文档评论(0)