1绪论
1.1课题背景
随着70年代办公自动化以及生产活动的迅速发展,工作流技术应运而生并随后得到迅速的发展⑴。它是一项快速发展的信息化技术,主要特点就是过程的自动化处理,这个过程包含人机交互为基础的人工活动。近两年关于工作流的研究不断深入,国外成立了很多专门的研究机构幵始对其进行研究,比如IBM Exotica, MENTOR, HP Open PM等。国内的各大高校也对其进行了一定程度上的研究。其中很多研究比如分布式的工作流管理以及基于工作流过程定义语言的工作流建模平台都显示出了很好的效果。关于工作流的研究如此火热的原因大致有如下两点[6]。如果从技术的方面来看,工作流系统是很多学科很多领域的融合,使用了很多学科领域的理论和技术,比如数据库技术、分布式计算技术以及系统集成与管理等技术,这种不同领域的融合对研究人员来说是一个巨大的挑战;如果从应用的角度来看,市场上对安全性和可扩展性等性能较高的工作流系统存在着巨大的需求,因为一个性能较高的工作流系统能对一个企业的竞争力和效率做出一个较大幅度的提升,从而收获更高的利润。作为一个新兴的具有潜力的企业信息化管理技术,工作流管理技术在很多大型企业的业务领域中获得了广泛而大量的应用。然而,随着网络技术与计算机技术的发展和全球经济一体化的趋势,工作流管理技术也迎来了更大的挑战。在本文中,工作流管理系统的出发点就是对工作流程进行有效而便捷的管理并且确保所有任务被正确无误地执行。随着这项技术的快速发展,商业或开源工作流产品相继突出。其中JBPM在众多工作流引擎中脱颖而出,因为JBPM所拥有的工作流引擎设计优良,具有更高的扩展性,在实际的应用中表现出了良好的稳定性。
1.2国内外研究现状
随着时代的发展,企业应用有了相对独立的DSMS和UIMS (User Interface Management System,用户界面管理系统),越来越能适应变更频繁、复杂化、大型化的需要了。这时候瓶颈又出现了,现代企业对业务流程的需求正在发生变化:业务流程化变得越来越重要、复杂,越来越要适应频繁的变化,企业内部的业务流程总数不断地增力口。因为这些需求,工作流管理系统应运而生并随后得到了很大的发展。在其发展历程中,有两个重要的里程碑 工作流管理系统参考模型和BPM (Business ProcessManagement,业务流程管理)。近两年关于工作流的研究不断深入,国外成立了很多专门的研究机构开始对其进行研究。国内的各大高校也对其进行了一定程度上的研究。其中很多研究比如分布式的工作流管理以及基于工作流过程定义语言的工作流建模平台都展现出了很好的效果。如今有两个标准是一般工作流系统都会遵循的,它们是:BPEL和WfMC。像roM、Oracle、BEA这些国际知名公司都比较推崇BPEL (业务流程执行语言)标准。在国内,采用WfMC标准的工作流产品较多,如西安协同的SynchroFlow、杭州信雅达的SunFlow等。这两种标准既存在相似之处,也有很多不同点,BPEL更注重在企业服务总线上进行服务编排,WfMC标准则对人机交互领域比较关注。国内的工作流应用需求以人机交互类型居多,所以现今国内厂商大多釆用WfMC标准实现工作流产品[2]。
随着计算机技术和网络技术的逐步发展,协同工作环境对工作流管理系统提出了更高的要求,人们对工作流的研究逐渐转向对动态自适应性的研究。动态自适应性工作流要求工作流模板可以随着应用环境的需要而进行动态的调节,整个系统能够方便的移植到不同的硬件和软件平台上,并易于系统的扩展,增加新的功能。通过与互联网和Internet技术相结合,基于web的工作流管理系统应运而生并解决了上文所述的问题[8]。从总体上来看,目前市场上的工作流系统都各自有各自的优势,还没有哪一家的产品能够独占鳌头,占领统治地位,这样一来,对于工作流系统的标准化工作就显得困难重重。即使假设每一个厂商制作出的工作流系统都满足WfMC所制订的标准,但一方面由于这个标准本身就存在不完善性以及不确定性,另一方面由于每个厂家自身的设计可能就存在很多的不同点,所以不同厂家的产品的相互操作的实现显然不是很乐观。很多专业的研究人员通过对工作流技术的实际应用进行研究,发现目前工作流管理系统在性能等方面仍然存在着很多不足之处[1],例如:几乎彼此都不兼容;由于很多工作流系统只在集中式结构和单一数据库的情况下进行设计,加上没有考虑通信的流量问题,导致在最后的大规模的业务上产生了很多的问题;稳定性和安全性较差。由于国内的信息化建设还远远不如发达国家那么普及和成熟,所以对于工作流管理系统的应用,目前还是以人工任务密集型的工作流应用为主。当前国内的工作流管理系统主要应用于以下领域:电子政务,如行政审批流程;企业协同办公;企业的采购合同、销售合同等常用业务流程的审批和管理[2]。
2工作流技术综述
2.1工作流管理系统(WfMS)
2.1.1工作流管理系统的功能
WfMS正在逐步朝着结构统一和标准一直的方向发展。在当前的工作流产品中,可以抽象出一些通用的工作流管理系统的实现模型。不同的工作流管理系统具有不同的应用范围和实施方式,在过程建模和工作流引擎的设计和实现方式上也有所不同。工作流引擎是系统的核心,所以设计工作流管理平台,主要是设计出工作流引擎。对工作流管理系统来说,工作流引擎是任务管理器;对企业来说,工作流引擎是资源分配器,是一套保障业务数据完好无损地在不同执行者之间传递和执行的机制;对程序幵发员来说,工作流引擎是构建工作流管理系统最关键的部分,实现各个功能模块及接口间的通信。它的功能可大致概括如下:实例化及执行工作流流程模型:根据初始条件和执行参数,对工作流流程模型生成工作流过程实例,并运行和管理过程实例。同样的流程模型,可能会被执行多次,同一时间内也可能有多个同样的流程模型在运行,故要用流程实例来区分同一流程模型的不同执行。在文档或表单的审批流程中,每当有了新的文档或表单提交审批,即启动了一个新的工作流流程,只是各个审批流程间需要加以区分,运行多个审批处理流程模型的实例意味着有多个审批文件正在在被处理。
3基于扩展JBPM工作流管理平台设计......... 19
3.1 数据库端的具体设计........ 19
3.1.1 数据库基本架构设计........ 19
3.1.2 JBPM数据库结构 ........20
3.1.3 基于文档表单流程的数据库优化........ 22
3.2 关于文档表单流转的设计........ 25
3.2.1 审批功能具体实现........ 25
3.2.2 工作流引擎与表单系统的集成........ 28
3.3 关于流程定制的设计........ 30
3.4 软件接口设计........33
3.4.1 JBPM 扩展接口........ 33
3.4.2 JBPM流程历史接口........ 36
3.4.3 JBPM流程定制接口........ 37
3.5 本章小结 ........37
4软件测试管理系统实现........ 39
4.1 软件测试管理系统开发平台........ 39
4.2 测试管理系统中的工作流需求........ 42
4.2.1 测试管理系统概述........ 42
4.2.2 流程管理模块 ........51
4.3 系统中工作流具体实现设计........ 53
4.4 具体事例说明........ 55
4.4.1 测试计划文档审批........ 55
4.4.2 测试问题报告单审批........ 60
4.5 本章小结 ........61
结论
笔者有幸全程参与了软件测试管理系统的实施过程,负责需求分析,设计分析,并与同学协作完成项目中工作流相关的模块。项目历时一年,于2012年9月顺利交付验收。该项目包含大量审批业务流程,需要引进工作流技术,我们对工作流技术进行了深入的研究和分析,并最终选择JBPM,以它为基础设计了工作流管理平台,根据项目的实际需求对其进行扩展和改进。总结工作经验,编写本论文,其中主要的工作成果有:
1.首先对工作流管理技术进行简要概述,介绍了工作流管理系统的基本概念,分析了工作流管理系统的基本功能和体系结构。
2.仔细研究了工作流管理系统的体系结构,明确它的核心构件并对其进行深入分析,为搭建工作流管理平台奠定基础。
3.引进JBPM技术,以此为基础搭建工作流管理平台,深入学习了 PVM, jPDL等相关核心技术。在这个基础上,我们还对JBPM进行了改进,完善了文档表单审批功能,设计了基于模板的流程定制模块,优化基于文档表单流程的数据库优化,使用JavaBean对JBPM的各项API进行封装,把JBPM工作流引擎和Web应用隔离幵来,实现各项软件接口。
4.采用改进后的各项技术实现软件测试管理系统,完成测试流程的新建、修改和删除,文档和表单的各项审批任务,工作流程的流转,实现系统平台的开发。
使用基于工作流的软件测试管理系统,大幅度提高了测试效率,减轻了各阶段测试人员的工作量,保证了测试规范性。但是,由于具体业务流程的不同需求和复杂性,我们提出的扩展JBPM技术很难适用于所有的业务流程。当遇到更为复杂的流程管理仍需要做出更多的改进和完善。
参考文献
[1]罗海滨,范玉顺,吴澄.工作流技术综述.软件学报,2000,11(7):899-907
[2]胡奇.JBPM4工作流应用开发指南.电子工业出版社,2010
[3]刘永坡,张懋,刘雪梅.基于XML的测试流程模板定义和存储方法.计算机工程与设计,2009,4:785-787
[4]殷旭.廖斌,张志华,田英爱.基于Ajax工作流表单研究与应用.计算机应用与软件’ 2010.3(27):75-78
[5]廖斌,殷旭.王新平.基于Web工作流表单的设计与实现.科学技术与工程,2009.3: 721-724
[6]黄虹,钟西炎,王锦等.工作流技术在现代信息管理中的应用分析.中小企业管理与科技,2011,36:263-264
[7] Layna fischer. Workflow http://sblunwen.com/rjxxgllw/ Handbook. Future Strategies Inc, 2005
[8]刘铭,金炜东,舒粤.基于J2EE的电力勘测企业信息系统.计算机工程与科学.2008.30(5): 154-155
[9] David Hollingsworth. The Workflow Reference Model: 10 Years On. WorkflowHandbook,2004:295-312
[10]胡光,任满杰.一种工作流管理系统新模型的研究与实现.烟台大学学报:自然科学与工程版,2007,3:5-8