论文部分内容阅读
随着工作流技术的不断发展,开源工作流产品功能日趋完善,越来越多的软件企业和客户已经意识到,自己去研发一个工作流引擎或平台,已经毫无竞争优势和价值优势,甚至有可能是成本的浪费。对开源工作流产品进行改进和完善,并将其应用到实际项目中,成为软件企业提高竞争优势,客户降低成本的重要途径。本文选取当前开源工作流领域最容易被商业化应用的工作流管理系统JBossjBPM(Jboss Java Business Process Management)作为研究对象,从流程过程定义、流程调度机制、流程执行机制和流程实例对象四个方面详细阐述了JBoss jBPM工作流引擎的设计思想,并对JBoss jBPM的持久化机制进行了深入的剖析。通过研究发现,JBoss jBPM不是一个完整的工作流管理系统,它发展的重心在于流程引擎的优化以及对企业服务总线的支持,与成熟的工作流管理系统相比,JBoss jBPM只是提供了工作流引擎以及与应用的扩展接口,其流程设计器、流程监控、流程任务分配等功能都不完善,不能很好的满足实际应用的需求。为了使JBoss jBPM能更好的运用于实际项目中,本文从三个方面对其进行了扩展和改进。首先,针对JBoss jBPM流程设计器jbpm-designer在实际应用中存在的问题,设计了一个能脱离开发环境独立运行的流程设计器T-jpdl,并详细阐述了该流程设计器的设计与实现方法;其次,提出了两种改进的任务分配方法:基于候选池的任务分配和基于委派的任务分配,结合使用这两种任务分配方法,可以使JBoss jBPM任务分配更加灵活和合理;最后,对JBoss jBPM的流程监控功能进行了剖析,给出了两种流程监控方式的实现方法:基于表单的流程监控和基于图形的流程监控。改进后的JBoss jBPM保持了其独立存在的特性,可以无缝集成到任何基于J2EE体系结构的应用系统中,并且不对特定的软件应用服务器和数据库产生依赖。本文在最后简单介绍了质量技术监督管理系统,给出了系统的总体结构图,并以系统中典型的行政审批业务——工业产品生产许可证申请流程为例,阐述了改进后的JBoss jBPM在系统中的具体应用。