workflow - 如何表示由系统自动化的 BPMN 工作流的一部分?

标签 workflow modeling bpmn

我正在记录一个用户工作流程,其中部分流程由系统自动执行(例如,如果订单数量少于 10,则立即批准订单,而不是将其发送给员工进行审查)。

我有从一个人到另一个人的泳道,但不确定我在哪里可以适应这个系统任务/决策路径。最佳做法是什么?可能是个愚蠢的想法,但我倾向于创建一个新的泳道并将其称为“系统”。

有什么想法吗?

最佳答案

将系统任务分离到单独 channel 的方法是很有可能的,因为 BPMN 2.0 规范没有明确指定 channel 的含义并说了类似的话:

Lanes are used to organize and categorize Activities within a Pool. The meaning of the Lanes is up to the modeler. BPMN does not specify the usage of Lanes. Lanes are often used for such things as internal roles (e.g., Manager, Associate), systems (e.g., an enterprise application), an internal department (e.g., shipping, finance), etc.

所以你可以完全自由地用你想要的任何东西来填充它们。
然而,你的情况很明显,根本不需要这样的分离。根据您的描述,我们有典型的条件事件,可以通过服务任务或子流程来表达。这是两种不同的方法,它们具有不同的语义。

  • 根据 BPMN 规范,服务任务 是使用某种服务的任务,可以是 Web 服务或自动化应用程序。即它是通常在建模者不想分解某些过程并打算将其外包给某些外部工具或代理时使用。

  • 另一杯茶是子流程,它通常在您 想要包装一些复杂的工作流程以供重用或者如果那 工作流程的一部分可以分解为子元素

在您的用例中,子流程是一种选择。它具有高度可调节性、透明性和可维护性。例如,在子流程中,您可以为您的条件参数(订单数量)使用业务规则引擎,并在运行中灵活调整其值。 您可以从 this blog 中更详细地了解这些方法的区别。 .

关于workflow - 如何表示由系统自动化的 BPMN 工作流的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35485797/

相关文章:

workflow - JIRA Greenhopper - 如何在工作流转换的后期函数中设置类型为 'Flagged' 的 “Multi-Checkboxes” 自定义字段

analysis - 如何使用 SALib 对 ODE 执行灵敏度分析?

java - Activiti BPMN 引擎 : store custom property in Database

.net - 有适用于 .NET 的 BPMN 2.0 解析器吗?

java - 在微服务中用Activiti生成聚合层是否明智

email - 在特定日期和时间发送电子邮件的 SharePoint 工作流

workflow - 请确认 : Is Windows Workflow Foundation a good horse to be backing right now?

c# - 在贷款请求场景中推荐哪种工作流技术?

3d - 什么是好的免费骨骼动画模型格式?

r - 使用 R 进行机器学习多标签文本分类