论文部分内容阅读
工作流的研究始于上世纪80年代,并一直得到广大学者和研究机构的关注。在全球企业竞争越来越激烈的今天,工作流管理系统作为提高企业管理水平和生产效率的有效工具,更受到众多公司的重视。工作流引擎是工作流管理系统的核心部件,主要为工作流管理系统提供流程控制功能。工作流技术的不断发展和成熟,其应用范围越来越广泛和深入。除了工作流管理系统,许多其他应用系统也都需要工作流引擎为其提供流程控制功能。但是传统的工作流引擎同工作流管理系统绑定在一起,很难独立出来同其他应用系统相结合。这导致了工作流引擎核心功能的重复开发。IOC的全称是Inversion of Control,即反转控制(也称为依赖注入)。它是近几年兴起的编程模式。该模式能够方便的配置系统中各构件的相互关系,使系统各构件在运行时互相协作,因此该模式能很好的协调各构件的依赖关系,减少构件之间的耦合,提高构件的重用性。本文分析传统工作流引擎不足后,利用IOC容器在构件组装方面的优势,研究并提出一种新的嵌入式工作流引擎的设计方法。首先设计了引擎的系统框架,详细说明引擎各个组成部分的功能,并提出基本构件和过程构件的概念。然后利用java语言的Spring IOC容器实现了一个引擎原模型。最后测试原模型对常见工作流模式的支持能力,并归纳引擎所能支持的工作流模式以及说明如何扩展工作流引擎来支持特殊的流程。基于IOC容器的工作流引擎提取了一般工作流引擎的核心功能,易于同其他应用系统相结合,可以为其他应用系统提供流程控制的功能,减少这些应用系统对工作流引擎的重复开发。本文还设计了11种基本构件,通过这些基本构件的组装可以支持常见的工作流模式,满足各种软件系统对工作流技术的需求。