论文部分内容阅读
工作流的概念起源于生产组织与办公自动化领域。工作流就是工作流程的计算模型,即将工作流程中的工作任务前后组织在一起的逻辑和规则,在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是,为实现某个业务目标,在多个参与者间,利用计算机,按某种预定的业务规则传递任务,这些任务包含业务处理对象信息和相应的操作方法。工作流系统要达到的最终目标是在流程的运行过程中,将合适的任务在合适的时机分派给合适的用户处理。
然而,要实现工作流最终目标中的“合适性”却非常困难,以至目前大部分工作流产品都难以达到柔性任务调度的要求。这主要是因为工作流系统中任务建模以及任务分派的内容是复杂多变的,一方面任务描述与业务流程上下文以及业务对象的数据特征密切相关;另一方面,由于企业为了应对市场竞争必须随时调整各种业务策略,这决定了任务分派是工作流系统中最易变化的部分。因此,为了实现工作流系统的最终目的,我们必须从任务建模方法和任务分派策略两个方面来考察研究。其中,工作流任务的建模方法是基础,而实现柔性任务分派是最终的目标。本文的研究成果建立在柔性任务模型和分派策略的基础之上,基本解决了工作流中的“任务分派”问题。
本文参考了中山大学软件研究所提出的基于主谓宾的需求获取与分析方法的思想对任务建模,以任务的生命周期过程以及任务的处理对象作为任务描述的依据和核心,采用多层次和多视点组合描述问题空间各个元素、元素之间关系以及元素属性的静态关系和动态行为关系。另外,本文从静态和动态的观点来考察工作流任务的概念,分别提出了任务模式和任务实例的基本概念。本文还基于ECA规则论述了在工作流管理系统中任务实例的派生及状态变迁的详细过程。
在以上基本任务模型的基础上,本文进一步引入了用户、角色、表单、日志等实体,各类实体描述为相关属性的集合并且定义了一套基于属性计算的规则表达式,这些规则表达可用于描述任务分派过程的各种具体策略。
本文以中山大学软件研究所研发的工作流系统——GBPIP(Global Business Process Platform,全局流程集成平台)为实验平台,用Java语言实现了本模型,并与GBPIP集成为一体。最后,本文以一个案例研究介绍了模型的应用方法。案例表明,本模型定义的各种实体以及规则描述语言能够正确、高效地描述工作流系统中的任务分派需求,表达力强,具备实际的应用价值。