我可以在流程/活动UML图中使用双向箭头吗?有什么例子吗?我正在准备一个带有泳道的流程图。我遇到的情况是,许多进程都是跨泳道交叉引用的。这不是一个好的设计。我只想知道用双向箭头来表示这样的流程图可以吗?它的缺点是什么?
发布于 2018-01-27 03:01:55
UML规范在这里很难理解。活动/动作与ControlFlow相关(参见规范的第418页)。ControlFlow本身就是一个ActivityEdge (见第411页):
ActivityEdge是两个ActivityNodes之间定向连接的抽象类。
没有(我能找到的)禁止双向使用的约束。不过,ControlFlow的所有示例都是用单箭头指向的。
使用双向流不会让您轻松地指定防护/行为,因为您无法检测哪个方向。但是如果你有无条件的流,那就没问题了。
第22页上的编辑说明
DirectedRelationship表示源模型元素集合和目标模型元素集合之间的关系。DirectedRelationship被称为从源元素定向到目标元素。
DirectedRelationship继承自Relationship,后者继承自Element。相比之下,ActivityEdge继承自RedefinableElement <- NamedElement <- Element。它们可能“意味着”ControlFlow必须从源定向到目标。但实际上它并没有被定义。
tl;dr如果您只使用规范中的示例中所示的单向连接器,则由您决定。但根据定义,它并未定义(原文如此!)并且双向连接器不会违反规格。
https://stackoverflow.com/questions/48467582
复制相似问题