基于J2EE的轻量级工作流引擎的研究和实现
VIP免费
摘 要
工作流技术的迅速发展满足了构建企业柔性应用系统的需要。融入工作流技
术,企业可以很好地进行业务流程改造与重组,以适应市场的变化与需求。
工作流引擎是工作流管理系统的核心软件组件。本文参考工作流管理联盟
(Workflow Management Coalition,简称 WfMC)制定的规范,根据中小型企业
业务对工作流软件的需求情况和工作流产品现状,本着简单实用的原则,设计开
发了一种面向中小型企业业务应用的轻量级工作流引擎。在系统设计中,将工作
流模型在工作流管理联盟的元模型基础上扩展为四个部分,即过程模型、组织模
型、资源模型以及工作流相关数据,并设计了组织模型、资源模型及基于活动网
络的过程模型;在过程模型设计中,采用了基于 XML 的过程定义语言,使其可
较好地与其他工作流定义相融合;给出了对工作流语法验证和基于图论的结构验
证方法;提出了引擎核心组件的系统结构及引擎的工作机制;引擎建立在 J2EE
三层架构上,采用 Message-driven Bean 和JMS 结合的方式,并基于关系数据库
来实现;文中详细介绍了引擎的核心,即流程管理器、活动管理器、流程导航器
和任务管理器的实现;给出了工作流引擎的性能优化策略。最后,将设计并实现
的轻量级工作流引擎应用于外贸学院电子商务和物流教学实验室的项目。应用结
果表明,引擎可支持灵活的流程定制,且配置部署简便。
通过理论分析和实践研究,本论文所获得的研究成果为将来进一步发展和完
善基于轻量级工作流引擎的工作流管理系统,提供了一条有益的思路。
关键词:轻量级 工作流引擎 消息驱动 JMS J2EE
ABSTRACT
With workflow technology developing rapidly, it becomes easy to build enterprise
flexible application system. By making use of workflow technology, enterprise can
make it better to reengineer their business process, so that they can adapt to the change
and requirement of the market.
Workflow engine is the systematic core software module of the workflow
management system. According to the Workflow Management Coalition standard,
based on the actuality about workflow management product in the software market and
the demand for workflow software of medium and small enterprises business and
according to the simple but practicality principle, this thesis designs and develops the
lightweight workflow engine. In the thesis, the workflow model is extended to process
model, organization model, resource model and workflow relevant data based on
meta-model of WfMC, and the organization model, resource model and process model
based on active-net are designed; process definition language based on XML can
combine with other workflow definitions well; grammar verification and graph-theory
based structure verification methods are introduced to the system design; system
structure of core components and working mechanism are proposed; its engine
structure is developed from the 3-tier structure of J2EE and implemented by combining
Message-driven Bean and JMS and using relational database; process manager, activity
manager, process navigator and workflow item manager are realized as core
components of the engine; the optimization strategies are brought forward. At last, we
show that how to apply the workflow engine which is designed and realized to Foreign
Trade E-business and Logistics Teach Lab project, and the result shows that workflow
engine is easy-to-use and is helpful to improve the efficiency of work.
By the fact that theoretical analysis and practice study, study results in this paper
have provided the certain train of thought and beneficial trial for developing workflow
manages system going a step further in the future.
Key Word :Lightweight, workflow engine, Message Driven, JMS,
J2EE
目 录
摘 要
ABSTRACT
第一章 绪 论 .......................................................................................................1
§1.1 工作流的起源及发展 ..............................................................................1
§1.2 国内外研究现状及不足 ..........................................................................2
§1.3 本文研究内容及意义 ..............................................................................3
§1.4 论文的组织结构 ......................................................................................4
第二章 WfMS 理论基础 .......................................................................................5
§2.1 工作流的基本概念 ..................................................................................5
§2.2 工作流管理系统概念 ..............................................................................6
§2.2.1 工作流管理系统的功能 ...............................................................6
§2.2.2 工作流管理系统的体系结构 .......................................................7
§2.2.3 工作流管理系统的参考模型 .....................................................10
§2.3 工作流系统用例图 ................................................................................12
§2.4 本章小结 ................................................................................................13
第三章 工作流引擎的分析与设计 .....................................................................14
§3.1 工作流引擎设计思想 ............................................................................14
§3.1.1 工作流的设计中心 .....................................................................14
§3.1.2 采用轻量级 .................................................................................15
§3.1.3 基于 J2EE 架构 .......................................................................... 15
§3.2 工作流模型设计 ....................................................................................16
§3.2.1 基本概念 .....................................................................................16
§3.2.2 组织模型 .....................................................................................17
§3.2.3 资源模型 .....................................................................................18
§3.2.4 过程模型 .....................................................................................19
§3.3 过程定义及描述 ....................................................................................24
§3.3.1 过程元模型 .................................................................................24
§3.3.2 基于 XML 的过程定义 ..............................................................25
§3.4 工作流模型验证 ....................................................................................31
§3.4.1 语法验证 .....................................................................................31
§3.4.2 结构验证 .....................................................................................32
§3.5 工作流引擎设计 ....................................................................................36
§3.5.1 引擎的功能要求 .........................................................................36
§3.5.2 工作流运行状态 .........................................................................37
§3.5.3 引擎的系统结构 .........................................................................39
§3.5.4 数据库设计 .................................................................................40
§3.5.5 引擎的工作机制 .........................................................................42
§3.6 本章小结 ................................................................................................43
第四章 工作流引擎的实现和应用 .....................................................................43
§4.1 实现技术 ................................................................................................44
§4.1.1 J2EE 架构 .................................................................................... 44
§4.1.2 EJB ...............................................................................................44
§4.1.3 JMS .............................................................................................. 45
§4.1.4 ORM 和iBATIS .......................................................................... 46
§4.2 工作流引擎系统架构 ............................................................................47
§4.3 工作流引擎的实现 ................................................................................49
§4.3.1 使用 iBATIS 封装对数据库的操作 .......................................... 50
§4.3.2 引擎核心的实现 .........................................................................53
§4.3.3 应用调用适配器 .........................................................................58
§4.3.4 XML 文档解析及代码 ...............................................................59
§4.3.5 日志与时间管理接口 .................................................................60
§4.3.6 资源分配策略 .............................................................................61
§4.3.7 优化策略 .....................................................................................62
§4.4 工作流引擎的部署和运行环境 ............................................................64
§4.5 工作流引擎的应用 ................................................................................65
§4.5.1 工作流在电子商务和物流中的应用 .........................................66
§4.5.2 引擎在外贸学院电子商务与物流教学实验室项目中的应用 .67
§4.6 本章小结 ................................................................................................70
第五章 总结与展望 .............................................................................................71
参考文献 .................................................................................................................73
第一章 绪论
1
第一章 绪 论
§1.1 工作流的起源及发展
工作流[1]的概念起源于生产组织和办公自动化领域。它是针对日常工作中具有
固定程序的活动而提出的一个概念。在传统的应用中,企业和行政管理部门的业
务工作的主要内容就是在不同的部门之间进行文件和信息的传递,这种工作方式
的缺点是需要花费大量的人力资源,且生产和经营效率较低。工作流技术是辅助
实现企业业务过程建模、业务过程仿真分析、业务过程优化、业务过程管理与集
成,最终实现业务过程自动化的核心技术。针对企业业务过程,运用工作流技术
的理论知识进行详细的分析、设计和建模,不仅可以规范企业的业务流程、发现
业务流程中的不合理环节进而对企业的业务流程进行优化和重组,而且在科学理
论指导下所建立的业务流程模型的本身就是企业非常重要的知识库和规则库,可
以成为指导企业实施计算机管理信息系统的模型,因此工作流技术应用的意义非
常重大。
实际上,自从进入工业化时代以来,有关过程的组织管理和流程的优化工作
就一直在进行,它始终是企业管理的主要研究内容之一,只不过在没有引入计算
机信息系统的支持以前,这些工作都是由人工来完成的。在计算机网络技术和分
布式数据库技术迅速发展,多机协同工作技术日益成熟的基础上,于20世纪80年
代中期发展起来的工作流技术为企业更好地实现经营目标提供了先进的手段。
1993年工作流管理联盟(Workflow Management Coalition, WFMC)的成立标志着
工作流技术在计算机应用研究领域之中被明确地划出了自己的一席之地,相应的
概念和术语也得到了人们的共识。
进入20世纪90年代,随着计算机与网络技术的迅速发展,特别是在Internet应
用日益普及的情况下,现代企业的信息系统的分布性、异构性和自治性的特征越
来越显著,相应的企业信息资源也分布在异构的计算机环境中,信息源之间的连
接表现出松散藕合的特点,这样的信息系统环境简称为HAD环境(异构、自治、
分布)[2]。企业物理位置的分散性和决策制定过程的分散性特征日益明显,对日常
业务活动的信息需求日益提高,Client/Server体系结构和分布式处理技术(CORBA,
WWW, OLE, JAVA等)的广泛应用,都说明了这样的事实:集中式信息处理的时
代即将成为过去,取而代之的将是大规模的异构分布式信息处理与应用执行环境。
在这种大规模的分布式环境下高效运转相互关联的任务,并且对执行的任务进行
基于 J2EE 的轻量级工作流引擎的研究和实现
2
密切监控己成为一种发展趋势[3]。目前,在全球范围内,对工作流的技术研究以及
相关产品的开发已经进入了更为繁荣的阶段,更多更新的技术被集成进来,文件
管理系统、数据库、电子邮件、移动计算、Internet服务等都已经被容纳到工作流
管理系统之中。工作流产品的市场也以每年两位数字的速度迅猛增长。时至今日,
工作流技术已经成功地运用到图书管、医院、保险公司、银行等行业和为数众多
的工业生产领域。作为支持业务经营过程重组(Business Process Reengineering,
BPR)和经营过程自动化(Business Process Automation, BPA)的一种手段,工作
流技术的研究应用日益受到学术界和企业界的重视。许多大学和研究机构也致力
于工作流技术的进一步发展,开展了一系列的研究项目,取得了显著的成果[4]。
§1.2 国内外研究现状及不足
企业的需求为工作流技术的应用提供了广阔的市场前景。因此,工作流技术
的应用范围不断拓展。工作流技术的发展,经过几十年的努力,取得了一定的成
果。
国外近年来在工作流方面的学术研究十分活跃,特别是在北美和欧洲等地,
相应的研究机构纷纷成立。佐治亚大学计算机系的LSDIS实验室研究开发的具有自
适应能力的工作流管理系统,实现一个能够支持大规模复杂应用的自适应工作流
管理原型系统,并保证这些应用在异构企业环境中能够正常运行。WIDE是由来自
西班牙、意大利和荷兰的五个合作伙伴联合开发的工作流管理系统,将分布式数
据库和主动数据库技术应用于工作流管理系统,为工作流的实现方法提供先进的、
面向应用的技术支持,提供了功能强大的组织模型,并可以灵活地实现对不同类
型异常情况的处理[5]。
国内工作流技术的研究起步较晚,目前正处于迅速发展阶段,虽然己经有了
不少研究人员从不同角度开展了工作流管理及其相关技术的研究,但是,该领域
中的许多关键技术问题还处于探索阶段。清华大学、东北大学、上海交通大学等
高校和研究机构都进行了一定的研究工作。其中,上海交通大学的基于Petri网的分
布式工作流管理的研究[6];浙江大学研制的工作流过程描述语言(Workflow Process
Definition Language, WPDL)编译制导的工作流建模支撑平台,都取得了良好的研
究成果。
尽管经过工作流产品供应商与工作流研究人员十几年的不懈努力,工作流技
术由最初的萌芽状态逐步发展起来,并取得了相当的成果,但是从工作流系统的
实际应用状况来看,还远没有达到人们所期待的水平。在工作流管理系统开发的
摘要:
展开>>
收起<<
摘要工作流技术的迅速发展满足了构建企业柔性应用系统的需要。融入工作流技术,企业可以很好地进行业务流程改造与重组,以适应市场的变化与需求。工作流引擎是工作流管理系统的核心软件组件。本文参考工作流管理联盟(WorkflowManagementCoalition,简称WfMC)制定的规范,根据中小型企业业务对工作流软件的需求情况和工作流产品现状,本着简单实用的原则,设计开发了一种面向中小型企业业务应用的轻量级工作流引擎。在系统设计中,将工作流模型在工作流管理联盟的元模型基础上扩展为四个部分,即过程模型、组织模型、资源模型以及工作流相关数据,并设计了组织模型、资源模型及基于活动网络的过程模型;在过程模...
相关推荐
作者:高德中
分类:高等教育资料
价格:15积分
属性:78 页
大小:1.36MB
格式:PDF
时间:2024-11-19