基于OA系统的工作流引擎设计与实现

上传人:re****.1 文档编号:487315154 上传时间:2024-02-21 格式:DOC 页数:40 大小:282KB
返回 下载 相关 举报
基于OA系统的工作流引擎设计与实现_第1页
第1页 / 共40页
基于OA系统的工作流引擎设计与实现_第2页
第2页 / 共40页
基于OA系统的工作流引擎设计与实现_第3页
第3页 / 共40页
基于OA系统的工作流引擎设计与实现_第4页
第4页 / 共40页
基于OA系统的工作流引擎设计与实现_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《基于OA系统的工作流引擎设计与实现》由会员分享,可在线阅读,更多相关《基于OA系统的工作流引擎设计与实现(40页珍藏版)》请在金锄头文库上搜索。

1、XX大学本科学生毕业设计基于OA系统的工作流引擎设计与实现学 生: 学 号:指导教师:专 业:计算机科学与技术XX大学计算机学院二OO八年六月IXX大学本科学生毕业设计摘 要工作流管理系统是一个软件系统,它用于工作流的定义和管理,并按照在计算机中制定好的工作逻辑推进工作流实例的执行,实现自动传递文档、信息或者任务。工作流引擎在工作流管理系统中处于核心地位,是系统的任务调度器和资源分配器。它可以创建新的流程、基于过程模型生成工作项、支持活动的执行、分配资源以及记录工作流的相关信息。目前,工作流技术在办公自动化(Office Automation, OA)系统中的应用月来越广泛,对OA系统中的工作

2、流引擎进行探索具有重要的应用价值。 本文结合一般的办公室办公自动化的需求,从软件生存周期的角度,使用面向对象的设计方法,给出了一个结构清晰、配置简单的工作流引擎设计方案。重点介绍来了引擎的设计与实现。该引擎借鉴了已有的工作流引擎的设计,在保证实用性的基础上,在权限和流程管理方面进行了针对性的取舍。最后给出了重要功能的部分代码,并进行了详细的描述。经过测试应用,该引擎可以支持灵活的流程定制,配置部署简单,达到了预定目标。关键词:JSP, Spring, Hibernate, Ajax , JavaScriptABSTRACTWorkflow Management System is a soft

3、ware system. It is mainly used for the definition and management of workflow. It makes the workflow instance executes fluently with some scheduled rules to achieve the goal that pass documents, information or tasks automanticlly。 Workflow engine is the kernel of a workflow management system. It is a

4、 distributor of tasks and resources, which can create new processes, create work items based on process models, support executions of activities, and allocate resources and record information of the workflow. Nowadays, as there are more and more workflow applications in office automation, it is very

5、 important to do research in workflow fields。 From the perspective of the software life cycle,this paper proposes a well-structed, easytodeploy workflow engine solution with the general demands for office automation, which was designed in an Objectoriented way。 The designment and implementation will

6、 be focused on。 This engine has referenced other engines and has done some choices on the basis of normal function。 At last, an implementation is showed with detailed description of some important part.After testing, this engine is easytouse and meets the requirements.Keywords: JSP, Spring, Hibernat

7、e, Ajax , JavaScript目录摘 要IABSTRACT21引言51.1课题的背景与目标51.2课题研究内容及文本组织62相关技术及原理72。1工作流技术72.1.1工作流引擎核心功能72。1.2两种现有工作流引擎82。2Spring框架102。2.1Spring 声明式事务管理112。2。2Spring Web MVC143工作流引擎需求分析173。1相关概念介绍173.2总体需求173。2。1基于业务的需求分析173.2。2需求描述183.3任务实时通知183。4多种业务流程的文件存储问题193。5文件权限问题193。6业务流程的基本模式193.7用例阐述203。7。1启动流程

8、203.7.2 挂起流程203.7.3 激活流程213.7.4 终止流程213.7.4 接收任务213.7。5 打开工作项223。7。6 保存文件223.7.7 发送文件223。7。8 挂起工作项223.7.9 恢复工作项233.7.10 驳回文件233。7.11 跟踪流程状态234设计254.1时序图254.1。1执行工作项254。1。2提交任务264。1。3实例化流程274。2数据库设计284.3流程路由机制334.4流程的控制模型344.4.1流程实例导航344.4。2工作项管理344。4.3业务文件管理344.4。4文件权限管理354。4。5任务实时通知354。5引擎类365系统实现3

9、95。1OAworkflow总体框架395.2重点功能实现395.2.1实例化流程的遍历算法395。2.2巧用Spring SimpleFormController获取表单405.2。3JSTL Core taglib和Spring bind处理表单显示415。2。4流程导航核心426总结447致谢4531 引言1.1 课题的背景与目标工作流的概念起源于生产和办公自动化领域,是针对日常工作中具有固定流程的业务活动提出的一个概念.工作流管理联盟(WFMC)给出的工作流定义是:工作流是一类能够完全或者部分自动执行的经营过程,它根据一系列过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行

10、。该技术的目的是通过将工作分解成定义良好的任务、角色,按照一定的规则和过程来执行这些任务并对它们进行监控,达到提高工作效率、降低生产成本、提高企业生产经营管理水平和企业竞争力的目标。工作流管理系统的核心部分是工作流引擎,引擎是驱动流程流动的主要部件,它负责解释工作流流程定义,创建并初始化流程实例,控制流程流动的路径,记录流程运行状态,挂起或唤醒流程,终止正在运行的流程,与其他引擎之间通讯等等工作。目前,工作流技术还处于发展曲线的初级阶段,然而,关于这方面的研究十分活跃,形成了许多规范标准。例如主要的有:工作流管理联盟(Workflow Management Coalition ,WfMC)在体

11、系结构6、工作流相关术语7及应用程序接口8、管理控制接口9、过程语言描述10等方面提出的一系列规范。还有Microsoft, BEA, IBM, SAP等公司联合提交发布的BPEL规范等等。在实际应用中开源产品占据了重要的地位,如JBoss 项目中的jBPM、由OpenSymphony组织开发的OSWorkflow、Enhydra组织开发的Shark。在国内,上海交通大学的基于Petri网点分布是工作流管理的研究,浙江大学的基于工作流过程定义语言(WPDL)的工作流建模平台,都取得了良好的研究成果。但是工作流管理技术很多方面还不成熟,在使用过程中往往会遇到的一个重要问题是系统过于庞大复杂:一些

12、工作流软件产品,特别是国外成熟的产品,经过多年的发展,功能强大,配置和接口多样灵活.对于国内大部分初次使用工作流技术的中小型项目来说,这些工作流软件的功能特性大大超过了需要,客户需要承受漫长的学习周期、复杂的安装配置等带来的风险.鉴于上述的原因,本课题的目标在于提出一个配置简单、使用方便、功能实用的工作流引擎的设计方案,并完成编码。该工作流引擎OAworkflow是借鉴了已有的工作流引擎,对某些复杂功能进行简化后,重新设计的。与传统工作流管理系统相比,本工作流管理系统具有以下优点:1) 支持灵活的流程定制该系统能够针对办公自动化系统中的典型流程案例对流程进行灵活定制,支持的流程路由包括:顺序路

13、由、汇聚路由和分支路由。用户可以根据具体的业务流程,使用客户端建模工具定制合适的模型。2) 功能详细实用例如该系统支持流程分支跳转的时候,允许用户手动指定流程的直接后续步骤;当审批不合格时,文档回退的功能等。3) 文件权限设置精确该系统的每个业务流程绑定一个公文,处于流程中的各个活动对公文的读写权限看精确到字段.4) 支持可视化建模5) 结构清晰,配置简单1.2 课题研究内容及文本组织本课题的重点研究内容有:1) 模型定义。本文分析了办公自动化项目的功能需求,然后针对项目对流程控制的灵活需求,采用了一种结构清晰、功能完整的过程定义格式,使引擎在支持流程分支跳转的时候,还允许用户手动指定流程的直

14、接后续步骤,在借鉴了现有工作流引擎设计思想的基础上,给出了一个工作流引擎的设计方案。2) 工作流引擎的实现。本文分别从流程实例化、流程实例管理、流程导航和维护相关数据等模块详细描述了实现方案,其中关于系统的关键功能部分给出了具体API语义分析。3) 技术架构。本项目采用了Spring + Hibernate 这种流行的Web应用程序设计框架组合.从而使得该引擎具有架构清晰开放的特点,系统有着清晰的分层结构。本文由以下六章和参考文献组成:第一章 引言,介绍了本课题的背景和意义。第二章 相关技术及原理,介绍了Spring 开发框架、Hibernate 数据库持久层技术、Ajax 技术、JavaSc

15、ript、JSTL第三章 需求分析,给出了用例阐述及用例图第四章 系统设计,包括数据库设计、时序图等第五章 实现,重点从流程实例化、流程实例管理、流程导航和维护相关数据等模块描述了实现方案及一些关键API 的分析第六章 总结52 相关技术及原理2.1 工作流技术工作流的概念起源于生产组织和办公自动化领域,它是针对日常工作中具有固定程序的活动而提出的一个概念。目的是通过将工作分解成定义良好的任务、角色,按照一定的规则和过程来执行这些任务并对它们进行监控,达到提高工作效率、降低生产成本、提高企业生产经营管理水平和企业竞争力的目标。2.1.1 工作流引擎核心功能工作流引擎降低了工作流系统应用模块与业务流程之间的祸合度,当业务流程发生变化时,只需修改流程定义,具体的应用程序保持不变,工作流引擎对于用户来说是透明的。目前,工作流引擎的应用可以分为三种方式: 作为一个完整的系统提供给最终用户,能单独运行,如IBM的Lotus Domino/Notes系统。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 创业/孵化

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号