我正在尝试为我开发的网络tic tac toe游戏设计一个活动图(UML),带有套接字。我正在使用活动分区(swimlanes)。因此,有三个分区:Client1,Server和Client2。
图表看起来不错,但我不知道如何表示循环结构。
如果您查看此链接:activity diagram,请查看页面上的最后一个图表(分区),这是我正在使用的活动图表的类型。
有谁知道我怎么能代表循环?谢谢!
答案 0 :(得分:11)
进一步查看扩展区域的page you link to。使用迭代关键字。
扩展区域是多次执行的结构化活动区域。输入和输出扩展节点被绘制为表示多个项目选择的三个框的组。关键字“迭代”,“平行”或“流”显示在区域的左上角。
答案 1 :(得分:2)
也许我错过了一些东西,但为什么不只是使用循环中最后一个活动的退出流作为循环中第一个活动的输入流(在适当的时候有一个保护条件来完成循环)
答案 2 :(得分:1)
如果您使用一组数据作为输入,那么“扩展区域”是完美的。 例如,您想要以欧元兑换所有收入。然后,它就像一个for()。
但是如果你想要有类似于while()的东西,你必须使用带有反馈循环的圆角矩形和菱形。
例如: [玩二十一点] - >如果我赢了 - >我停止了 - >其他 - >我重新开始 。
我认为在活动图中进行循环的唯一有效方法。
您可以查看loop node。但我不确定它在OMG规范中的定义有多好。