论文部分内容阅读
工作流管理系统是目前被许多行业应用并正在急速发展的一种应用技术。它的主要功能是让业务工作的处理过程自动化、流程化。随着各行业的规模不断扩大,行业内部的业务流程逐渐增多,工作的逐渐细化,人们对工作流管理系统的要求也越来越高。工作流实际上就是运行于计算机上的,把现实中的业务流程用计算机语言描述出来,并通过人机交互的方式模拟现实中实际工作的一个软件平台。在工作流管理系统中,一个工作流程被拆分成了若干个活动,这些活动在工作流引擎的控制下,根据预先在工作流程定义文件中定义好的规则,交由不同的参与者按照预先规定好的顺序执行。直至最后一个活动结束后,整个流程才被完成。工作流管理系统的这一工作方式,体现出了大多业务流程的执行特点,但对于有一些特殊要求的工作流业务流程,就不能被很好的完成了。比如,某行业现在有一个业务流程,这个流程对时效性、完成率等执行结果要求特别高,如果在系统执行到其中某一个活动时,这个活动由于各种原因,未能被及时完成而超过执行时限后,工作流管理系统就会将这一流程删除、挂起或延迟,使得整个流程处于停滞状态,这种处理方法显然不能满足用户的特殊要求。再有,工作流管理系统中所涉及到的数据流主要有控制数据、相关数据和应用数据,而系统本身所关心和能够直接访问的数据只有控制数据和相关数据。这使得许多对于应用数据的管理和使用要求比较高的行业,不得不再另行设计和安装用以管理和使用这些应用数据的系统。这样一来,不仅造成了工作流管理系统的数据不能统一管理,还增加了企业的投入资本和操作上的不便。为了解决上述问题,本文针对工作流管理系统的工作特点及工作原理进行了很多的研究工作,并结合实际工作需要,对工作流管理系统,进行了如下几方面的工作。首先,为了满足特殊流程需求的问题,提出了利用工作流引擎自动调度的解决策略。工作流引擎是流程按照一定规则顺序执行的实际推动者,它是通过解析流程定义文件得到了流程的控制数据,而后根据这里面预先定义好的各种规则来引导流程执行的。这种策略的主要工作原理是利用引擎的这一工作特点来使超时任务能够被顺利执行完成。另外本文还提出了某过程实例中遇有超时任务时,重新制订一条新的工作流程的方式来解决这个问题。本文主要从以上两个角度对超时问题提出了不同的解决方法。第二,在我们设计工作流客户端应用程序时,为应用数据的管理提供了接口,并将这些应用数据存储到单独的关系数据库中,为用户提供了更加强大的数据管理功能。这样用户在使用客户端应用程序时就能直接对已产生的并且自己有权限访问的应用数据进行查询、修改等管理和应用上的操作。最后,设计并实现了工作流管理系统,通过实例的应用,验证了该系统的实用性。