基于WWF工作流引擎实现.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文档。上传文档
查看更多
基于WWF工作流引擎实现

基于WWF工作流引擎实现   摘 要:自动化的工作流引擎是各种管理信息系统、办公自动化系统的核心,因此众多软件公司都在某种程度上实现了自己的工作流引擎,或者使用开源产品进行二次开发。但是工作流引擎的复杂程度导致这些自行开发的工作流引擎开发及应用困难,成本高。微软WWF产品的发布,为应用系统实现工作流引擎提供了一种廉价、便捷且功能完整的实现。对此进行了论述。??   关键词:工作流引擎;Windows Workflow Foundation;办公自动化??   中图分类号:TP311.1 文献标识码:A 文章编号:1672-7800(2011)10-0049-03?お?   ??   作者简介:李金文(1966-),男,甘肃张家川人,甘肃省博物馆工程师,研究方向为计算机应用。      0 引言 ??    根据工作流管理联盟给出的工作流定义,工作流是一类能够完全或者部分自动执行的经营过程,它根据一系列过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行。工作流技术目前已经在各种信息系统中成为必不可少的核心功能。各软件厂商自行开发了各种工作流引擎的实现,虽然大部分都依照WWFMC标准开发,但还是不够统一;另外由于工作流引擎部分开发难度高,自行开发难度大,给工作流引擎的应用带来了困难。微软最新发布的WWF工作流引擎,不失为一种方便、低成本的工作流引擎实现途径。??   1 WWF和现有工作流产品在应用范围上的区别??   为什么很多人感觉WWF和自己以前接触过的工作流产品大不相同,用起来比较麻烦,主要是因为现有的工作流产品和大多数我们的应用都面向的是企业应用;而WWF的应用范围要广得多,从工业控制、企业应用到商业应用等等,它实现的是所有种类工作流应用的一个子集,比如工业控制中的工作流就不需要企业应用中所必须的组织结构和角色管理等,但它们流程逻辑却可能一样复杂。??    WWF是工作流领域的一个划时代产品,它解决了工作流应用中难度最高的引擎部分,并且可以应用于几乎所有的工作流应用领域。相对引擎而言,构建于WWF之上的应用的设计开发难度大大较低,只需要较少的投入就可以实现很好的工作流产品。??   2 使用WWF技术实现工作流的原因??   2.1 开发工作流引擎的难度太高??    很多人说WWF用起来这么麻烦,还不如自己做呢!笔者想可能是因为这些人还没有遇到复杂的需求,或者对工作流引擎的难度认识还不够吧。笔者见过3家公司开发自己的工作流产品,每家开发的原因都各不相同,其中一家还投入了数百万,但无一例外都没有成功。而WWF成功的背后是什么呢?流程设计器有微软在Visio上十几年的积累,流程文件XAML有微软在XML上十几年的积累,引擎有微软在SharePoint和BizTalk等多个版本的积累,没有这些积累,是做不了一个成功的工作流引擎的。??   2.2 WWF是优秀的工作流引擎??    WWF有很多的特性,但对实际应用看来最重要的是下面两个特性:??    细粒度的流程设计模式:WWF是面向开发者的工作流引擎,它的Activity非常多,虽然每个Activity都只实现最基本的功能,但采用这些Activity设计出的流程可以非常复杂,非常灵活;现有的其他一些工作流产品,既想讨好开发者,又想讨好用户,结果两头都不靠,要么只能实现一些简单的流程,要么对于复杂的流程实现起来非常麻烦。??    状态机和顺序流的分离:状态机是工作流的基础理论,只要流程中有退回操作,就涉及到状态机;我们在画逻辑图的时候可以把整个流程只画到一个图上,如果我们直接实现这个流程图,就会遇到状态的入口问题;而状态机和顺序流的分离很好的解决了状态入口的问题。??   3 WWF企业应用的模式??    上面我们说了WWF仅仅实现了工作流引擎的功能,如果我们直接在上面进行应用的开发,会遇到很多困难,工作量也会非常大。所以我们必须首先实现一个工作流平台层,在这层上才可以方便的进行应用的开发。??    我们将WWF企业应用的模式分为3层,每层完成工作流应用的一部分功能。??      3.1 工作流引擎层??    工作流引擎层解决的是流程驱动的问题,就是下一步做什么?这一层的功能已经由WWF为我们实现了,对于所有类型的流程,这一层都是相同的。??   3.2 工作流平台层??    工作流平台层解决的是角色驱动的问题,就是由谁来做?这一层的功能我们需要自己实现,为什么WWF没有为我们实现呢?①这不是工作流的通用需求,企业应用需要,但工业应用并不需要;②每类企业对角色的驱动的模型是不同的,有的企业角色是一维的,有的企业角色是二维的,没法实现一个完全通用的角色驱动模型。??    工作流平台层是WWF

文档评论(0)

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

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

1亿VIP精品文档

相关文档