论文部分内容阅读
随着计算机网络及通信技术的发展,各种软件新技术被应用于信息系统的开发中,其中,工作流技术以其良好的适应性和灵活性更是受到广泛的关注。它让企业从繁琐的业务过程逻辑处理中找出了一种统一的解决途径。现在,工作流管理系统逐渐从信息系统中抽象出来,作为一种新型的信息系统开发技术和通用的信息系统开发支撑平台,为信息系统的开发提供了一种全新的、更加方便的模式,很好的解决了传统信息系统中存在的不足。
然而工作流技术在中小型企业,特别是供应链管理领域,应用还不是很广泛。这主要由于以下几个方面的原因:第一,现有大多数工作流软件庞大复杂,使用困难,而且架构封闭,自成体系,很难与业务应用无缝集成;第二,适合中小型企业业务需求的工作流软件较少。中小型企业的业务需求一般比较典型,对行业需求不太大,而目前流行的工作流产品,例如Shark、JBPM等,其引擎功能确实很强大,但是超出中小型企业的具体需求,有点大材小用,并且实现复杂,难于与现有系统集成;第三,在JAVA领域所开发的工作流引擎在实现技术方面缺乏良好的可扩展性。目前基于J2EE的工作流引擎大都是以EJB组件的方式实现的,它主要关注于引擎本身的轻量级,而在实现技术上并没有采用轻量级的方法。同时,由于EJB技术是侵入性的,在组件中必须显示地使用EJB技术,所以采用EJB技术使得引擎的服务变成强制性,系统也变得很庞大,难以部署,性能也大打折扣,给实际应用和开发带来了很多不便之处。
因此本文的目标就是采用轻量级的J2EE开发框架设计并实现一个适合中小型企业使用的工作流引擎。从而能够很好的将工作流技术引入到中小型业务的信息系统中,简化企业的流程管理,降低企业的投入成本,提高企业的工作效率。同时通过采用轻量级的技术框架来实现引擎可以让引擎具有良好的可扩展性,这为以后业务需求的增加带来了很大的便利性,使系统也具有很好的可维护性。目前J2EE业界出现了不少轻量级的框架,其中,Struts框架,Spring框架和Hibernate框架的组合是目前企业信息系统开发中应用比较成熟的框架之一,本文所设计的引擎将采用这个开发框架来实现,以便于引擎更好的与原有的信息系统进行集成。同时,由于这个轻量级的开发框架采用纯POJO(Plain Old Java Objeet)来实现,并且所提供的服务是可配置的,因此也不存在跨应用服务器的问题,在运行时只需要一个Java虚拟机就足够了。
本文共分为七个部分。第一部分详细阐述了论文选题的研究背景、目的和意义以及研究的主要内容。第二部分主要介绍了工作流技术方面的基本知识。第三部分对引擎实现所采用的技术做了简要介绍。第四部分和第五部分是本文的重点。在第四部分中,首先提出了引擎研究的需求分析,接着对引擎进行了总体设计,给出了引擎总体结构图,同时还对引擎的各个组成部件进行了详细设计,包括流程定义语言、解析器、控制器、任务分配器及引擎数据模型的设计。第五部分结合这一设计思想,详细描述了采用轻量级技术框架实现引擎各功能组成部分的核心类层次的具体实现。第六部分主要是将引擎应用到供应链管理(SCM)系统中的采购管理子系统中,从而验证了引擎的可行性。最后第七部分对本文所做的工作进行了总结并对引擎未来的研究方向做了展望。本文所设计的工作流引擎采用业界已成熟的轻量级技术框架Struts+Spring+Hibernate来实现,不仅让引擎本身是轻量级的,而且从实现技术上也是轻量级的,大大提高了引擎与企业原有业务系统的集成度,另一方面也使引擎具备了高度的轻便性和可配置性,为将来的服务扩展提供了基础。