组织一直在努力改进工作方式,以提高效率并减少错误。这需要分析和不断改进其工作方法,其中可能包括在可预测情况下的非常结构化的工作流程,以及响应动态情况的协议,在这种情况下无法规定固定的流程。
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 ++,它们建立的命令将告诉编译器他们希望代码如何运行,但不能明确告诉他们想要发生什么。