微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

循环的活动图迭代固定次数,如果迭代结束则指向不同的活动

如何解决循环的活动图迭代固定次数,如果迭代结束则指向不同的活动

我开发了以下活动图。

客户被要求付款,如果他在 5 天内没有付款,公司会打电话给客户并了解他是否还需要上课。但是,我想重复我们检查是否在 5 天内收到付款并致电客户进行更新的循环,因为公司会容忍 3 次,否则预订将被取消。但是,我不确定如何在我的活动图上可视化这一点。

enter image description here

解决方法

遵循您的初步尝试

一种简单的方法是在您的 Payment received witin 5 days / No 分支上添加一个新的决策节点:Customer already contacted 3 times,其中 No 将继续调用初始流程,而 Yes 将导致Cancel booking

enter image description here

这假设您有一个计数器,记录每个付款请求的调用次数。

在您的叙述中,我们看到第一个调用和后续调用之间存在差异。在我看来,这种差异应该在 Contact client by phone 内处理,不需要任何特殊照顾。但是,如果活动在初始调用和为提醒采取的操作之间差异更大,您可能需要考虑更复杂的分支。但原则是相同的:您将使用几个决策节点来检查调用计数器。

另一种方法

实际上没有循环。拨打电话的人不是在等待付款到达的监控来拨打第二个电话。原则上,payment request received 会立即通向决策节点,不会卡在那里 5 天。 5 天对于人类读者来说是可以的,但充满了歧义。例如,您是否还会在每次通话后等待 5 天?如果第 6 天收到付款,但来电者没有在第 5 天立即致电,等等...

要解决此类计时问题,您最好使用其他 SO answer from qwerty_so 中所述的计时事件。这使您可以清楚地显示正常流程,并隔离时间驱动的活动。

顺便说一句,由于我们看到实际上活动与付款请求的状态相关,您可以用状态图优雅地补充您的活动图。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?