在序列图中,消息何时应来自出现规范,何时应该来自执行规范?
同样,消息的目标何时应该是两者中的每一个?
澄清条款
据我所知,大多数人都不熟悉术语出现规范和执行规范,因此我将它们指向序列图。
在下面的描述中,有两条消息(标记为红色):
大多数能够绘制UML序列图的工具默认情况下都会在两侧放置执行规范 - 为什么? - 与Visual Paradigm的情况一样
答案 0 :(得分:1)
消息开始/结束的位置始终出现。
执行规范显示了活动的实例。对于启动实例,如果应该执行发生,则不定义它。因此各种案例工具开发人员采用了各种方如果您可以决定,您可以描述实例是否仍处于活动状态(例如,等待答案),而不是该建模者的选择。
答案 1 :(得分:0)
您的问题是,为什么有些工具会显示双方的执行规范。原因很简单,他们对交互图的支持非常缺乏。消息的发送者和接收者都不需要执行任何操作,因此不需要执行规范。
虽然经常会出现这样的情况,即发送方执行某些行为,在此过程中会发送一些消息,并且消息的接收方执行响应接收消息的行为,但这并不总是案件。发送方可能会自发发送,接收方可能会忽略该消息。即使某些事情被执行,建模者也可能选择不提及它。交互图显示一些有趣的事件,但绝不需要显示所有可能出现的事件。
消息可能在ExecutionOccurrenceSpecification处开始或结束,但它也可能只是MessageOccurrenceSpecification。 ExecutionSpecification也可以独立于Message。也许建模者想要表达一个对象正在执行某些事情,而不受任何消息的干扰。甚至可以定义正在执行的行为。但是,我还没有找到支持UML的强制功能的工具。
所以答案是,这些工具应该允许消息和执行规范的任意组合,因为它完全取决于建模者,她希望显示出来的事件。