论文部分内容阅读
随着企业对复杂商业流程的协调和自动化需求的增加,数量和规模日益增长的工作流系统得到越来越广泛的应用。随着规模不断扩大,对系统的可用性、可扩展性、容错性、可备份恢复等提出了越来越高的要求,使得面向工作流的应用软件开发具有同普通MIS系统的开发所不具有的特殊性。
目前,不下百种的商用工作流管理系统业已问世,但在这些系统中仍存在着某些不足之处,例如,难于支持大规模应用场景中庞大的并发用户数量和进程数量,难以满足系统备份恢复以及可用性、可扩展性、鲁棒性等诸多性能方面的需求。但是,作为工作流管理系统中不可或缺的支撑平台——数据库,对这类问题却都已经有了比较成熟的解决方案。因此,一种基于数据库表示来设计实现工作流的想法便产生了。
所谓“基于数据库表示”是指整个工作流管理系统的重心与基础为数据库,其中不仅流程定义、流程实例数据等信息都存储于数据库中,而且工作流引擎也可直接利用数据库提供的过程化SQL实现。
基于数据库表示的工作流模型不仅结构简单、易于实现,具有极强的流程表达能力、灵活的流程配置能力、强大的任务分配机制,而且更重要的是可以直接利用大型数据库中已经实现了的各种功能与特性;大规模用户与进程的并发执行、数据备份与恢复、故障检测、安全机制、系统的稳定性、事务模型等方面的支持。因此,采用这种模型,既可减低工作流引擎和服务设计的复杂度,又可提高其性能。