Uml 如何在序列图中对函数调用返回的对象建模?

Uml 如何在序列图中对函数调用返回的对象建模?,uml,sequence-diagram,Uml,Sequence Diagram,假设我有这样的代码 user = AuthHandler.getLoggedInUser() user.setName(name) UserDAO.update(user) 序列图是什么样子的 是的 对吗?就我所见,user/userDAO部分?图是正确的。序列图上没有用于显示对象流的图形符号,只有消息中的参数,如您所示。(具有对象流符号的c/f活动图) hth.序列图不需要太多关于返回对象的细节 当在对象/类(矩形)中执行操作时,返回的虚线箭头应该返回到它所来自的线和对象 如果返回值(对

假设我有这样的代码

user = AuthHandler.getLoggedInUser()
user.setName(name)
UserDAO.update(user)
序列图是什么样子的

是的


对吗?就我所见,user/userDAO部分?

图是正确的。序列图上没有用于显示对象流的图形符号,只有消息中的参数,如您所示。(具有对象流符号的c/f活动图)


hth.

序列图不需要太多关于返回对象的细节

当在对象/类(矩形)中执行操作时,返回的虚线箭头应该返回到它所来自的线和对象

如果返回值(对象或简单类型变量),其标识符应显示在返回箭头上方

可选的“return”标记可以出现在不显式返回值的箭头上

我建议在web上提供一些教程:

编辑:

在序列图中,返回的对象类型由每个框中文本中的标识符表示,例如“user:user”或“:UserDAO”

然后,基于给定对象的补充类图或对象图可以向实际序列图提供附加信息, 使用相同的类标识符或对象标识符, 例如:“User”或“UserDAO”

不要混淆类标识符和实例标识符


请注意,在给定的图中,某些框跳过特定的对象实例标识符,或将其替换为星号字符

我的印象是返回是可选的?esp如果我使用类似于
user:=
?我认为文本标记“return”是可选的,但箭头不是。好的,所以我只是查了一下。我读到:“当返回的内容显而易见时,不要对返回值建模”(在“4.返回值指南”下)。我想,如果我有类似于
obj:=getSomething()
getSomething():obj
的东西,我就不需要建立回报模型了?正如我看到的,它从消息调用返回?我认为这可能会减少图表中的混乱,否则许多调用都会有返回行?正如我所看到的,您可以跳过文本中的值或“return”标记。但是,我认为重要的是添加返回行,作为图表的一个单独部分,因为它指示流程正在进行的地方。