论文部分内容阅读
南水北调工程是优化我国水资源配置,解决北方地区严重缺水的一项战略性基础设施工程,也是迄今为止世界上最大的水利工程。南水北调工程的工程多样性、项目建设的集群性、管理开放性、区域差异性等特点决定了“南水北调工程项目管理系统”(Project Management System of South-north Water Diversion Project,SNWDPMS)建设的复杂性。审批监管流程管理是“南水北调工程项目管理系统”的重要功能之一。项目的立项、初步设计、投资计划、进度控制等都牵扯到大量的审批监管流程。审批涉及的单位既有发改委、水利部的各司,也有省直辖市级的南水北调办公室,虽然很多审批单位的电子政务平台上已经实现了审批流程的管理,但各单位电子政务平台上的审批流程存在标准化程度差、系统异构、系统的集成性不理想等诸多问题。按照软件复用的原则,系统设计的初衷是基于最大限度整合利用各单位已实现的审批流程系统来实现整个系统的审批流程。本文深入研究了工程项目管理技术、工作流技术、Web Service技术,将这些技术引入到“南水北调工程项目管理系统”中。工作流技术规范了项目管理的流程,提高了系统的柔性,使应用能够快速适应业务流程的变化,为按照流程进行应用的集成提供了理论支持。Web Service技术提供了一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统,可以解决系统异构性的问题。当前的工作流管理系统不能直接支持Web Service技术,在实际开发过程中往往需要大量的硬编码去监控Web Service的执行。当工作流程发生改变或Web服务发生变化时,需要软件工程师修改大量的编码去适应新的流程。本文最新提出了Web Service适配器的概念,将核心工作流引擎层与Web Service层分离,并通过该适配器将核心工作流引擎与Web Service联系起来,Web Service适配器负责解析工作流实例所需求的Web Service信息,然后通过这些信息查找所需的Web Service、监控其执行、接受它的执行结果,并将Web Service的执行结果按照特定格式放入工作流流程实例中,工作流流程实例进入下一个任务结点继续运行。本文的另一个贡献是首次给出了“特定名称的流程上下文变量”的定义。“特定名称的流程上下文变量”决定工作流引擎是否需要调用Web Service,避免了为描述Web Service而在工作流描述语言中定义新的标签导致的修改工作流引擎流程解析和运行机制的问题。流程上下文变量被所有成熟的工作流引擎支持,通过检测“特定名称的流程上下文变量”,在不改变工作流描述语言的情况下实现了对Web Service相关信息的描述。通过定义“特定名称的流程上下文变量”,不需要改变核心工作流的内部机制就可以实现已有工作流引擎支持Web Service协作。本文基于JBPM核心工作流引擎进行二次开发,在工作流引擎层面买现了Web Service适配器,将JBPM核心工作流引擎与Web Service适配器整合到一起形成支持Web Service协作的工作流引擎——WSJBPM。最后本文展示了工作流管理系统在“南水北调工程项目管理系统”的初步设计审查流程中的成功应用情况。