APP下载

基于Web Service的工作流管理系统的研究与实现

2010-09-05王晓萍柯敏毅

湖北工业职业技术学院学报 2010年4期
关键词:实例分布式管理系统

王晓萍,柯敏毅

(湖北工业大学计算机工程学院,湖北武汉430068)

基于Web Service的工作流管理系统的研究与实现

王晓萍,柯敏毅

(湖北工业大学计算机工程学院,湖北武汉430068)

针对目前的工作流管理系统存在的问题,本文在传统工作流管理系统和目前流行的Web服务技术的基础上,提出了基于Web服务的工作流体系模型,该模型在传统工作流体系模型的基础上,引入Web服务。Web服务在Internet分布式环境下的动态发布、发现和集成应用的特点,能够很好地解决工作流程缺乏柔性,相互之间无法互操作,不能及时响应变化等缺点,提高了工作流程执行效率和服务质量,大大提高工作流系统的应用范围,促进了工作流管理系统的发展。

Web服务;工作流;工作流管理体系;工作流引擎

0 引言

工作流(workflow)是企业业务流程的计算机实现,工作流管理系统是企业实行过程管理的最重要的和最有力的支持工具[1]。工作流管理软件主要完成企业业务过程的自动化执行与监控,将通过建模得到的企业业务过程模型进行实例化并且投入运行,对运行的过程模型中的活动情况进行调度、管理和监控。然而,目前的工作流管理系统存在以下问题:静态约束柔性差,缺乏对Internet分布式环境的支持,可重用性和互操作性差,等等。针对这些问题,本文在深入研究传统工作流管理系统和目前流行的Web服务技术的基础上,提出了基于Web服务的工作流体系模型,该模型在传统工作流体系模型的基础上,引入Web服务。利用Web Service在Internet分布式环境下的特点,能够很好地解决工作流程缺乏柔性,相互之间无法互操作,不能及时响应变化等缺点,提高了工作流程执行效率和服务质量,大大提高工作流系统的应用范围,有效地促进了工作流管理系统的发展。

1 Web Service的体系结构

1.1 Web简介

Web又称World Wide Web,它把 Internet上现有的资源全部链接起来,使用户能在Internet上已经建立Web服务器的所有站点提供超文本媒体资源文档。Web能够把包括文字、图形、声音、影像等各种类型的信息紧密集成在一起,不仅提供图形界面的信息快速查询,而且还可以通过同样的图形界面与 Internet的其他服务器对接。Web服务体系由Web服务器、浏览器和通信协议组成,通信协议 HTTP能够传输任何类型的数据对象来满足Web服务器与客户之间多媒体通信的需要[2]。

1.2 Web Service的体系结构

Web Service的体系结构由图1所示:由 Web服务提供者、Web服务请求者、Web服务中介者(即服务注册代理)三个角色参与,由发布、发现、绑定三个动作构建。“发布”是为了让客户知道某个Web服务的存在和相关信息;“发现”是为了找到合适的Web服务;“绑定”则是在提供者与请求者之间建立某种联系。Web服务提供者等待为其他服务和用户提供自己已有的功能;Web服务请求者利用SOAP(Simple Object Access Protocol)协议向Web服务提供者发送服务请求;Web服务中介者充当管理者的角色,它把一个Web服务请求者与合适的Web服务提供者联系在一起,一般是UDDI(Universal Description and Integration)。

图1 Web服务体系结构

2 基于Web服务的工作流管理体系

图2 基于Web服务的工作流管理系统

图2是基于Web服务的工作流系统框架[3],整个系统在原有的工作流系统基础上,增加了Web服务的支撑平台。现在将各部分的功能作简单介绍:

(1)过程定义工具:为工作流客户提供的实际业务过程进行分析和建模的方法,原型采用UML活动图作为描述流程模型的手段;

(2)工作流执行服务:借助工作流模型,激活并解释过程定义的部分或者全部内容,同外部的应用程序交互,完成工作流过程实例的创建、执行与管理,为工作流提供运行环境;

(3)被调用的 Web Service:对应用数据进行处理,用于过程实例在运行过程中调用;

(4)工作流管理工具:对过程实例的状态进行监控与管理。

该系统与传统的工作流系统的区别是:首先,工作流管理的一切活动是发布于 Internet上的 Web Service,独立于平台和实现语言;其次,原型系统同业务应用之间采用基于HTTP和XML的SOAP协议,通信过程没有任何请求代理;另外,工作流本身又可以定义为一个新的Web Service被挂入到一个新的业务流程中。由此可见,原型系统同传统的工作流系统相比具有更高的灵活性和可扩展性,对于合作双方而言,不仅交互方式更加灵活,而且交易成本也降低了许多。

3 系统的实现方案

基于系统的总体结构设计,采用了Java、XML (extensible Markup Language)技术,基于J2EE平台,设计实现了面向Web Service技术的分布式工作流系统。下面简单介绍工作流引擎的实现机制。

工作流引擎又称“工作流机”,是工作流管理系统的核心部分[4],主要提供了对于工作流定义的解析以及流程流转的支持。工作流定义文件描述了业务的交互逻辑,工作流引擎通过解析此工作流定义文件按照业务的交互逻辑进行业务的流转,通常通过参考某种模型来进行设计,通过调度算法来进行流程的流转(流程的启动、终止、挂起、恢复等),通过各种环节调度算法(SPLIT、AND、OR等)来实现对于环节的流转(环节的合并、分叉、选择、条件性的选择等)。

通常工作流引擎采用的核心调度算法主要有FSM以及PetriNet两种,基于调度算法来完成流程的流转。

工作流引擎的一个重要功能就是控制过程实例和活动实例的状态转换。工作流管理联盟的参考模型中为过程实例的运行状态和活动实例的状态进行了定义,并给出了状态转换的条件。图3描述了活动实例各个状态之间的转换。

图3 活动实例状态转换图

4 结束语

本文提出基于Internet平台的工作流管理系统,利用Web Service技术实现工作流管理原型系统的设计和实现,解决了传统工作流缺乏柔性,相互之间无法互操作,不能及时响应变化等特点,提高了工作流程执行效率和服务质量,提高了工作流系统的应用范围,有效地促进工作流管理系统的发展空间。

[1]范玉顺,吴 澄.基于工作流的CIMS应用集成支持系统研究[J].计算机工程与应用,2000(2):6-11.

[2]蒋 理.计算机信息及网络安全实用教程[M].北京:中国水利水电出版社,2009:94.

[3]孙荣胜,徐天鹏.Web Service与CORBA、DCOM三种分布式计算机模型的互操作性[J].江南大学学报(自然科学版),2003(1):28-31.

[4]史美林,杨光信,向 勇,等.一个基于Web的工作流管理系统[J].兰州大学学报(自然科学学版),1999(8):76-80.

Research and Implementation of Web Service Based Workflow Management System

WANG Xiao-Ping,KE Min-Yi
(School of Computer Science,Hubei University of Technology,Wuhan 430068,China)

In view of the current workflow management system problems,this paper,based on the traditional workflow management system and web service based technology,proposed web-service-based workflow system model;and based on this model,web service is introduced.The strong points of web service under the internet environment,such as dynamic distribution,discovery and integration,can better solve the problems,such as the lack of workflow flexibility,the lack of interoperability and the lack of timely response,thus has improved workflow efficiency and quality and has greatly enhanced the scope of the workflow system,and promoted the development of workflow management system.

web service;workflow;management system

book=89,ebook=133

TP393

A

1008-4738(2010)04-0089-02

2010-06-02

王晓萍(1971-),女,十堰职业技术学院机械系讲师,湖北工业大学计算机工程学院在读硕士。

猜你喜欢

实例分布式管理系统
基于James的院内邮件管理系统的实现
基于LED联动显示的违停管理系统
海盾压载水管理系统
基于DDS的分布式三维协同仿真研究
完形填空Ⅱ
完形填空Ⅰ
基于RFID的仓储管理系统实现
西门子 分布式I/O Simatic ET 200AL