基于Web服务和WF的工作流管理信息系统应用研究

时间:2022-03-11 09:22:10

基于Web服务和WF的工作流管理信息系统应用研究

摘要:传统的管理信息系统技术应用已经十分广泛,它很好的实现了企业的业务逻辑,满足了单一用户处理单一任务的应用需求,但是对于单用户多任务的需求和企业的业务流程控制却难有一个好的解决方案。该文结合WF技术、Web服务技术,根据企业协同办公需要,给出了一种以工作流为基础的管理信息系统实现的解决方案。

关键词:WF;Web服务;工作流管理信息系统

中图分类号:TP335文献标识码:A文章编号:1009-3044(2010)03-569-02

Application of Workflow MIS Based on Web Services and WF

HUANG Xin-xing, ZHOU Feng-xing

(Engineering Research Center of Metallurgical Automation and Measurement Technology Ministry of Education, Wuhan University of Science and Technology, Wuhan 430081, China)

Abstract:Traditional MIS technology which finely constructed the Business Logic Process and met the demands of single-user and single-task are widely used in their applications, but it can't give a good solution for single-user and multitask and the control of business flows. This paper introduces a method for building an Workflow MIS based on Workflow technology combining with WF technology and Web Services.

Key words: WF; web services; workflow MIS

随着现代计算机及网络通讯技术的发展,企业的信息化建设正在逐步完善,企业对信息管理软件的要求也越来越高。企业的业务都是由不同环节的业务流程组成,用户既希望软件系统能解决独立环节的业务问题,也需要将一项工作分为不同阶段由不同的人来协作完成,即在各自为政的同时达到协同办公。这一需求促使了工作流技术与管理信息系统的结合。该文在分析和研究了基于Web服务的工作流技术后,以WF为工作流引擎,框架作为Web宿主应用的开发平台,提出了一个基于WF的的Web应用架构。

1 基于Web服务的工作流技术

1.1 Web服务

Web Services技术是一种新的面向服务的体系架构,它主要以XML和开放的Web规范技术为基础,采用对象/组件技术、使用标准的Internet协议,封装了业务实现的细节,将与业务相关的应用编程接口到网络上,而网络上的其他用户通过一定的协议就可以调用这些接口来实现自己的业务的一部分,有效地共享了资源,提高了开发效率。

Web服务的核心技术有:1) 可扩展的标记语言(XML)是Web service平台中表示数据的基本格式。除了易于建立和易于分析外,XML主要的优点在于它既是平台无关的,又是厂商无关的。2) 简单对象访问协议(SOAP)提供了标准的RPC方法来调用Web service。3) Web service描述语言(WSDL)是一个基于XML的语言,用于描述Web service及其函数、参数和返回值。

1.2 基于Web服务的工作流模型框架

传统的工作流管理系统的体系结构模型,包括过程定义工具、过程定义、工作流执行服务、工作引擎、工作流控制数据、工作流相关数据、工作表和工作表处理程序、应用程序和应用数据等。图1所示为以Web服务作为底层通信结构的工作里管理系统模型。该系统模型与传统的工作流管理系统模型相比,企业内部所有应用功能都是以Web服务的方式提供,其中工作流过程定义采用了基于XML的过程定义语言,而工作流引擎采用SOAP协议来实现工作流引擎和Web服务之间的交互。

2 WF介绍

WF是微软公司免费提供的Windows应用程序的标准工作流框架。WF提供了实现用户界面的方法,应用程序和服务之间通信的方法。它是可声明、可视化且无限灵活的,其倡导的模型可以清晰地将工作内容和工作时间分隔开来,这种分隔允许改变工作流模型(工作时间),而不会影响到工作热荨K还可将业务逻辑实现为一组独立并且可测试的组件,它们能像构建块一样装配到工作流中。针对 应用程序可以同时为多个同步的用户提供服务的应用环境,WF提供卸载工作流实例的SQL Workflow Persistence Service服务来有效地利用可用的系统内存,同时还提供Manual Workflow Scheduler Service服务以便同步运行工作流以使 Web窗体能够将工作流状态信息返回给用户。

3 系统实现

3.1 开发环境及解决方案

系统的终端用户通过系统提供的统一界面登陆系统。在经过身份验证正确无误后,用户与的Web服务器进行交互性操作。Web服务器在接收到来自外界的操作后,启动WF引擎中相应的业务流程,由WF引擎负责管理业务流程的执行,并可以通过系统内部的Web服务来访问数据库,更新流程运行的状态。

该系统设计为B/S结构,使用、WF、SQL server和为主要开发工具。用户使用浏览器即可进行数据维护、信息浏览、业务流程的处理等。

3.2 系统架构设计

该系统采用了典型的四层结构,将系统分为用户界面层、业务逻辑层、数据访问层、数据库存储(如图2所示)。从浏览器到业务逻辑层,再到数据访问层是逐层调用的关系并将处理结果原路返回。

3.3 在中使用WF工作流

首先,在Application_Start事件中创建WorkflowRuntime实例和添加ManualWorkflowSchedulerService。然后,通过使用StartRuntime方法启动运行时,并将 WorkflowRuntime实例保存到提供的 Application 对象中。 在以后对应用程序Web页的请求中,通过检索这个WorkflowRuntime实例以启动工作流。

using System.Workflow.Runtime;

using System.Workflow.Runtime.Hosting;

void Application_Start(object sender, EventArgs e)

{WorkflowRuntime wfr = new WorkflowRuntime();

ManualWorkflowSchedulerService mwfss = new ManualWorkflowSchedulerService();

wfr.AddService(mwfss );

wfr.StartRuntime();

Application["WorkflowRuntime"] = wfr;}

4 结束语

该文通过引入Web服务技术和工作流技术实现的工作流管理信息系统,具有高度自动化、协作化的优点,在跨平台方面独具优势。可以很好地解决企业办公自动化的要求。

参考文献:

[1] 汤自安.基于Web Services的工作流在SOA中的应用研究[J].电脑开发与应用,2009(8):57-60.

[2] 张迎春.面向大型企业应用的OA子系统研究与实现[J].计算机工程与设计,2009,30(11).

[3] 杨琦伟.人员培训工作流系统的设计与实现[D].武汉:华中科技大学,2006:18-20.

上一篇:全国计算机等级考试(安徽省考区)一级考试备考... 下一篇:基于Visual FoxPro的用户登录窗体设计与实现