消息是一个基本的 bpmn概念, 是不同流程参与者之间通信的内容。通信本身称为消息流。它显示了两个通信参与者之间的交互, 他们由两个单独的池表示。
消息流必须将两个单独的池或一个池的对象与另一个池的对象连接。它无法连接一个池中的两个对象。
从图形上看,消息流是带有打开箭头的虚线。虚线将其与 “序列流” 区分开来, 序列流以图形方式显示为带有箭头的连续线。
图19。流程图中的消息流
例如, 以 “接收订单” 过程为例, 其中客户和供应商之间的通信可以通过以下方式表示:
图20。池之间的消息流
消息流不显示进程的流, 它指示信息在两个进程之间或在进程和外部实体之间发送。外部实体是不属于您的 bpm 系统的参与者。
图21。消息流使用示例
图21提供了如何使用消息流的示例:
-
消息流触发进程。
消息流1从外部实体中取出, 到达进程的 “开始” 事件, 并将其触发以启动。
当客户在公司网站上下订单时, 将启动 “流程订单” 过程。在关系图中, 这种交互由 “仅使用消息标记” 表示 (您可以在本教程的第2课中找到有关此 bpmn 元素的详细信息)。 -
消息流将进程活动中的信息传递给外部实体.
因此, 消息流2退出了供应商的 “协调价格” 任务, 进入外部实体的池;消息流退出了供应商的 “交付产品” 任务, 并进入外部实体的池。
供应商考虑订单后, 向客户发送所订购货物的总价。此外, 当产品准备好交付时, 供应商将向客户发送相应的消息。在这两个示例中, 客户池都是外部实体。 -
消息流将外部实体的信息传递到进程的活动.
消息流3来自客户的池 (外部实体), 并输入供应商的 “协调价格” 任务。
客户考虑价格, 然后发送他或她是否同意这个价格的信息. -
消息流将一个进程的活动的信息传递到另一个进程的活动.
消息流4和5显示不同流程的两个任务 (“流程顺序” 和 “完成顺序”) 之间的通信。
示例1、2和 3 (客户支持池参与的地方) 只能在不可执行的分析图中使用, 因为客户不属于您的 bpm 系统。
您可以选择使用**“消息**” 对象扩展**“消息流**”, 以表示从一个参与者发送到另一个参与者的信息:
图22。参与者之间的消息流, 并附加消息
"消息" 是两个参与者之间对话的内容。此对话是通过特殊活动、发送消息和接收消息来执行的。
接收消息是一项简单的任务, 它等待来自外部参与者的消息到达。如果至少收到一次消息, 则认为此任务已完成。
从图形上看, "接收消息" 任务显示为圆角矩形, 它是bpmn中任务的典型表示形式。接收消息任务由一个空信封标记进行区分。
图23。在流程图中接收消息活动
发送消息是一项简单的任务, 它向外部参与者发送消息。如果消息至少发送一次, 则认为任务已完成。
从图形上看, "发送消息" 任务也显示为圆角矩形, 并通过填充信封标记对其进行区分:
图24。在流程图中发送消息活动
您可以在bpmn 规范中了解有关消息和消息流的详细信息。
实用作业
为了测试您对第4课和第5课材料的学习情况, 我们为您提供完成以下任务。
使用第4课和第5课中研究的 bpmn 元素 (子流程和接收发送消息) 对 “商务旅行” 过程进行建模。
对于流程建模, 我们建议您使用elma 设计器。您可以在这里下载免费的演示版本。安装后, 您将需要**系统 (有关演示版本, 请参阅 elma 快速入门手册)。如果您在安装或**系统时遇到任何问题, 请 [email protected] 与我们联系。我们将很乐意为您提供帮助。
要检查自己, 您可以下载我们的版本的过程作为一个 xml 文件, 并将其导入到您已安装的 elma 演示中。
通过示例学习
此BPM示例涉及企业对企业协作。因为我们想要明确地模拟披萨客户和供应商之间的交互,我们将它们归类为“参与者”,从而为他们提供专用池。
您可以编辑此BPMN图表模板以反映您自己的组织。只需单击“ 使用此模板”即可启动。
bpmn 工具
具有强大Visual Paradigm BPMN软件的业务流程设计 - 使用专业的BPMN工具传达业务流程创意。