资源描述:
《基于eca规则和活动分解的工作流模型a》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1000-9825/2002/13(04)0761-07©2002JournalofSoftware软件学报Vol.13,No.4基于ECA规则和活动分解的工作流模型Ã胡锦敏,张申生,余新颖(上海交通大学计算机集成技术开放实验室,上海200030)E-mail:jimhu@cs.utwente.nl;sszhang@sjtu.edu.cnhttp://cit.sjtu.edu.cn摘要:企业在面临电子商务的挑战中,越来越重视业务过程重组.建立一种合理的流程模型是成功开展BPR(businessprocessre-engineering)的关键.这样的模型应该可以集
2、成企业许多业务相关的信息并且是可被系统解释执行的.在参考WfMC(workflowmanagementcoalition)元模型基础上建立了一种基于ECA(event-condition-action)规则和活动分解的工作流模型.ECA规则反映活动之间的执行依赖关系,通过重写办法把ECA模型变为触发器形式的TA(trigger-action)模型,使模型的解析更高效,把事件重写为事件发生时间,使事件表达式具有更强的表达能力.活动分解的模型能很好地支持层次化项目管理.关键词:工作流模型;ECA规则;事件驱动模型;触发器模型;重写中图法分类号:TP311文献标识码:A
3、工作流技术在实现企业过程重组、事务流水化处理以及信息流、文档流的管理等面向过程的应用以及在满足系统集成化应用需求方面显示了强大的功能和极大的应用前景.基于工作流的应用正成为现代企业软件[1]系统的核心组成部分.工作流管理联盟(workflowmanagementcoalition,简称WfMC)给工作流下的定义是:工[2]作流是商业过程部分或全部地计算机化或自动化.换言之,工作流是为了达到一定的商业目的而根据一组定义的规则将文本、信息和任务在工作过程参与者之间传送的过程自动化.既然是一种流,那么工作流模型就是以一种过程的形式表现出来的.工作流模型是以过程为核心集成
4、了以事务处理相关的其他信息的集成化过程模型.而这种模型中的集成化是体现在组成过程的单元上,也就是在活动上.因此,过程是由活动单元组成的,活动之间的关系决定了事务的处理过程.而活动在执行过程中与角色、执行者、资源、信息等其他信息联系起来.本文提出了一种基于事件-条件-动作(event-condition-action,简称ECA)规则和活动分解的工作流模型.ECA规则描述了触发活动的事件和内部条件,实际上也描述了执行活动的执行依赖关系.因此对工作流的解释执行主要是对与活动相关的事件的响应和对条件表达式的解析.本文提出一些理论把ECA模型变成了触发器-动作(trigg
5、er-action,简称TA)模型,把活动的发生条件以触发器的形式表现出来,而触发器的最终形式就是条件表达式,使用规则重写技术可以实现它的解析.为了方便项目的管理,必须建立活动的纵向层次关系,本文提出了基于活动分解的办法来支持自顶向下(top-down)的设计.1WfMC定义的工作流元模型WfMC认识到给出一种通用的工作流定义模型能带来两方面的好处:(1)由某种工作流建模工具产生的工作流定义可以在多种工作流运行系统中执行(enactment);(2)通过输出一种通用的工作流定义到其他工作流系Ã收稿日期:2000-06-26;修改日期:2001-01-15基金项目:
6、国家自然科学基金资助项目(60073035);国家863高科技发展计划资助项目(2001AA415310,2001AA412010)作者简介:胡锦敏(1972-),男,广西平南人,博士生,主要研究领域为工作流管理系统,企业电子商务支持系统,复杂信息系统体系结构;张申生(1952-),男,上海人,博士,教授,博士生导师,主要研究领域为敏捷制造理论体系,分布异构环境集成技术;余新颖(1973-),男,硕士生,主要研究领域为工作流,并行工程.762JournalofSoftware软件学报2002,13(4)统可以使工作流之间实现协作.[3]为此,WfMC推出一个如图1
7、所示的工作流的元模型(metamodel)来描述工作流定义中的对象、对象关系和属性,以此来形成一个工作流信息交换的格式集合的基础.工作流元模型中定义了以下一些关系,工作流类型定义(workflowtypedefinition)由活动(activity)来组成,而活动中会使用某些工作流相关数据(workflowrelevantdata),而这些相关数据会出现在活动之间的迁移条件(transitioncondition)中,迁移条件决定了活动之间的关系,活动的执行是由某种角色(role)来分担的,在执行过程中会调用一些可调用的应用(invokedapplication
8、)来完成相