论文部分内容阅读
在社会需求瞬息万变,信息交流日趋频繁的今天,为了能够适应这种动态环境,大型企业或组织的业务处理需要强有力的管理和控制。应发展需求,工作流管理技术应运而生。工作流管理技术具有良好的可实施性,因为工作流模型的建立方式实现了过程逻辑与应用逻辑的分离,它可以在不修改具体功能模块实现方式的情况下,通过修改过程逻辑(工作流模型)来改进系统性能,实现对经营过程的集成管理。这种方式在企业应用时具有显著的优点:它能够有效地把人、信息和应用工具合理的组织在一起,同时又能够提高软件的重用率,具有实施灵活的特点。工作流管理系统中,工作流引擎根据工作流模型的定义创建过程实例,并调度和监控过程中每个活动的执行,在需要的场合触发软件应用或者完成计算机应用与操作人员的交互,从而实现对过程的有效的管理和监控。最近几年,由于信息技术的飞速发展和广泛应用,在国外,工作流已经成为信息系统和管理系统的热点,学术研究和商业化的产品发展迅速;在国内,也逐渐进入学术和应用领域。本文首先介绍了工作流技术的产生与发展,介绍了工作流的基本概念以及WfMC的工作流管理系统参考模型。随后介绍了目前工作流产品的研究现状,及其缺陷和发展方向。第二章详细介绍了工作流模型、模型的转换、模型的分析和优化,通过优化定义模型,使工作流模型的描述更加准确,进而优化企业经营过程,从而完成企业的经营过程重组。作为本文的设计实现主体部分,第三、四章,在充分研究当前工作流管理软件的基础上,按照工作流管理联盟 (WfMC) 制定的工作流标准,在理解了工作流过程定义的基本概念和体系结构的基础上,研究了图形化的过成定义工具,<WP=68>设计并实现了XML过程定义语言 (XPDL) 的解析过程,定义并实现了元对象库,实现了将过程定义得到的元数据存入元对象库中。元数据由工作流引擎调用、访问,从而来实现对整个工作流的控制。本系统制定了如下的设计目标,按照该目标去实现:面向对象的思想:本系统完全采用面向对象的思想进行规划、设计、实现。将过程定义中的各个元素抽象为一个个对象,元素属性抽象为对象的属性,对元素属性的操作抽象为对象的方法。整个系统划分为多个模块,在模块内部,严格遵守类的低耦合高内聚原则;与其他模块通过接口进行交互。面向企业用户,以简单、直观、容易掌握为前提:在多种不同结构的过程模型中(如活动网络图、Petri网、状态图、语义-行为模型等),活动网络图是可读性最好的一种,对于非专业人员是最直观、最自然的过程表达形式,因此,我们选用活动网络图作为过程模型的描述方式。层次化建模:采用“子工作流”的形式对过程模型进行层次化的划分,使企业在处理复杂的过程时,即能从高层次上把握流程的总体框架,也能细致入微地描述每一步动作,实现对过程的模块化设计。描述能力强:充分考虑实际建模中的各种复杂情况,能够描述各种路由逻辑,在与应用程序或子工作流的交互中正确传递各种类型的参数。本系统的开发采用面向对象的编程语言Java,采用功能强大的开发工具JBuilder,采用Oracle数据库,为了清晰地规划设计思路,我们采用UML的类图为系统建模。本系统分为以下模块:过程模型定义工具:以图形化的界面编辑过程模型,包括组成工作流的所有活动、活动的参与者、执行应用程序、活动之间的变迁等。本文主要介绍基于Jave的图形化工作流编辑器Jawe,他严格遵守WfMC的接口规范,输出一个标准的过程定义文本描述XPDL文件,提供了一个公共的<WP=69>交换格式。XPDL解释程序:以XPDL文件作为输入,进行词法语法解释,将元模型元素如:模型、过程、参与者、应用程序、相关数据、活动、变迁等定义为类包,得到模型定义信息的对象表示。XPDL的引入是为了支持与其它符合WfMC标准的产品交换模型定义的能力。元对象库:将模型定义信息的对象表示送入元对象库,由工作流引擎调用、访问,从而来实现对整个工作流的控制。本文从图形定义工具JAWE到脚本定义语言XPDL,最后将描述工作流过程定义的信息存入元对象库。图形定义工具方便系统应用用户定义工作流过程,直观、简便。脚本定义语言是一个标准、通用的工作流定义语言,完全符合WfMC规范,所有的工作流过程定义工具都可以有自己的内部表示,将内部表示的过程定义转换为以字符流形式输出的XPDL,通过XPDL实现了不同产品间模型交换。通过对XPDL脚本进行解析,将以字符流形式输入的过程定义转换为类包,再根据不同供应商的内部表示,转换为图形表示。将过程定义中的元对象一一映射为元对象库的表,把过程定义的结果存入元对象库。元对象库位于过程定义和工作流引擎之间,工作流引擎调用、访问元对象库的数据,从而实现了对整个工作流的控制。