论文部分内容阅读
现在,大多数信息系统使用已定义的工作流模型描述任务关系并维护整个业务过程。但随着业务过程越来越多、单个业务过程越来越复杂,工作流模型不可避免会有低效,甚至是出错的问题。为此,对业务过程进行监控并加以改进是很有必要的,而这些需求都需要获得工作流模型的实际过程。作为集中管理工作流程的自动化系统,工作流系统往往由多种不同的工作流组成。工作流是根据一系列的程序或规则将文件、信息或活动从一个参与者传输到另一个参与者的整个或部分业务过程。工作流挖掘的目标是从工作流系统所生成的工作流日志中重现运行时业务过程模型,以支持工作流设计和分析的技术。在研究过程中,本文发现经典的工作流挖掘算法都是以事件轨迹为分析单位,因此将其称之为基于事件轨迹的工作流挖掘算法。该种算法的算法流程可划分为三个阶段:(1)从事件日志中抓取并整理成事件轨迹;(2)分析事件轨迹及抽取次序关系;(3)从次序关系中生成工作流模型。因为阶段(1)和阶段(2)需要对分析日志中的所有事件轨迹,所以这两个阶段是这种算法的主要性能瓶颈。然而,本文所提出的工作流挖掘算法不是基于事件轨迹的,而是基于事件多重集,称之为基于事件多重集的工作流挖掘算法(简称为λ-算法)。λ-算法不需要分析事件轨迹,从而能够提高挖掘效率。除此之外,基于事件多重集的日志规模增长会趋于常量值,而基于事件轨迹的日志规模呈线性增长的,前者的日志规模远小于后者,这也进一步提高了λ-算法的挖掘效率。因此,办算法能够以更高的效率挖掘出过程模型。事件多重集作为λ-算法的源数据,是由多种可重复事件所组成的事件集合。一方面,事件多重集中的每个事件是由当前任务和后继任务组成的,即带有后继任务的事件;另一方面,事件多重集中并不包含工作流实例编号,即不关注事件轨迹。通过分析事件中的当前任务与后继任务间的关系,办算法就可以直接获得任务间的因果依赖和并发关系。λ-算法不仅能够正确挖掘SWF网、带短循环结构的工作流网,而且能够正确挖掘隐式依赖结构、一些隐式库所以及一些非良好结构的工作流网。因此,λ-算法能够处理范围更广的工作流网。本文根据λ-算法的算法过程开发了基于ProM框架(工作流开放框架)实现了λ-算法插件"Lamda Miner Process Multiset Plugin"。该工具输入的日志格式是mul(事件多重集日志)。本文用该工具挖掘一个复杂的软件项目管理流程,发现该工具能很好的挖掘出该流程。本文利用λ-算法插件对λ-算法进行了详细的实验评估,主要是在符合性和性能方面对λ-算法进行定量分析。