1

我有一个关于 UML 序列图的问题。

假设我们有一个对象 Customer、KioskUI、KioskService,并且 KioskService 有最后一个名为 showNotification() 的进程;方法 showNotification 是否转到 Customer 对象或 KioskUI?

如果是 KioskUI,对象是否必须将变量作为“<-----通知”返回给客户对象,或者我们不再需要从 KioskUI 向客户返回一些东西?

由于序列图只关注流程如何相互操作,我的另一个问题是,像打印报告这样的有形对象是否不再需要在序列图中显示,还是必须显示?

4

1 回答 1

1

在面向对象的系统中,最好将序列图视为对象向每个对象发送消息以进行通信的描述。这些图中的箭头及时显示了对象之间的发送者/接收者关系,其中箭头的标签描述了消息本身,例如带有参数的方法调用。您在询问向后箭头是否应指向 KioskUI 或 Customer 对象。答案很简单,这取决于谁发送了消息,例如调用“showNotification()”的方法将返回到哪里。你必须决定这一点,但我想 KioskUI 是一个自然的选择。所以答案是,只有当客户有一个向前的箭头时,你才应该向客户显示向后的箭头(这应该使用生命线上的框来描述,除非它是一个异步调用)。

于 2011-02-12T21:07:08.247 回答