• 工作流运转模型


    1流程单起点单终止模型

    单起点:一个流程定义必须有且唯一起点

    单结束点:一个流程定义必须有且唯一结束点。

    约定:提单与结束是每个流程必须有的活动,且唯一只有一个提单和结束。

    2串行模型

     

    描述:串行(Sequence)是最为简单,也最为容易理解的模型。按照预定的任务列表,有序的执行。

    3自循环模型

     

    描述:一个步骤可以自己再次发给其它人员但步骤是同一个。同一个任务节点,重复的执行多次。

    又分两种类型:

    1、  自由循环FreeCycle

    在任务执行后由人为的决定是否继续重复的执行这次任务(自由度大)

    2、  联合审批循环JointCycle

    在任务执行后照设定的规则,决定是否重复执行。(通常这种情况是联合顺序审批,即第一个人审批完后下一步还是发给这个步骤但审批人设定好的人,直至最后一个人审批时再通向下一步)

    4会签模型

     

    描述:并行会签(Parallel),也叫“And 模式”。是说在流程运行过程中,因为不同的条件或情况,或者处理的业务需要多部门(多任务)分开处理,而产生了流程分支。并行开始步骤必须与汇聚步骤成对存在。都执行完(到达And汇聚点)后,才能激活后续的任务,也就说流程才能正确的往下运行。

    注意:并行步骤与并行汇聚步骤需要配套成对存在。不允许AndSplit与OrJoin模式。

    5发散聚合模型

     

    发散模型与并行模型类似,只是必散的下一步骤列表可一个或任意多个,聚会步骤也是可任一个或任何多个根据规则。

    有可能不是“同时聚合”

    聚合表示的是:在聚合点,会等待所有分支的到来,如果不考虑超时(一般流程回

    设定任务执行期限)和异常等情况下,流程必须等待所有的分支(Task B和Task C)都执行完(到达And汇聚点)后,才能激活后续的任务,也就说流程才能正确的往下运行。

    这里面会涉及到如何聚合的问题,是人工聚合,还是自动聚合。一般这里会引入规则引擎(Rule Engine)来负责分支的聚合,按照预定的规则,将流程数据(状态)汇聚。

    聚合规则:聚合步骤不一定前面是发散步骤只要达到聚合条件则转向下一步。

    聚合步骤相对独立,对于所有迁入者进行规则计算,可以指定哪些前继必须都到达才能产生该步骤的待办,其它为前继为可选到达项。先到先计算,符合聚合条件则产生待办,其它未到达的分支将调用任何回收器回收后被抛弃。

    等待所有条件满足后聚合步骤而产生任务待办,聚合步骤也是一个处理步骤,只是处理人必须是任一人响应方式。

     

    三类聚合规则

    同步聚合MergeAnd

    异或聚合: MergeXOR

    多重聚合:MergeOR

     

    l  A、B、C、D必须全部到达(all),all代表所有步骤

    l  A、B、C、D任意一个到达(*),*号代表任一步骤

    l  A、B必须到达,C为可选A&B

    l  A、C必须到达,B为可选A&C

    l  A、B必须到达,C为可选A&B

    l  A、B至少有一个到达C为必到达(即在一个集合中至少有N个到达)(AB,1)&C

    l  A、B、C只要有一个到达(ABC,1)

    l  ABD集合中必须要有A,而整个集合至少有2个到达,运用的规则为第一条,(ABCD,2)&A

    6异或(独占)模型

     

    描述:异或(XOR)又叫Exclusive Choice(独占式选择)当一个任务处理完后,发现其后面可允许走多个分支流程,但只允许选择其中某一个分支运行。虽然在任务Task A 后预订了三个不同的任务,但是仅Task D 满足条件一般为人工操作选择,也存在根据规则自动选择分支,造成后续的流程中,走了A——D 分支,而另外的分支被抛弃。

    7回退模型

    1.7.1 退回

    回退,在有的应用中叫“退回”。

    如下图所示,有任务A到任务B 属于正常发送,但从任务B到任务A,则出现两种情况:

    (1)迁移退回:正常发送,如图中B—A黑色线;

    (2)被退回:可能因为某些特殊原因,被任务B退回,要求任务A重新办理,如图中B—A红色线。虽然都是从B到A,代表的意义却完全不同。

     

    1.7.2 退回到提单

    可设置是否仅退回到提单。

    1.7.3 退回任意历史步骤

    这里要控制好并行的问题,在并行分支中的活动只能退回并行中的步骤,而不能退回到并行前的步骤,因其它分支的流转还在继续当中。包括迁移退回也不能如此设计。

    1.7.4 不可退回模型

     

    外部活动不可退回也不可迁移退回到发散聚合模型的中间或并行会签模型中间的活动。

    并行内部的退回只能在内部发生

    发散内部的退回只能在内部发生

     

    8自动分组并行模型

     

    描述:可以根据选择一批参与者系统自动根据参与者的部门进行分组产生N个分支,每条分支上的审批步骤是一样的。

    9任务分发模型

    描述:分发回收即没有后续步骤,是一个分发回收自循环步骤,像发作业本一样,班主任发给班长,班长现发给组长,最后由组长再发给组员,然后做完作业,由组员交给组长,组长交回给班长,班长交给班主任最后发散结束。

    10 自动活动模型

    描述:自动模型,又叫鉴别Discriminator Choice。多了一个鉴别器(Discriminator)或者叫自动选择模型。当任务达到这个鉴别器的时候,鉴别器会根据当前流程所处的状态,对比预先设定的一些选择规则,自动判别接下来流程的流向,也就是自动根据条件,选择一个满足条件的分支运行。即自动步骤。

    鉴别规则做在活动上。

    11传阅及自动转阅模型

    11.1 描述

    传阅不影响流程的流转,被传阅的对象只是会收到一条只看的待阅实例,获取打开些流程实例的查看详细表单信息的权限。所有传阅的记录过程将显示在工单的详细里面。记录下传阅过程。

    11.2 手动传阅

    在待办人打开待办界面可以传阅给指定的人员。

    11.3 自动传阅

    可以设置在进入指定步骤时自动转阅给预先设定的人员。

    11.4 相关界面

     

     

    12转交模型

    12.1 描述

    可以转交给其它人协助处理,每个步骤可以定义是否允许转交。

    13等待子流程模型

    描述:在这种方式下,当子流程运行的时候,主流程会暂停,等待子流程的完结。

     

    14主子流程并行聚合模型

     

    描述:激活子流程后,主流程并没有停止,而是基于按照预定的流程方向运行;同时,激活后的子流程也同样处于软转状态。当到达聚合步骤时如果有一方未到达的情况下,另一方会等待。当然,这其中可能涉及到等待超时等不良因素,这时候主流程时选择继续等待,还是发催办消息,还是继续运行,就是工作流引擎的设计问题了。

    15外嵌子流程模型

    描述:在主流程激活子流程后,主流程继续运行,且不关心子流程的运行状态或运行结果。这种方式使用活动完成时触发事件引发子流程的启动。

     

    虽然还有更多的模型。。。个人认为这15种模型基本满足无论是简单还是复杂的流程应用了。

    如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】按钮。
    因为,正在专注写好每一篇博文的热情也离不开您的肯定支持。

     
     
    F2.Net工作流引擎系列
    “F2工作流引擎”是作者本人研发的符合中国国情不依赖任何第三方框架的工作流引擎,支持多种数据库(MMSQL、Oracle、MySql),遵循WFCM规范,实现业务流(BPM)的智能性、灵活性、简单实用性,具有强大的扩张性、集成性、独立性、开放性和稳定性,实现了可视化的流程设计,流程的定制完全是通过鼠标拖、拉、拽的方式来完成,常见的串行、并行、分支、聚合都可以非常方便快捷地实现,依托于工作流强大的自定义,管理员还可以随时根据企业的情况调整流程,真正做到企业流程的不断优化。
    F2工作流引擎之 工作流运转模型(三)
    摘要: 运转模型是工作流的内核流转模型,基本上决定了你的工作流支持的力度,和运转力度,虽然WFMC文档也有详细说明相关流转模型,但本文是本人经日积月累本着精益求精的精神而沉淀归纳抽取出来的,并做了详细的思路实现设计。阅读全文
    posted @ 2014-04-11 23:35 F2Flow 阅读(61) | 评论 (0) 编辑
     
    F2工作流引擎之 概述(一)
    摘要: F2工作流引擎遵循参考WFCM标准规范,符合中国国情特色,更轻量级的工作流引擎阅读全文
    posted @ 2014-04-11 22:51 F2Flow 阅读(15) | 评论 (0) 编辑
     
    F2.Net工作流引擎系列索引
    摘要: F2.Net工作流引擎系列索引,为了方便阅读查看持续出品的工作流引擎相关博客文章,整理一个目录索引。阅读全文
    posted @ 2014-04-11 22:29 F2Flow 阅读(8) | 评论 (0) 编辑
     
    F2工作流引擎这工作流引擎体系架构(二)
    摘要: 为了能更好的了解F2工作流引擎的架构体系,花了些时间画了整个架构的体系图。F2工作流引擎遵循参考WFCM规范,目标是实现轻量级的工作流引擎,支持多种数据库及快速应用到任何基于.net管理系统,实现工作流审批、业务流(BPM)的智能性、灵活性、简单实用性,具有强大的扩张性、集成性、独立性、开放性和稳定性,实现了可视化的流程设计或优化,流程的定制完全是通过鼠标拖、拉、拽的方式来完成,常见的串行、并行、分支、聚合都可以非常方便快捷地实现,依托于工作流强大的自定义,管理员还可以随时根据企业的情况调整流程,真正做到企业流程的不断优化。图形化、可视化设计流程定义通过Web端纯JS流程设计器无需编程的“拖、拉”式图形用户流程设计环境,支持通用流程条件,多节点,多流向阅读全文
    posted @ 2014-04-11 13:44 F2Flow 阅读(60) | 评论 (0) 编辑
     
    IT的灵魂是流程,流程的灵魂是业务,业务的灵魂是战略
    摘要: IT的灵魂是流程,流程的灵魂是业务,业务的灵魂是战略。高效的IT平台不在于IT技术,而在于好的管理模式与流程设计从以组织为核心转向以流程为核心流程管理核心是从流程角度出发,关注流程是否增值,籍此建立一套统一标准的企业管理体系。阅读全文
    posted @ 2014-03-20 21:09 F2Flow 阅读(8) | 评论 (0) 编辑
     
    F2工作流引擎模型
    摘要: 工作流引擎(Workflow Engine )[编辑]工作流引擎概述 工作流引擎是指workflow(工作流)作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案。 例如开发一个系统最关键的部分不是系统的界面,也不是和数据库之间的信息交换,而是如何根据业务逻辑开发出符合实际需要的程序逻辑并确保其稳定性、易维护性(模块化和结构化)和弹性(容易根据实际业务逻辑的变化作出程序上的变动,例如决策权的改变、组织结构的变动和由于业务方向的变化产生的全新业务逻辑等等)。 Workflow 引擎解决的就是这个问题:如果应用程序缺乏强大的..阅读全文
    posted @ 2014-03-12 20:56 F2Flow 阅读(29) | 评论 (0) 编辑
     
    【原创】MVC4+Jquery+EasyUI实现的工作流平台
    摘要: 最近把工作流从传统的WebFrom上迁移到我的MVC4安全权限基础框架中,感觉非常不错MVC4在各方面给用户的体验确实跟以前传统的WEB是质的提升。由于后面要做基于工作流技术的ERP,所以需要先把工作流引擎迁移过来。先来几张图吧。有了工作流是如虎添翼。对于任何管理系统来说,最核心的也就是有一个非常好的安全权限基础框架和轻量级的工作流引擎,这样你做任何其它都是只要专注业务逻辑功能的开发了。自主研发符合WFMC的工作流平台,MVC4实现。欢迎访问我的工作室了解更多: www.soogrand.com阅读全文
    posted @ 2013-07-19 21:48 F2Flow 阅读(1351) | 评论 (4) 编辑
     
     
    工作流平台概要介绍
    摘要: “F2工作流”是作者本人自主研发符合中国国情的新一代智能工作流引擎、工作流平台,遵循WFCM规范,目标是实现新时代信息智能化协同管理,实现工作流审批、业务流(BPM)的智能性、灵活性、简单实用性,具有强大的扩张性、集成性、独立性、开放性和稳定性,实现了可视化的流程设计或优化,流程的定制完全是通过鼠标拖、拉、拽的方式来完成,常见的串行、并行、分支、聚合都可以非常方便快捷地实现,依托于工作流强大的自定义,管理员还可以随时根据企业的情况调整流程,真正做到企业流程的不断优化。企业实施工作流管理所带来的好处是非常明显的,这包括提高企业运营效率、改善企业资源利用、提高企业运作的灵活性和适应性、提高工作效率阅读全文
    posted @ 2012-05-10 17:29 F2Flow 阅读(320) | 评论 (0) 编辑
     
    【原创】源智工作流并行开始步骤模型
    摘要: 会签(并行)是指联合行文时,由各发文机关的领导共同签发文件。在管理系统中的会签流程,例如公司职员离职、大学生毕业离校都要在不同的部门去签字确认,这里去哪个部门签字没有顺序之分,但所有部门签字完毕后才可以离职或离校。 可以指定后继步骤哪几个步骤必须并行,至少两个以上。并行开始步骤可以灵活与聚合步骤结合,达到多种配置的会签模式。并行开发步骤一定有聚合步骤与之对应。场景l A、B、C、D全部必选 (all),all代表所有后继步骤(all)l A、B中必选其中一个C必选(AB,1)&C规则l 并行开始步骤(多个后继步骤的集合,至少N>=1个以上必选择)阅读全文
    posted @ 2012-05-10 17:24 F2Flow 阅读(131) | 评论 (0) 编辑
     
    【原创】源智工作流聚合步骤模型
    摘要: 聚合步骤相对独立,对于所有迁入者进行规则计算,可以指定哪些前继必须都到达才能产生该步骤的待办,其它为前继为可选到达项。先到先计算,符合聚合条件则产生待办,其它未到达的分支被抛弃。聚合步骤也是通常所说的会签结束步骤,但比会签结束步骤更加灵活配置。同时聚合步骤是一个自动步骤,等待所有条件满足后就自动按规则发住下一步骤。场景l A、B、C、D必须全部到达(all),all代表所有步骤l A、B、C、D任意一个到达(*),*号代表任一步骤l A、B必须到达,C为可选A&Bl A、C必须到达,B为可选A&Cl A、B必须到达,C为可选A&Bl A、B至少有一个到达C为必到达(即在阅读全文
    posted @ 2012-05-10 17:20 F2Flow 阅读(99) | 评论 (0) 编辑
     
    【原创】源智工作流流程定义过程描述语言
    摘要: 1 <?xml version="1.0" encoding="utf-8" ?> 2 <workflow workflowName="采购审批流程" workflowId="" owner="" enabled="true" isCurrent="true" version="1" workflowMap="xxx/xx.jpg" defaultShowFlowMap="false&qu阅读全文
    posted @ 2012-05-08 14:30 F2Flow 阅读(119) | 评论 (0) 编辑
     
    【原创】源智工作流流转模型
    摘要: 开博以来一直没什么时间把写博客,这些天设计了工作流的流转模型,这是设计工作流首先需要考虑到的。后续还会继续把一个完整的工作流引擎设计发出来。自己喜欢研究工作流引擎和智能表单,在这里也可以作为知识的积累。请勿转载,欢迎交流!QQ:1311663711阅读全文
    posted @ 2012-03-26 20:37 F2Flow 阅读(150) | 评论 (0) 编辑
     
    自己开发流程引擎和流程平台好处
    摘要: 自开发方式可以达到很高的灵活度,可以适合中国特色的企业需求;自开发方式对微软依赖小,只需懂html编程和脚本编程就可以,程序员不需要掌握太多的技术,工作流可以作为公司的核心技术,提高公司的竞争力,流程引擎可以单独提炼出来,可以内嵌到任何已有系统中。自开发工作流平台是一件一劳永逸的事情,开发时投入比较大(但总比使用wf二次开发投入要小),对程序员的要求比较高,一旦完成,对使用该平台的程序员要求比较低只需会做网页,会使用配置工具即可。但自开发带来的灵活性是无法比的。阅读全文
    posted @ 2012-02-07 14:51 F2Flow 阅读(227) | 评论 (0) 编辑
     
    任务与活动
    摘要: 活动(Activity)是WMFC 的标准模型元素,描述的是工作流中的一个活动——“Adescription of a piece of work that forms one logical step within a process”。在XPDL 的规范中,Activity 已经是描述流程远转的最小单元。在本文中,我采用的是“任务”(Task)概念。在描述业务中,一个任务表示的是流程的所需要完成的某一项工作,这项工作可能是一次操作(Action)即可完成,也可能是几次操作的组合。其有些像XPDL 中的Block Activity。但请注意,不等简单的等同,这个在模型构建的时候,是个“划分粒阅读全文
    posted @ 2012-02-07 13:41 F2Flow 阅读(44) | 评论 (0) 编辑
     
    工作流规范WfMC是什么?
    摘要: 该领域的代表规范就是工作流管理联盟( Workflow Management Coalition , WfMC )发布的。 1993 年, WfMC 的成立标志着工作流技术开始进入相对成熟的阶段。为了实现不同工作流产品之间的互操作, WfMC 在工作流管理系统的相关术语、体系结构及应用编程接口等方面制定了一系列标准。 WfMC 给出的工作流定义是:工作流是指整个或部分经营过程在计算机支持下的全自动或半自动化。在实际情况中可以更广泛地把凡是由计算机软件系统(工作流管理系统)控制其执行的过程都称为工作流。详细说明 WfMC 参考模型接口 1 早期的规范为 WPDL ( Workflow Proce阅读全文
    posted @ 2011-12-16 12:37 F2Flow 阅读(1435) | 评论 (0) 编辑
  • 相关阅读:
    堆表、AO表 行存列存
    PostgreSQL/PPAS CPU使用率高的排查及解决办法【转】
    GP 锁表查询
    gp 日常使用脚本
    常用gp_toolkit监控语句
    DG 参数详解
    Flask 中路由系统
    实例化Flask的参数 及 对app的配置
    Flask 中内置的 Session
    Flask中request参数
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3659850.html
Copyright © 2020-2023  润新知