组织一直在努力改进工作方式,以提高效率并减少错误。这需要分析和不断改进其工作方法,其中可能包括在可预测情况下的非常结构化的工作流程,以及响应动态情况的协议,在这种情况下无法规定固定的流程

CMMN是一种图形符号,用于捕获基于处理需要各种活动的案例的工作方法,这些活动可能以不可预测的顺序执行以响应不断变化的情况。使用以事件为中心的方法和案例文件的概念,CMMN扩展了可以用BPMN建模的界限,包括结构化工作量减少和知识工作者推动的工作量。使用BPMN和CMMN的组合允许用户覆盖更广泛的工作方法。

以下是我们在BPMN之外需要CMMN的一些原因:

  • 传统上,商业信息系统的研究和实践侧重于结构良好的业务流程。但是,许多业务流程很难建模。
  • 对于事故管理,咨询或销售等知识密集型任务尤其如此。实际上,许多活动是以临时方式开始和进行的,而不是事先计划好的。
  • 对于知识密集型或基于项目的活动尤其如此,这些活动通常代表组织的核心能力。

特设流程

临时流程是一组业务活动和相应的工件(例如,信息,决策和产品),只能在高级别的聚合中进行标准化。实际的活动种类及其排序因个案而异。

以下是Ad-hoc流程的特征:

  • 虽然可以预测某些活动,但是一开始就无法完全指定大部分过程,因为它需要的信息只能以某种方式进入项目。
  • 如果我们假设在ad-hoc流程的上下文中永远不会确定下一步,则它们的执行不能由传统的基于流程的信息系统控制,在大多数情况下,知识工作者可以控制流程。
  • 似乎不可能在设计时考虑临时过程的所有可能性,这样的过程模型将变得复杂且难以管理

BPMN与CMMN

近几十年来,人们一直关注建模和自动化结构良好的日常流程。BPMN最适用于知识型员工主要执行任务的结构良好且高度可预测的工作,而CMMN涵盖知识工作者在运行时制定决策和计划的积极参与下可预测性较差的部分

案例管理(CM)是van der Aalst于2005年作为知识工作者的工具引入的。2014年5月,OMG发布了案例管理标准,称为案例管理模型和符号(CMMN)。其重点是支持不可预测,知识密集和结构薄弱的流程。案例管理是一种业务流程技术,不使用控制流来描述流程。

案例管理是通过向知识工作者提供有关案件的所有信息的访问权限并赋予他们对案件如何发展的自由裁量权和控制权来赋予他们权力。案件管理不是关于流程,而是关于工人。与经典流程相比,某个目标和提供可供选择的可能性比实现目标本身的方式更重要。

这里列出了BPMN和CMMN之间的差异:

大多数BPMN符号 CMMN表示法
势在必行 陈述
以流程为中心 以数据为中心
弧描述序列 无预定序列
引导工作(低头工人) 使工人(知识工作者)
一切都是模仿的 并非一切都是建模的

声明性表示法不会尝试模拟问题的流程; 他们建立了预期的结果,即指明他们想要发生什么,但不指明它应该如何发生。SQL是声明性编程的一个例子,因为它不会试图控制程序的流程; 它只是陈述了它想要出现的内容,而不是它是如何完成的。

另一方面,命令式表示法试图模拟问题的流程; 例如,命令式编程语言,如Java或C ++,它们建立的命令将告诉编译器他们希望代码如何运行,但不能明确告诉他们想要发生什么。

结构化流程与案例与Ad-Hoc流程

结构化过程 案件 特别程序
  • 结构化的流程活动事先已知
  • 许多重复的元素
  • 在流程方面,人们没有自由度
  • 流程可以部分结构化
  • 活动部分已知
  • 一些重复的元素
  • 人们在流程方面有一定程度的自由
  • 无法构建流程 - 即时执行新任务
  • 活动部分已知
  • 几个重复的元素
  • 关于流程,人们的自由度非常高
可以建模 可以建模 无法建模

设计时间与运行时间

CMMN中没有序列流模型。任务的执行取决于被称为哨兵的事件和条件。哨兵捕获在案件中发生的特定事件的发生或满足的条件。哨兵用作进入和退出标准。请注意,黑色和白色钻石代表标准。

案例有两个不同的阶段,即设计时和运行时,如下所述:

设计时间

在设计阶段,业务分析师参与建模,其中包括定义始终属于案例模型中预定义段的一部分的任务(计划项),以及案例工作者可用的“自行决定”任务。任选地根据他/她的判断应用。

运行

在运行时阶段,Case工作人员通过按计划执行任务来执行计划,并可选择在运行时向案例计划实例添加任意任务。

CMMN图表概览

此示例说明了使用CMMN建模的纸张写入过程。假设论文写作是一项密集的知识工作,可以用不同的方式处理。让我们进一步研究这个例子如下:

  1. 流程有两个必须达到的里程碑:

    • 草稿已完成
    • 文件已完成
  2. 几个任务(例如创建TOC)由作者自行决定。
  3. 使用“ 写入文本”和“ 集成图形”任务准备草稿阶段是必需的。
  4. 这个阶段定义了重复规则,它由重复装饰符(即哈希)表示。
  5. 虽然研究主题是一项强制性任务,但任务组织引用将在运行时决定。它类似于创建图形生成数字列表
  6. 创建文档达到截止日期后,将完成流程。

*摘自OMG案例管理模型和表示法规范

注意

  • 使用“文件夹”形状描述案例计划模型
  • Case的名称可以包含在左上角的矩形中。
  • 案例计划模型的各种元素描述在案例计划模型形状的边界内。
  • 该图显示了案例计划模型的示例。

CMMN的基本概念

案例计划模型中捕获案例的完整行为模型。对于特定案例模型,案例计划模型包含表示案例初始计划的所有元素,以及通过案例工作者通过运行时计划支持计划进一步发展的所有元素。计划项目有四种类型:

任务

任务是一个工作单元。有三种类型的任务:

任务(计划项目) 图形符号

人工任务 - 由案例工作人员执行的任务,他们可以是:

  • 阻止:任务正在等待,直到与任务相关联的工作完成
  • 非阻塞:在实例化时,任务不等待工作完成并立即完成

流程任务 - 可以在案例中用于调用业务流程

案例任务 - 可用于调用另一个案例

任务(任意任务)

任务始终是Case模型中预定义段的一部分。除了任务之外,Case工作人员还可以使用Discretionary Tasks,可以根据他/她的判断任意应用。自由裁量任务由带有虚线和圆角的矩形形状描绘/请注意,任何任务类型都可以自行决定:

酌情任务 图形表示法(右侧的任意任务)

自由裁量的人类任务

酌情人类任务(非阻塞)

酌情处理任务

酌情案件任务

事件听众

事件是在案例过程中发生的事情。例如,阶段和任务的启用,激活和终止,或里程碑的实现。

事件监听器 符号

一个定时器事件监听器用于捕获预定义的时间流逝。

一个用户事件监听器是用来捕捉由用户引发的事件。通过这种方式,用户可以实现与案例进行的直接交互,而不是通过执行任务来影响案例文件中的信息。

里程碑

里程碑表示可实现的目标,其定义为能够评估案例的进展。没有工作与里程碑直接相关,但完成一组任务或关键可交付成果的可用性(案例文件中的信息)通常会导致实现里程碑。里程碑可以具有零个或多个进入标准,其定义达到里程碑时的条件。

例如,我们在兼容流程中有一个服务水平协议(SLA),可以使用计时器事件监听器和里程碑建模,如下所示。

阶段和自由裁量阶段

  • 阶段可以被认为是案例中的“阶段”,并且通常将许多任务分组。
  • 它是一个元素的容器,从中构建了案例的计划并且可以进一步发展。
  • 阶段可能被视为案例的“剧集”。它们可以被视为子案例(类似于BPMN中的子流程),它们也可以并行运行。
  • 舞台由具有角形角的矩形形状和在其底部中心的小盒子中的“ - ”符号形式的标记描绘(“ - ”表示扩展阶段)。
  • 自行决定阶段可以由用户自行决定“任选”,“临时”添加到计划中。

下图显示了一个展开的舞台,其中包含一个子舞台和三个任务。

标准

标准允许我们描述任务,阶段或里程碑何时应该可用于执行(进入标准),或何时案例(案例计划),阶段或任务应该异常终止(退出标准)。Criteria有以下两个可选部分:

  • 一个或多个触发事件(称为onParts)。这些事件将满足入门标准或退出标准的评估

我们可以考虑形成句子的标准如下,

([ on < Event 1 >[, on < Event 2 >[, . . .]] ]) AND ([ if < Boolean condition > ])

注意:

  • 方括号([])表示句子的可选部分,而有角度的括号(<>)是要替换的占位符。
  • onPart和ifPart在句子中都是可选的,但是要理解它至少必须存在其中一个。

入学标准

条目标准描述了可供执行的阶段,任务或里程碑必须满足的条件。没有条目标准的阶段,任务或里程碑将在创建后立即执行。输入条件可以放在舞台,任务或里程碑边界的任何位置。

在下面的示例中,产品投诉和服务投诉这两个阶段都需要一个入门标准,因为它们只能在投诉类型的情况下执行。在大多数情况下,两个阶段中只有一个会执行,但在某些情况下,投诉可能涉及两个阶段。

退出标准

退出标准类似于条目标准,但它用于在满足时停止处理阶段,任务或案例(案例计划)。在投诉过程中,我们将为案例添加退出标准。在这种情况下,客户致电并取消投诉,因此我们需要停止处理案件。我们通过提供取消案例文件项来模拟这种情况,该项目可以是客户电话的录音或来自客户的信件。

案例档案

在CMMN中,每个案例实例包含一个案例文件(也称为案例文件夹,或只是案例),案例工作者可以访问该案例文件中的所有数据。只要具有足够的权限,案例工作者就可以添加,删除和修改案例文件中的数据,即使他们没有在案例中执行任何任务。案例文件中的数据称为案例文件项。

所有数据和数据结构都称为案例文件项。所有案例文件项都存储在案例文件中。案例文件项用于表示各种数据,包括数据库中的数据值,数据库中的行,文档,电子表格,图片,视频,录音等。除基本数据外,案例文件项也可以表示容器,包括目录,文件夹,集合,堆栈,列表等。

规划表

阶段或人工任务可以具有计划表,指示是否可视化( - )或(+)可自由选择的项目。当用户“扩展”计划表时,其包含的可自由支配的项目在阶段内或人工任务外部可见。对于与人工任务关联的自由选项,计划仅在任务的活动状态下可用。

相关链接

  1. 最好的CMMN建模工具
  2. 免费试用Visual Paradigm

  • 统一建模语言(UML)

    • 什么是UML?
    • 为什么选择UML?
    • 14种UML图类型概述
    • 什么是类图?
    • 什么是组件图?
    • 什么是部署图?
    • 什么是对象图?
    • 什么是封装图?
    • 什么是复合结构图?
    • 什么是剖面图?
    • 什么是用例图?
    • 什么是活动图?
    • 什么是状态机图?
    • 什么是序列图?
    • 什么是通信图?
    • 什么是交互概述图?
    • 什么是时序图
    • 什么是UML协作图?
    • UML关联与聚合与组合
    • UML类图教程
    • 状态机图与活动图
  • 系统建模语言(SysML)
    • MBSE和SysML

什么是案例管理模型和符号(CMMN)相关推荐

  1. 怎么才能做好团队管理|方法论加模型案例(附常用管理模型、人员架构图)

    这篇老付要讲一个老生常谈但是又千古难解的话题:团队管理.作为一个互联网人士,要把自己关于团队管理的想法说透,真是比前面几篇都更有挑战性.为了达到最好效果,老付分别找了5-6个不同企业性质和团队规模的创 ...

  2. Spring Security 中最流行的权限管理模型!

    前面和大家说了 ACL,讲了理论,也给了一个完整的案例,相信小伙伴们对于 ACL 权限控制模型都已经比较了解了. 本文我要和大家聊一聊另外一个非常流行的权限管理模型,那就是 RBAC. 1.RBAC ...

  3. 任务导向型对话系统——对话管理模型研究最新进展

    作者丨戴音培.虞晖华.蒋溢轩.唐呈光.李永彬.孙健 单位丨阿里巴巴-达摩院-小蜜Conversational AI团队,康奈尔大学 对话管理模型背景 从人工智能研究的初期开始,人们就致力于开发高度智能 ...

  4. 深度前沿:对话管理模型研究最新进展

    简介: 从人工智能研究的初期开始,人们就致力于开发高度智能化的人机对话系统.对话管理模型研究最新进展源于前沿的深度的研究. 作者: 戴音培1.虞晖华2.蒋溢轩2.唐呈光1.李永彬1.孙健1 单位: 阿 ...

  5. 小蜜团队万字长文 | 讲透对话管理模型最新研究进展

    对话管理模型背景 从人工智能研究的初期开始,人们就致力于开发高度智能化的人机对话系统.艾伦·图灵(Alan Turing)在1950年提出图灵测试[1],认为如果人类无法区分和他对话交谈的是机器还是人 ...

  6. 上云,你需要了解的账号管理模型

    摘要:越来越多的企业客户开始迁云,然而客户上云后所反馈最多的一类问题就是云资源的管理问题.究其原因,我们发现本质问题是企业上云的云账号规划问题.于是产出本文,首先介绍阿里云账号的基本概念及其功能,然后 ...

  7. 五个思路,教你如何建立金融业的数据分析管理模型

    说起银行.保险.股票投资这样的金融行业,很多人都认为它们是依靠数据驱动的企业,毕竟大数据的诞生本来就是为了金融信息流通而服务的,但在我身边很多搞证券.投资的朋友看来,事实却并非如此. 真正在金融行业做 ...

  8. 跟着石头哥哥学cocos2d-x(三)---2dx引擎中的内存管理模型

    2019独角兽企业重金招聘Python工程师标准>>> 2dx引擎中的对象内存管理模型,很简单就是一个对象池+引用计数,本着学好2dx的好奇心,先这里开走吧,紧接上面两节,首先我们看 ...

  9. 虚拟化---简单高效的IT管理模型

    很多人认为云计算就是虚拟化,虚拟化就是云计算.笔者虽然并不认同这个观点,但绝对赞同虚拟化技术在云计算众多关键技术中有一席之地,而且是非常重要的关键技术. 维基百科对虚拟化的定义是:虚拟化是表示计算机资 ...

最新文章

  1. 原 史上最简单的SpringCloud教程 | 第八篇: 消息总线(Spring Cloud Bus)(Finchley版本)
  2. linux中查看日志技巧,日志查看技巧之筛选[linux命令集][排查篇]
  3. left join on in
  4. [USACO1.2]挤牛奶Milking Cows
  5. Screen会话命令 Linux
  6. python linux编程与window编程_Python3如何在Windows和Linux上打包
  7. UVA572 Oil Deposits DFS求解
  8. 使用Spock测试您的代码
  9. 软件工程个人作业03—找水王
  10. stringwriter_Java StringWriter toString()方法与示例
  11. java重载中this的作用_Java2:构造方法、方法重载和this关键字
  12. Java 中如何实现保留两位小数 — DecimalFormat
  13. Asp.net服务器端控件替换客户端控件
  14. eclipse 类文件编辑器找不到源的问题
  15. Lottie动画的优劣及原理
  16. 浪涌保护器ant120_菲尼克斯浪涌保护器
  17. 计算机安装xp蓝屏怎么办,win7系统下装xp出现0x0000007B蓝屏解决方法|win7改装xp系统怎么设置BIOS...
  18. 基于ndis protocol driver 后门 分析
  19. 犹豫许久还是在 CSDN(程序员之家) 开通了自己的第一个博客
  20. Word2016如何去掉首页页码并从任意也开始页码

热门文章

  1. 给FLASH加链接的方法
  2. python简单的绘制折现图
  3. [CCS][sysconfig] 图形化工具的使用说明
  4. CIKM2022推荐系统论文集锦
  5. FPGA与单片机之间的数据通信
  6. java关于hashmap编程题_在Java中,关于HashMap类的描述,以下说法错误的是( )。...
  7. Android关系型数据库应用——电话(短信)黑名单
  8. 纯javascript的HTML在线编辑器
  9. w指令中的IDLE是什么意思
  10. js简单实现一个json格式化功能