基于有限状态机的工作流引擎研究与设计

来源 :教育教学论坛 | 被引量 : 0次 | 上传用户:digitalmachinel
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:简述了有限状态机的基本概念和传统理论,提出了利用有限状态机进行工作流引擎设计的基本思想,并结合实际应用给出了一种实现方法。
  关键词:工作流引擎;有限状态机;对象
  工作流技术正越来越广泛地应用在各种领域,而工作流引擎又是工作流模型设计中的核心。采用工作流支持其经营过程的企业,工作流引擎可以看作其经营过程的任务调度器和资源分配器,是企业的业务操作系统,因此工作流引擎的性能和可靠性是企业经营过程的运行效率和安全性保障。本文将有限状态机(Finite-State Machine,FSM)的理念应用于工作流引擎设计中,并结合Oracle,Java,Hibernate阐述了该工作流引擎的设计和实现方案。
  一、相关概念
  1.有限状态机,又叫有限状态自动机,是表示有限状态(state)及在这些状态间的转移(transition)和动作(action)等行为的数学模型。定义:有限状态自动机是五元组(■,S,S0,δ,F),这里的:■是输入字母表(符号的非空有限集合)。表示该系统能接收的所有事件的集合。S是状态的非空有限集合。S0是初始状态,它是S的元素。在非确定有限状态自动机中,S0是初始状态的集合。δ是状态转移函数:δ:S×■→S。F是最终状态的集合,S的(可能为空)子集。
  2.有限状态自动机可以表示为一个有向图。有限状态机是在自动机理论和計算理论中研究的一类自动机。其作用主要是描述对象在它的生命周期内所经历的状态序列,以及如何响应来自外界的各种事件(event)。有限状态机的另一个特点离散性,它在任何时刻,都处于一个特定状态。当在某一状态下有事发生时,根据当前状态和输入事件的不同,选择如何处理该事件及是否需要转换到下一个状态。
  二、有限状态机在工作流引擎中的应用
  1.在工作流引擎设计中,有两个重要对象:工作流过程和活动。它们都继承于WfExecu是teOject对象,需要在各自的实现类中实现start(),suspend(),terminate(),abort(),resume(),complete()。一个过程包括若干活动,过程和活动的状态是相互影响的。图1为工作流引擎结构。
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  2.对工作流引擎来说,状态是有限的,分别是NotStart(就绪态),Running(运行态),Suspended(挂起态),Abort(终断态),Complete(完成态),Terminate(终止态)。各个状态之间在一定条件下能进行转换(如图2)。
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  ①过程初始化时,执行initProcess(),把数据从模型库-->运行库,完毕后设置过程实例的状态为notStart,此时该过程下的起始活动实例状态也设置为notStart。②过程实例状态变迁为Running,起始活动状态设置为Running,在找到后续实例后,设置本状态为Completed,后续活动状态为Running。③过程实例在notStart态,活动实例只能在null态和notStart态。④过程实例在Running态,所属活动实例已经完成的,为completed态;有等待系统分配资源的notStart,有已运行过,但被剥夺了资源的suspended。⑤如果有活动实例变成了terminated或abort,归属过程也会被设置相应态。⑥当结束活动实例设置为Completed,过程实例设置为Completed,表明该过程顺利完成。⑦活动处于Suspended态的,过程仍然可以为Running。
  利用有限状态机模型,可以把复杂的问题简单化,还原事物的本质,极大地提高程序的可读性及未来的可维护性。
  参考文献:
  [1]李红臣,史美林,陈信祥.工作流系统中的业务流程描述及分析[J].计算机研究与发展,2001,38(7).
  [2]范玉顺.工作流管理技术基础[M].北京:清华大学出版社,2001.
  [3]The Workflow reference model.Workflow Management Coalition[S].WfMC-TC-1003,1994.
  基金项目:湖南省教育厅基金项目(09C645)
其他文献
以分形维数向量为工具,引入了纹理标准性的概念,给出Ashikhmin方法所适用的自然纹理的标准性系数的范围,并对这类区间中的自然纹理提出了新的改进算法,大大加快了纹理合成的速度,同时合成效果并没有明显降低。
介绍了传统入侵检测的类型和局限性,指出利用数据挖掘技术可以克服这些局限性。给出了数据挖掘技术的定义、入侵检测模型数据挖掘过程。基于数据挖掘的网络入侵检测技术既能实现异常检测,又能实现误用检测,二者相互弥补,共同完成入侵检测。
随着互联网技术的不断发展,慕课作为一种新型的网络在线课程,对高等教育产生了重大的影响,同时也对高校图书馆提出更高的要求,必须要推动高校图书馆的不断创新和发展。因此,
自动地、按需集成Web Services要求解决高层次目标规划问题和任务分解,要求集成是在概念层次上进行。通过引进带覆盖声明的、单调性的继承机制,建立了一种新的过程本体论模型。
指出了Chen给出的Vague集的贴近度存在的缺陷,并分析了李凡提出的贴近度。在此基础上,引入了Vague集(值)的距离概念,进而引入并研究了Vague集(值)的贴近度,并证明了这一新的贴近度的
利用椭圆曲线密码体制密钥短、安全强度高等特点,结合加密通信和信息隐藏二者的优势以及JPEG2000图像压缩标准,提出了一种基于椭圆曲线的JPEG2000秘密信息隐藏方案。方案对椭圆
Core Dump漏洞影响kernal2.6.13-2.6.17.3的多款Linux操作系统,它可以引发拒绝服务攻击和本地权限提升攻击,危害巨大。恶意进程使用prctl系统调用,通过故意制造Core Dump,可以旁路操作系统安全控制,攻击系统。通过劫持prctl系统调用,对发起系统调用的进程进行行为监视,进而检测攻击,可以有效地阻止和防御攻击的发生。把防御程序编译为可动态插入内核的模块,能在多款
21世纪以来出现的"新力量"导演群体,在电影观念、美学风格、创作思维及生产方式等方面都表现出与第六代导演不同的特点。本文从历史背景与媒介环境、师承源流、主体精神等方
系统研究了合金元素Ti,Ta和Nb对合金系统Ni-16Cr-9Al-2W-1Mo-4Co-(0~4)Ti-(0~4)Ta-(0~4)Nb(at%)热腐蚀行为的影响。结果表明在一定的成分范围内,实验合金在75Na2SO4+25NaCl(体积分数)溶盐中的热腐蚀抗力类似于IN738LC合金。在较高的热腐蚀抗力条件下,合金系列保持了