您好,欢迎访问三七文档
工作流技术WorkflowOutline工作流技术相关概念工作流引擎工作流产品分类总结Outline工作流技术相关概念工作流引擎工作流产品分类总结工作流(Workflow)工作流就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递文档、信息或者任务。工作流示例工作流示例工作流管理系统(WorkflowManagementSystem,WfMS)工作流管理系统主要功能是通过计算机技术的支持去定义、执行和管理工作流,协调工作流执行过程中工作之间以及群体成员之间的信息交互。工作流需要依靠工作流管理系统来实现。工作流管理系统产品架构工作流管理系统产品结构定义工具:用来定义工作流,它生成工作流定义。在定义时可能会参考组织或角色数据,还会引用外部应用程序的编程接口。工作流执行服务:用来执行工作流,可能包含多个相互独立、并行运转的工作流引擎。它可能会参考组织或角色数据,还会调用外部应用程序,维护工作流控制数据,使用工作流相关数据,生成工作列表。工作流引擎:用来执行单独的流程实例。用户界面:用户操纵工作流列表的界面,可能会调用外部的应用程序。工作流管理系统的主要功能:建造功能:对工作流过程及其组成活动定义和建模;运行控制功能:在运行环境中管理工作流过程,对工作流过程中的活动进行调度;运行交互功能:指在工作流运行中,WfMS与用户(业务工作的参与者或控制者)及外部应用程序工具交互的功能。Outline工作流技术相关概念工作流引擎工作流产品分类总结工作流引擎系统的核心部分是工作流引擎,引擎是驱动流程流动的主要部件,它负责解释工作流流程定义,创建并初始化流程实例,控制流程流动的路径,记录流程运行状态,挂起或唤醒流程,终止正在运行的流程,与其他引擎之间通讯等等工作。WfMC没有针对引擎的实现提供具体的标准,因为对引擎做过多的约束并没有多大的现实意义。一个工作流管理系统可以包含一个或多个引擎,并通过API向外部提供五个方面的功能服务,这些功能分别为:工作流引擎的功能接口1-流程定义的导入导出接口2-同客户端应用程序和工作列表处理程序之间的交互接口3-软件工具和应用程序的调用接口4-不同工作流管理系统之间的协同工作接口5-管理和监视功能工作流引擎的功能接口1-流程定义的导入导出接口2-同客户端应用程序和工作列表处理程序之间的交互接口3-软件工具和应用程序的调用接口4-不同工作流管理系统之间的协同工作接口5-管理和监视功能工作流参考模型流程定义交换接口许多不同厂商提供的工具可以进行工作流流程的分析、建模、描述和归档等工作。这些工具需要识别公共的流程交换格式,以支持在这些不同的产品之间传送工作流程流程定义。接口1便定义了这样的交换格式。此外,接口1还定义了设计环境与运行环境之间交换的规范,以使不同的建模工具产生的流程定义可以输入到不同的工作流产品的运行环境中。工作流元数据模型为了提供一个访问和描述工作流定义的公共方法,需要引入一个工作流元数据模型(meta-dataModel),这个模型确定了流程定义中用到的一般的实体,这些实体都有不同的属性,不同厂商开发的工具可以根据公共的交换形式向工作流运行环境传送这些模型,传送可以通过API实现,也可以通过批量(Batch)传送实现。元模型工作流流程定义工作流流程活动过渡信息(TransitionInformation)工作流参与者组织模型工作流应用程序工作流相关类型工作流相关数据系统和环境数据数据类型和表达式XPDLXMLProcessDefinitionLanguage文档编号:WFMC-TC-1025工作流引擎的功能接口1-流程定义的导入导出接口2-同客户端应用程序和工作列表处理程序之间的交互接口3-软件工具和应用程序的调用接口4-不同工作流管理系统之间的协同工作接口5-管理和监视功能接口2与接口3流程定义的交换在不同的系统之间传递流程定义数据可能需要不同的机制,但在所有的情况下,流程定义数据的表达必须是一致的,这些表达包括一些公共的对象、关系及其属性。工作流管理系统必须提供同用户之间交互的通道,以便用户参与到系统的运行中。接口2主要完成这方面的功能。接口2所提供的功能1、会话的建立和与撤销;2、获取工作流流程定义及状态;3、工作流流程实例的操作,如创建、挂起、终止流程,获取和设置流程属性等;4、工作流活动实例的操作,如获取和设置活动的属性,改变活动的状态等;5、工作列表(worklist)及工作项(workitem)的操作,如获取工作列表,处理工作项等。接口3的功能工作流系统在运行过程中有时需要调用外部应用程序,以完成系统不能完成的工作(比如,发送Email或传真,扫描文件等),或者与其他系统集成到一起。此时可以通过接口3来完成。接口3的功能同接口2的功能大部分是相同的,因此,这两个接口有融合的趋势。接口3主要规定了调用外部应用程序的函数规范,以及外部应用程序返回数据的格式。工作流引擎的功能接口1-流程定义的导入导出接口2-同客户端应用程序和工作列表处理程序之间的交互接口3-软件工具和应用程序的调用接口4-不同工作流管理系统之间的协同工作接口5-管理和监视功能接口4在企业级的工作流系统中,流程往往需要跨越多个服务器或系统,比如应用于跨国公司或大型集团公司的工作流系统经常会有这种的需求,此时就需要服务器或系统之间进行通讯,交换流程控制信息和流程定义等数据,以实现流程跨地域运行。接口4的功能1、创建流程实例;2、获取流程实例状态;3、获取和设置流程实例属性;4、启动或终止流程实例;5、改变流程实例的状态;6、改变流程实例的属性;7、更新流程实例。工作流引擎的功能接口1-流程定义的导入导出接口2-同客户端应用程序和工作列表处理程序之间的交互接口3-软件工具和应用程序的调用接口4-不同工作流管理系统之间的协同工作接口5-管理和监视功能接口5此接口提供给用户管理和监控系统的运行状态、查看系统运行的历史记录的功能。审计数据在系统运行时刻由系统自动记录在数据库或文件中,可通过系统提供的API进行统计和查询,或者通过系统工具导出到系统外部。另外,此接口还要提供统管理与流程控制的功能,如:系统流程数据的备份和恢复,用户管理,流程管理等等。接口5的功能流程实例(ProcessInstance)审计信息:包括创建、启动流程实例和子流程实例的审计数据;流程实例状态变化的审计数据;流程实例属性变化的审计数据;活动实例(ActivityInstance)审计信息:包括活动实例状态变化的审计数据;活动实例属性变化的审计数据;工作项(Workitem)审计信息:包括工作项状态变化的审计数据;工作项分配合重新分配的审计数据;工作项属性变化的审计数据;远程操作审计信息:包括开始和停止会话(Session)的审计数据;远程创建流程实例和远程改变流程实例状态的审计数据;远程获取和设置流程实例属性的审计数据;会话管理的审计数据;流程定义审计信息;扩展的审计信息及专用的审计信息。Outline工作流技术相关概念工作流引擎工作流产品分类总结工作流产品分类分类依据:面向的用户实现的业务过程底层实现技术采用的任务项传递机制根据面向的用户基础的工作流系统。提供引擎、设计器、相关接口等。应用系统的开发商可以基于此类系统开发具有工作流管理功能的应用软件。面向应用的应用级软件系统。应用了工作流技术,包括内置较完整的工作流功能,直接面向最终用户的流程化应用。同时,系统中还往往针对应用需要,集成了其他功能。根据所实现的业务过程1)管理型工作流(administrativeworkflow):在这类工作流中活动可以预定义并且有一套简单的任务协调规则,例如,大学里的课程选修,完成论文后的学位申请等。2)设定型工作流(adhocworkflow):与管理型工作流相似,但一般用来处理异常或发生机会比较小的情况,有时甚至是只出现一次的情况,这与参与的用户有关。3)协作型工作流(collaborativeworkflow):参与者和协作的次数较多。在一个步骤上可能反复发生几次直到得到某种结果,甚至可能返回到前一阶段。4)生产型工作流(productionworkflow):实现重要的业务过程的工作流,特别是与业务组织的功能直接相关的工作流。与管理型工作流相比,生产型工作流一般应用在大规模、复杂的和异构的环境下,整个过程会涉及许多人和不同的组织。根据底层实现技术1)以通讯为中心:以电子邮件为底层的通讯机制。这种类型的工作流管理系统适合于协作型工作流和不确定型工作流,而不适于生产型工作流。2)以文档为中心:基于文档路由,它同外界应用的交互能力有限。许多基于表的管理型工作流可以用以文档为中心的工作流实现。3)以过程为中心:这种工作流系统对应生产型工作流。它们一般建立在数据库之上,有自己专用的通信机制并且提供了同外部进行交互的接口。根据采用的任务项传递机制基于文件的工作流系统。以共享文件的方式来完成任务项传递。这种类型产品开发得最早、发展最成熟、其产品品种较多。代表产品有FileNet的VisualWorkFlo、IBM的FlowMark、InConcert的InConcert。基于消息的工作流系统。通过用户的电子邮件系统来传递文档信息。这种类型的产品一般都提供与一种或多种电子邮件系统的集成接口。代表产品有Novell与FileNet合作开发的Ensemble、JetForm公司的InTempo、Keyfile公司的Keyflow。基于Web的工作流系统。通过来实现任务的协作。这一类产品起步较晚(在95年以后),但是发展迅速,其市场前景十分看好。许多供应商纷纷改进原有产品或开发新产品以增加对Web的支持。代表产品有ActionTechnologies公司的ActionWorksMetro、Ultimus公司的Ultimus。群件与套件系统。虽然这一类产品与上面介绍的三种产品在任务传递方式上有很大程度的重叠,但是在这里却有必要把它们单独划分成一类,因为这一类产品都需要依赖于自己系统的应用基础结构,包括消息传递、目录服务、安全管理、数据库与文档管理服务等,它们本身就构成了一个完整的应用开发环境。代表产品有IBM/Lotus公司的LotusNotes、Microsoft公司的Office与Exchange、Novell公司的GroupWise。Outline工作流技术相关概念工作流引擎工作流产品分类总结工作流管理系统与ERP和普通的企业管理信息系统ERP与普通的企业管理信息系统是事务处理系统,其主要目的是满足企业业务操作功能,提高企业事务处理的效率和水平。从企业整体的业务流程和企业经营目标上看,事务处理系统一般局限于解决某个或者某些领域的问题;事务处理系统的另外一个局限性是它一般局限于解决企业内部的具体操作问题,面向企业内部功能,而不是面向市场和面向客户的系统。工作流管理系统的着眼点是面向市场、面向客户,其目标是在整个企业的业务层提高企业的业务处理水平、强化企业的市场意识、提高对市场的应变能力。工作流技术带来的益处(开发):降低开发风险-通过使用状态和动作这样的术语,业务分析师和开发人员使用同一种语言交谈。这样开发人员就不必将用户需求转化成软件设计了。实现的集中统一-业务流程经常变化,使用工作流系统的最大好处是:业务流程的实现代码,不再是散落在各种各样的系统中。加快应用开发-你的软件不用再关注流程的参与者,开发起来更快,代码更容易维护。工作流技术带来的益处(业务):提高效率-许多流程在自动化过程中会去除一
本文标题:工作流技术
链接地址:https://www.777doc.com/doc-6327373 .html