基于Web的工作流管理系统的设计与实现

合集下载

基于Web的工作流程系统设计与实现

基于Web的工作流程系统设计与实现

基于Web的工作流程系统设计与实现随着信息技术的不断迭代,Web技术已经在实现智慧城市、企业信息化等领域发挥着越来越重要的作用。

在企业信息化方面,基于Web的工作流程系统是必不可少的一环。

本文将围绕基于Web的工作流程系统的设计与实现进行探讨。

一、需求分析在设计一个基于Web的工作流程系统之前,我们需要先对企业的需求进行分析。

一个优秀的工作流程系统需要满足企业的以下几个需求:1.企业业务流程自动化:无论是办公室管理、财务流程还是客户服务,每个领域都有许多重复性的任务。

利用工作流程系统可以将这些任务自动化执行,大幅度提高工作效率并避免人为操作引起的错误。

2.快速的响应企业的变化:企业在不断的发展中,业务和相关流程也在不断变化,工作流程系统需要快速响应企业的变化,并通过一定的配置来完成符合企业实际需要的流程。

3.可视化的流程管理:企业中需要了解每个流程执行状态的人员很多,工作流程系统需要将所有流程的状态和进度可视化,方便管理和监控。

基于以上需求,一个优秀的基于Web的工作流程系统应当具备以下几个特点:1.可配置性强:流程的配置需要方便且灵活,为用户提供相应的操作界面,同时具备高度可扩展性,方便企业发展后的流程变化和扩充。

2.执行效率高:优秀的工作流程系统不仅工作效率高,执行性能也要优良,不会因为任务量的不断增加而降低服务响应时间。

3.系统安全性高:对于企业来说,系统安全性必须具备。

工作流程系统应该具备多层次的权限机制,防止数据泄露和恶意访问,保证数据和系统的安全性。

二、技术架构设计在确定好需求后,我们需要进一步确定技术架构设计。

一个Web工作流程系统常规分为前台和后台两个模块。

1.前台模块:前台模块主要是给用户提供访问该系统的界面。

前台模块应该注重UI设计,有清晰的分类结构和友好的操作界面,方便用户进行操作。

对于前端开发,可以使用一些主流的MVVM框架(如AngularJS、Vue.js)、JavaScript框架和CSS框架来构建前端界面。

基于Web服务的工作流引擎设计与实现的开题报告

基于Web服务的工作流引擎设计与实现的开题报告

基于Web服务的工作流引擎设计与实现的开题报告一、研究背景和意义随着云计算和大数据技术的发展,人们对于系统的工作流更加重视。

在企业中,工作流引擎已经成为了业务流程自动化的关键技术之一。

传统的工作流引擎通常使用C/S架构,这样存在着许多限制,如安装、配置、升级等问题。

另外,许多应用往往需要与外部系统进行交互,如ERP、CRM系统等,如果使用C/S架构,需要额外的开发,增加了工作量。

同时,工作流引擎的可扩展性和可维护性也是一个很重要的问题。

基于Web服务的工作流引擎相比于传统的工作流引擎有着很大的优势。

它可以通过简单的HTTP协议与外部系统进行交互,易于扩展和维护,同时支持跨平台和跨语言。

因此,基于Web服务的工作流引擎在实际应用中有着很大的潜力和广阔的发展前景。

二、研究内容和目标本课题将研究基于Web服务的工作流引擎,设计并实现一个简单的工作流引擎原型。

主要包括以下内容:1、工作流引擎的架构设计2、工作流引擎的关键技术,如任务调度、状态管理、异常处理等3、Web服务的设计和实现4、工作流引擎与其他系统的集成5、性能优化和安全性设计通过本课题,我们的目标是设计并实现一个基于Web服务的工作流引擎原型,为后续的实际应用奠定基础。

三、研究方法和技术路线1、搜集和分析现有的工作流引擎技术,并比较不同技术的优缺点。

2、设计工作流引擎的架构,并确定所需的技术和组件。

3、使用Java语言和Spring框架实现工作流引擎的核心功能。

4、实现Web服务接口,为其他系统提供接口。

5、集成其他系统,并测试工作流引擎的功能和性能,优化性能和安全性。

四、论文结构安排本论文主要分为以下几个部分:第一章:绪论介绍研究背景和意义,阐述研究内容和目标,以及研究方法和技术路线。

第二章:工作流引擎技术分析搜集和分析现有的工作流引擎技术,比较不同技术的优缺点,为后续设计提供参考。

第三章:工作流引擎架构设计基于分析结果,设计工作流引擎的架构,并确定所需的技术和组件。

基于web服务的工作流管理系统的设计与实现

基于web服务的工作流管理系统的设计与实现

-试白人c内 l 程 一尝朋 品的部 语 库 H育
l过 程定义裹达I式 l l ;
图1 习 同类型过程定义的互换 、
ma a e n g me t y t m a e n r du e n s s e r i t o c d.S r c u e n de i n n il tu t r a d sg p i cp e r
22 工 作 流 机 的 实 现 与 异 常 处 理 机 制 . 221 工作流机 的实现 ..
工作流机主要 负责 实现 解释过程定义 、负责调试流程的运行、 维护工作流控制数据和相 关数据 、维护用户的工作 列表等功能。 执行过程:工作流机 从外 部接口接收发送 过来有关过程控制的 请求 ( 如初始化过程 、活动以及结束 活动获取等),根据不同的请 求类型调用相应 的处理模 块完 成 与 次请求 相关的操作井将结果返 本 回。工作流机的主要逻辑 由过 程、活动 、工 作项构成 。在本系统中 采用了对象的封 装和继承 的方 法,把 它包装为普通的 C #类。如下 是 三 个类 的 定义 : ()u l ls rc x mpe n gr}/工 作流执 行机 1p bi ca sWP o E a lMa a e{ / c 的过程实例的管理类 ; () u l ls 2p bi ca sWAcE a lMa a e { / c t x mpe n g r}/工作流执行机的
o EB s vc nW er ie
W ANG n , Yi g ZHANG Cha , ngRUAN i Jng
-过 襄式 工 ’程 达韶 基 4定 形I l义 l 试 ¨ 于
XE M 作


_试白 嗍内l 程 H 或 一告题 达形式部 过 机 l 过程定义表

面向Web服务的工作流管理系统设计与实现

面向Web服务的工作流管理系统设计与实现

面向Web服务的工作流管理系统设计与实现在当今信息科技高速发展的时代,企业需要快速而高效地处理业务流程,以提高生产效率和客户满意度。

面向 Web 服务的工作流管理系统的设计与实现,成为了许多企业的首要任务。

本文将从需求分析、系统设计、系统实现等方面,探讨如何设计和实现一个面向 Web 服务的工作流管理系统。

一、需求分析针对 Web 服务的工作流管理系统,需求分析是非常重要的一环。

通过与用户的沟通和了解,我们可以确定系统的具体需求和功能。

以下是需求分析的几个主要步骤:1. 业务流程分析:了解企业当前的业务流程,并进行详细的分析和优化,以便构建更高效的管理系统。

2. 用户需求收集:与各级用户进行交流和访谈,深入了解他们对工作流管理系统的期望和需求,包括功能需求和界面需求。

3. 系统功能设计:根据用户需求和业务流程分析的结果,确定系统所需的功能模块和实现方式。

例如,用户管理、角色管理、流程配置、任务管理等。

4. 系统性能要求:根据企业的规模和需求,确定工作流管理系统的性能要求,包括并发处理能力、响应时间等。

5. 安全和权限控制:考虑到系统中可能涉及敏感信息和机密业务,需设计合理的安全机制和权限控制策略,以保障数据的安全性和可靠性。

二、系统设计系统设计是面向 Web 服务的工作流管理系统的核心环节。

根据需求分析的结果,我们需要进行系统设计,包括数据库设计、系统架构设计、任务流程设计等。

以下是系统设计的几个关键点:1. 数据库设计:根据系统功能和需求,设计合理的数据库结构,并确定数据表的关系和字段。

合理的数据库设计将为系统的性能、安全和扩展性提供保障。

2. 系统架构设计:根据业务流程和系统功能,设计合理的系统架构。

可以采用三层架构(表现层、逻辑层、数据层)或分布式架构,以满足系统的可扩展性和性能要求。

3. 流程设计:根据业务流程分析的结果,设计合理的任务流程和状态转换机制。

可以采用流程图、状态图等工具,直观地表达任务流程和状态变化。

基于Web的PDM系统工作流管理模块的设计与实现

基于Web的PDM系统工作流管理模块的设计与实现

第5期(总第138期)2006年10月机械工程与自动化M ECHAN I CAL EN G I N EER I N G & AU TOM A T I ON N o 15O ct 1文章编号:167226413(2006)0520021202基于W eb 的PDM 系统工作流管理模块的设计与实现亓卫峰,侯文君(北京邮电大学自动化学院,北京 100876)摘要:随着W eb 技术的发展,为工作流管理系统的实现提供了一个平台。

首先介绍了PDM 以及工作流的相关概念,简述了工作流的功能和系统的实现原理,然后针对某制造企业设计部门的业务特点,给出了PDM 中工作流模块的设计与实现。

关键词:PDM ;工作流;工作流程管理中图分类号:T P 274∶T P 315 文献标识码:A收稿日期:2006201216;修回日期:2006204220作者简介:亓卫峰(19792),男,山东莱芜人,硕士研究生。

0 引言产品数据管理(P roduct D ata M anagem en t ,简称PDM )始于20世纪80年代初期,PDM 系统的主要作用就是作为各种计算机应用系统的集成框架实现对产品数据的管理,进而达到对整个产品生产过程进行控制的目的。

它主要提供了电子仓库与文档管理、工作流管理、产品结构与配置管理等功能,而工作流管理是PDM 系统的核心功能。

1 工作流程管理介绍工作流的概念起源于生产组织和办公自动化领域。

它是针对日常工作中具有固定程序的活动而提出的一个概念。

提出的目的是通过将工作分解成定义良好的任务、角色,按照一定的程序和过程来执行这些任务并对它们进行监控,以达到提高办事效率、降低生产成本、提高企业生产经营水平和企业竞争力的目标。

[1]但在工作流定义上,目前尚无统一和明确的定义。

W I M C 给出的定义是:工作流是一类能够完全或部分自动执行的经营过程,它根据一系列过程规则、文档、信息或任务能够在不同的执行者之间传递和执行。

基于WebService的工作流系统的设计与实现

基于WebService的工作流系统的设计与实现

工 作流 管理联 盟 ( Wo r k l f o w Ma n a g e m e n t C o a l i t i o n )这样 定义 工作流 的概念 :工作流是 类能够完全 或者部分 自动执行 的经营过程 , 它根据一系列过程规则 、文档 、信息或任务能 够在不 同的执行者之间进行传递或执行 [ 3 1 1 4 ] 。 而在 实际应用 中,工作流 的概念更 加广 泛,可

【 关键 词】工作流 W e b S e r v i c e 引擎 ‘ 船 量级’
架构
以把凡 是由计算机软件系统 ( 工作流管理 系统 ) 控 制其执行 的过程都称为 工作流。工作流管理 系统 ( Wo r k l f o w Ma n a 动化领域 中具有 固定程序或 步骤 的活动提 出的一个概念 ,它可 以将 固定工 作程序 或流程分解为 多个任务和角色 ,这些包 含进 系统的每一个角色按照一定的顺序 、 流程 、 步骤 、规则 或过程 执行分 解好的任务,并对 执
软件开发 ・ S o f t w a r e D e v e l o p me n t
基于 We b S e r v i c e的工作流系统的设计与实现
文/ 王 芳
务可 以仅仅是提供者 ,也可 以仅仅是请求者 , 也可 以既是服务的提供者 又是服务 的请 求者 。
1 . 2 工 作 流 概 述
3 . 2 系统 架构 设 计
当前 , 工作流管理系统在大型流程管理项 目中得到了广泛的应用 ,尤其是采用面向服务 ( S O A) 架构思想构建分布式工作流管理系统 , 逐渐成为工作流技术的发展趋 势。We b服务相 关的一系列 技术 与标准的提 出,例如 S O A P 、 WS D L、UDDI 等,一定程 度上 了促 进工作 流 朝着 服务整合 的方向快速 发展 [ 1 1 1 2 1 。使 用基 于 XML的消息协议 可以直接访 问 We b S e r v i c e ( 服务 ),实现对异构环境 中应用程序的无缝 集 成。 同时 We b服 务 ( S e r v i c e )本 身拥有 复 合 的特点 ,实 际应用 中 We b S e vi r c e 常常 根据 业务需求而需要整合 ,工作流技术恰恰能满足 这 种整 合要 求。基于 we b服 务 ( S e vi r c e )的 工作流系统必将 是下一代工作流系统 的发展方

工作流管理系统Web客户端的设计与实现

工作流管理系统Web客户端的设计与实现

b c me h c aa tr t o e e t gn rfm woklw e o te h rceii f t n x — e ea c sc h i rf ma ae n ss ms ( TMS h W F p ooy e  ̄ld o n g me t y t e  ̄' 1T e MS rttp c e
维普资讯
工作流管理 系统 W e b客户 端的设计与实现
曾 月 范 玉 顺
( 清华 大 学 自动化 系, 北京 10 8 ) 0 0 4

要 工 作 流 技 术 通 过使 用 计 算机 来 置持 垒 业 经 营 过 程 的 运 行 . 井 赛现 了对 盘 业 经 营 过 程 的 管 理 与控 制 随 着
w rf w o k o ma a e n s r i e r vd c n i o s o d srb t d o k n a d n e — me ’ s c r o a in, n i a l n g me t e vc p o i e o d t n fr it ue w r i g n i tr e Ⅱ e o p r t i i o ad t h s
C R A相 鲒 告 . 出 了基 于 w曲 的 过 程 访 问 和控 制 功 能 的 设 计 与 实现 方 法 O B 培 关键 词 工 作 流 工作 流 管 理 系统 c R A we O B b应 用 Jv aa
文 章编 号 1 0 — 3 l ( 0 2 0 一 1 O o 文献 标 识 码 A 0 2 83 一 20 )2 o3 — 4 中 圈分 类 号 T )9 I 3 3
( uo t n D p r e to snh a U i r t, e ig 10 8 ) A t i e at n fT ig u nv sy B in 0 0 4 ma o m ei j

基于web技术的工作流管理系统的设计与实现.doc

基于web技术的工作流管理系统的设计与实现.doc

基于web技术的工作流管理系统的设计与实现1四川大学硕士学位论文题目基于WEB技术的工作流管理系统设计与实现作者刘福顺完成日期2006年4 月培养单位四川大学指导教师唐宁九教授专业计算机软件与理论研究方向软件工程授于学位日期年月日基于WEB技术的工作流管理系统设计与实现计算机软件与理论专业研究生刘福顺指导教师唐宁九工作流是一类能够完全或者部分自动执行的经营过程,它根据一系列过程规则,文档、信息或任务能够在不同的执行者之间进行传递与执行。

工作流管理系统是一个软件系统,它完成工作流的定义和管理,并按照在计算机中预先定义好的工作流逻辑推进工作流实例的执行。

一个完整的工作流管理系统是由工作流执行部件、工作流功能部件和外部应用系统构成的。

工作流执行部件,即工作流引擎,是工作流管理系统的核心。

工作流引擎负责解释过程定义、创建模型实例、调度模型实例任务、推进流程等功能。

一个过程模型就是企业经营过程中业务流程的一个抽象模型,当使用诸如Petri网这样的形式语言来描述一个企业经营过程时,就形成了过程定义。

过程定义被工作流引擎解释转换为能被工作流引擎执行的过程模型,创建运行时模型实例并依据特定的调度算法,例如经典Petri网调度算法,对过程实例中的活动进行调度。

工作流技术在企业中的应用范围主要有两类,一类是在以公文流转为功能主体的办公自动化系统中的应用,另一类则是为企业业务系统提供运行支撑平台的工作流管理系统。

不同的应用对工作流引擎的功能要求也是不同的,作为一个功能完善的工作流引擎,核心调度能力要灵活,同时要能够支持常见的流程模型,例如:固定流程、自由流程以及嵌套流程等。

本文论述的是一个基于WEB技术的工作流管理系统的设计与实现,提出了一种将工作流技术应用于企业的工作流管理系统的通用架构,阐述了经典petri 网调度算法在工作流引擎中的应用与实现,分析并实现了工作流引擎对三种常见的流程模型的支持。

关键词:工作流;工作流管理系统;Petri网;工作流引擎Web-based Workflow Management System Design and ImplementationLiuFushun( Computer Software & Theory )Directed by TangNingjiuWorkflow is the automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedural rules. Workflow management system is a system that defines, creates and manages the execution of workflows through the use of soft ware, running on one or more workflow engines, which is able to interpret the process definition, interact with workflow participants and, where required, invoke the use of IT tools and applications. A whole workflow management system consists of workflow enactment component, workflow function component and external application system. Workflow enactment component, so-called workflow engine, is the kernel of a workflow management system. All functions such as the interpretation of process definition, the instantiation of process model and the schedule of activity are all under the charge of workflow engine. A process model is a pure model of business workflow in enterprise running process. When an enterprise running process is modeled using formal language such as Petri-net, a process model comes into being.The scope of workflow technology application in enterprise involved in two categories, one is OA system with document transition as its main foundation, and another is workflow management system serves as the running platform of enterprise business systems. Different applications require different functions of workflow engine. Being a well-functional workflow engine, itskernel schedule arithmetic should be flexible. At the same time, it should be able to support three kinds of process model such as fixed process, freedom process and nested process.In this paper, we discuss the design and implementation of a web-based workflow management system; give out a common workflow management system structure which is useful when you want to apply workflow technology to enterprise application; expound the application and implementation of classical Petri-net schedule arithmetic in workflow engine; analyze the support of three kinds of process model in workflow engine.Key Words: Workflow; Workflow Management System; Petri-net; Workflow Engine目录1绪论(1)1.1工作流的起源(1)1.2本文结构安排(1)2基本理论(2)2.1工作流(2)2.2工作流参考模型(3)2.3工作流管理系统(6)2.4工作流管理系统架构(8)2.4.1工作流管理系统组成部分(8) 2.4.2工作流管理系统组件说明(9) 2.5 Petri网(10)2.5.1 Petri网的基本元素(10)2.5.1.1库所(11)2.5.1.2变迁(12)2.5.1.3弧(13)2.5.1.4标记(13)2.5.2 Petri网的触发器(14)2.5.3 Petri网的路由(15)2.5.4 Petri网的发散和汇聚(16)3相关工作(18)3.1工作流发展现状(18)3.2工作流研究领域(20)4系统描述(21)4.1系统功能描述(21)4.2系统对外服务(22)5系统设计(24)5.1 工作流管理系统架构(25) 5.1.1业务系统注册服务(25) 5.1.2过程模型定义服务(27) 5.1.3工作流程监控服务(29) 5.1.4通用功能接口服务(29) 5.1.5统一工作平台服务(30) 5.2部件功能解析(30)5.2.1工作流执行服务部件(30) 5.2.2工作流功能服务部件(30) 5.2.3业务系统应用部件(31) 5.3工作流引擎详解(31)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于Web的工作流管理系统的设计与实现崔永圣 2003-5-12华特软件摘要:Internet/Intranet应用的普及和Web技术的发展,为Web工作流管理系统的实现提供了一个理想的平台,而基于Web的工作流管理服务为异地办公及跨企业的合作提供了良好的基础,采用Web技术已成为新一代工作流管理系统的主要特征。

本文研究开发的工作流管理系统原型将Web技术与XML相结合,给出了基于xml的过程定义语言与工作流执行机的设计与实现方法。

关键词:工作流、工作流管理系统、XML,集成、工作流执行机Abstract:The rapid growth of Internet/Intranet usage and development of Web technologies,provides a ideal platform to construct a Web_based workflow management.And the Web_based workflow management service provides condition for distributed working and inter-enterprise corporatin ,and it has become the characteristic of the next-generation workflow management.The WFMS prototype which this paper researched on combines the Web technologies and XML ,and provides a method of designing and implementing xml_based process definition language and workflow engine.keywords:Workflow ,workflow management systems ,XML,Integration、Workflow Engine1、引言工作流的概念起源于生产制造业与办公自动化领域。

工作流是一类能够完全或部分自动执行的经营过程,根据一系列过程规则,文档、信息或任务在不同的执行者之间传递、执行。

工作流的目的是通过将工作分解成定义良好的任务、角色,按照一定的规则和过程来执行这些任务并对它们进行监控,达到提高办事效率、降低生产成本,提高企业生产经营管理水平和企业竞争力,实现现代企业经营过程重组(BRP)、经营过程自动化。

根据工作流系统所采用的任务项传递机制的不同,工作流管理系统主要有三种方式:(1)、基于文件的工作流管理系统——以共享文件的方式来完成任务。

这种类型的产品是产生最早、发展最成熟、最具多样性的,通常包含有Client/Server模式的图像、文档与数据库管理系统。

(2)、基于消息的工作流管理系统——通过用户的电子邮件系统来传递文档信息。

这种产品都实现了一种或多种电子邮件系统的集成。

(3)基于Web的工作流管理系统——随着计算机网络技术的发展和Internet应用的不断普及,Web技术因其界面的一致、简单及与平台的无关性,在其出现之后就得了迅速发展。

同时Internet的发展及企业Intranet的建构为人们提供一个理想的协同工作环境,同时也使基于Web的工作流管理系统成为可能。

Web应用程序开放、跨平台的特性使基于Web的工作管理系统已经成为一种必然的发展趋势。

但目前因为不同的研究者、厂商使用不同的工作流的描述方法,这样就造成了不同的工作流产品之间不能进行互操作,因而在很大程度上阻碍了工作流技术的推广与应用。

为了使工作流管理系统具有的良好的互操作性,本文研究开发了一个基于Web的工作流管理系统,其中工作流过程定义采用了基于XML的过程定义语言。

XML是用来描述文档的组织结构,XML具有简单、自定义的优点,可以实现不同产商之间的工作流产品之间的互操作性,实现异构信息的集成。

本文首先介绍了当前工作流管理系统的一些相关概念,分析了在本系统中的一些关键技术,包括系统的体系结构,工作流模型中的主要实体的XML描述及工作流执行机的设计与实现等。

2、工作流管理系统的介绍基于Web的工作流管理技术是实现企业协同工作环境的一个良好方法,它能方便的与企业内原有的应用、信息集成。

为了实现对业务过程的工作流管理,需要相应的软件系统的支撑。

此种软件系统为工作流管理系统(Workflow Management System,WfMS)。

根据WfMC 的定义,工作流管理系统是“一种在工作流形式化表示的驱动下,通过软件的执行而完成工作流定义、管理及执行的系统”,其主要目标是对业务过程中各活动发生的发后次序及同活动相关的相应人力或信息资源的调用,进行管理而实现业务过程的自动化。

工作流的过程定义是指对业务过程的形式化表示,它定义了过程运行中的活动和所涉及到的各种信息。

这些信息包括过程的开始和完成条件、构成过程的活动以及进行活动间导航的规则、用户所需要完成的任务、可能被调用的应用、工作流机的引用关系以及与工作流数据的定义。

其中活动指的是工作流中的一个逻辑步骤;工作流实例指的是工作流的一次执行过程;工作流机是一个为工作流实例的执行提供运行服务环境的软件或“引擎”,它是工作流执行服务的核心,负责对解释过程定义、控制过程实例的执行、控制工作流中各个活动的执行顺序、并完成与其它工作流机的交互与通讯。

1994年11月,工作流管理联盟发布了工作流管理系统的参考模型(见图1),该模型定义了一个基本的工作流管理系统所需要的6个基本模块,并制定了各模块之间的接口标准。

其基本的模块功能如下:1)过程定义工具:为用户提供一种对实际业务过程进行分析、建模的手段,并生成业务过程的可被计算机处理的形式化描述。

2)工作流执行服务:它借助于一个或多个工作流机,激活并解释过程定义的全部或部分,并同外部的应用程序进行交互,完成工作流过程实例的创建、执行与管理,为工作流程的运行提供一个运行时环境。

3)其他工作流执行服务:在大型的WfMS中,工作流可能需要多个工作流机共同完成,甚至需要其他异质的工作流执行服务来辅助来完成,这涉及到WfMS系统之间的互联。

4)客户应用程序:它给用户提供一种手段,以处理过程实例运行过程中需要人工干预的任务。

每一个这样的任务就被称为一个工作项。

WfMS为每一个用户维护一个工作项列表,它表示当前需要该用户处理的所有任务。

5)被调应用程序:指工作流执行服务在过程实例的运行过程中,调用的、用以对应用数据进行处理的程序。

在过程定义中包含这种应用程序的详细信息,如类型、地址等。

6)管理及监控工具:其功能是对WfMS中过程实例的状态进行监控与管理,如用户管理、角色管理、审计管理、资源控制等。

3、基于Web的工作流管理系统的总体结构体系结构的设计主要遵循如下3条原则:(1)、基于Internet/Intranet分布式计算环境,面向跨部门、跨企业的分布式工作流管理。

(2)、集成已有的各种信息资源,如电子邮件、文档管理、图形浏览、资源管理等,充分发挥这些资源的综合潜力。

(3)、与工作流管理联盟参考模型保持一致,其中过程定义语言采用XML-WPDL (基于XML的过程定义语言),以利于实现不同企业的WfMS系统的互操作。

按照上述原则所设计的Web_WfMS的体系结构如图2所示:整个系统的工作方式如下:(1)、工作流应用建模人员通过Web浏览器将过程及表单定义工具从Web服务器上下载下来,完成应用系统的建模,即实际工作流程的定义。

建模结果以XML-WPDL文档保存在服务器中,并可反复修改。

(2)、客户端用户通过浏览器登录到Web服务器,此时可以启动新的流程、处理其工作项等。

每个工作项都与一个表单对应。

在表单中以各种不同的方式表示需要处理的数据。

用户可以通过客户端所提供的各种工具(如CAD系统、CAPP系统、字处理系统)对这些数据进行处理。

在此过程中可以与数据库系统进行交互,如查询数据库中信息,或将某些应用数据保存到数据库中等。

处理完成之后可将其提交,然后工作流执行机将根据表单中数据生成下一个工作项,并通知相应的用户进行处理,如此直至整个流程的完成。

(3)、管理人员使用工作流管理监控工具对工作流的运行实例、活动实例的状态情况进行监控和管理,如挂起、重启动、终止某个过程实例。

4、基于Web的工作流管理系统的设计原理与实现机制基于Web_WfMS的总体设计,将从工作流模型、工作流执行机、安全权限控制等3个方面讨论本系统的实现机制。

4.1 工作流模型工作流模型是整个工作流系统设计的基础,也是过程定义人员进行系统二次开发的基础,模型描述能力的强弱决定了系统所支持应用范围以及系统的灵活度。

在工作流模型方面,工作流管理联盟定义的过程元模型定义了6个基本实体:过程定义、活动、转换条件、工作流相关数据、角色、需要激活的应用程序。

各种不同的建模工具仅是对工作流模型的一种形式化的描述,为了实现不同的WfMS 的过程定义能相互交互,在本系统中采用了其于XML的过程定义语言对过程建模进行描述(如图3)。

下面将分别介绍XML_WPDL的过程定义、活动和转换条件三种实体的描述。

①过程定义②活动定义③转移条件:4.2 工作流机的实现与异常处理机制4.2.1 工作流机的实现工作流执行服务是工作流管理系统的核心。

工作流执行服务由一个或多个工作流机组成。

工作流机实际上是企业经营过程的任务调度器,在某种程序上还是企业资源的分配器。

在采用工作流管理系统支持经营过程运行的企业中,工作流机可以看成是企业的业务操作系统(BOS)。

工作流机的主要功能是:解释过程定义、负责调试流程的运行、即创建和管理过程实例运行、调度活动的运行并创建要处理的工作项、维护工作流控制数据和相关数据、维护用户的工作列表。

工作流执行机的结构如图4所示:图4 工作流执行服务的结构图其具体的执行过程:工作流机接受从外部接口发送过来有关过程控制的请求(如过程初始化、获取活动以及结束活动等),然后根据不同的请求类型调用相应的处理模块完成与本次请求相关的操作并将结果返回。

事实上可以将工作流机看成一个多线程的并发服务器,它可以对多个外部请求提供并发服务。

对外部请求的处理过程中肯定会涉及到对工作流相关数据的读写和更改操作,同时工作流机还维护着工作流的控制数据,通过工作流控制数据来辨别每个过程或活动实例的状态,并推动着工作流过程的执行。

过程、活动、工作项构成了工作流机的主要逻辑。

在我们的系统中采用了对象的封装和继承的方法,把它包装为普通的C#类。

三个类的定义如下:(1)、public class WEProInstanceManager {} //工作流执行机的过程实例的管理类(2)、public class WEActInstanceManager {} //工作流执行机的活动实例的管理类(3)、public class WEWorkItemManager {} //工作流工作列表管理类4.2.2 工作流机的异常处理工作流的错误包含两种错误,一是流程错误,如活动的执行者不存在,活动的应用程序定义错误等;另一类是系统的错误,如:网络不通,数据库系统异常。

相关文档
最新文档