发布网友 发布时间:2023-06-27 21:35
共1个回答
热心网友 时间:2024-11-24 05:04
2.消息事件
大多数流程都需要通信,这可以通过消息事件在bpmn中表示。消息事件的图标是小信封。消息事件的一般应用如图2.1所示。
图2.1:应用消息事件。
在bpmn中,消息的含义并不仅限于信件、电子邮件或电话。引用特定收件人并代表或包含该收件人信息的任何操作都是消息。例如,在图2.2中,披萨订购问题已经被完全建模:我们选择一个披萨,并订购它。然后我们等待披萨送到。送货后,我们吃东西。注意,这里没有订单披萨任务。
图2.2:作为消息事件订购和获取披萨
图2.3所示的实际上是错误的:所订购的投掷中间事件披萨意味着我们已经订购了一个披萨。如果添加了相应的任务,则会导致双重定义,因此没有意义
图2.3:错误的内容:根据这个流程模型,我们会点两次披萨。
图2.4:附加的消息事件导致任务搜索错误的取消。
在图2.4中,我们显示了一条导致取消的消息。在这个场景中,我们管理一个web应用程序。当用户通知我们网站不工作,我们立即搜索错误。但可能是用户搞错了,网站没有问题。可能用户的互联网连接有问题。如果用户告诉我们错误警报,我们会取消搜索并咒骂用户浪费了我们的时间。但是,如果真的发现了错误,我们就消除它,同时找出是谁造成了错误。如果是用户造成的错误,我们可以用不同的理由咒骂用户。但是,如果用户没有错,我们会非常感谢他或她让我们知道这个问题。
图2.5:我们的约定:发送消息的任务,接收消息的事件
我们的bpmn约定俗成:我们并不总是喜欢中间的投掷活动。在没有显式建模的情况下暗示发送消息任务会很容易迷惑没有经验的模型使用者。我们选择不为消息抛出中间事件,而是使用任务。(参见图2.5),后续文章中会讲解有一些特殊的bpmn任务类型用于发送和接收消息。
本文会持续更新,欢迎关注,技术支持: 盘古BPM