我有一个网站的参与者(仅作为示例),在 UML2 序列图中称为“Visitor”。该参与者与边界对象交互,发送凭证并获取 session token 。完成此操作后,我想将该 Actor 提升为“经过身份验证的用户”。
我想保留“访问者”和“经过身份验证的用户”,因为它们代表不同的角色并与系统有不同的交互。 (访问者的用例不是“经过身份验证的用户”的子集,因为访问者会收到广告等)
现在,我可以为“经过身份验证的用户”创建一个单独的生命线,并在适当的位置为其创建“创建”消息和为“访客”创建“销毁”消息,但这确实看起来很尴尬。
我还可以创建“<< Promotion >>”刻板印象,但是普遍接受的方法是什么?
最佳答案
想象一下,当“访问者”晋升为“经过身份验证的用户”时,系统中的某个地方实际上会诞生一个化身。这不是在系统中旅行的“访客”,而是他/她的化身。因此,创建另一个具有自己的生命线的 actor 对象对我来说似乎没问题。
(当然,您可以在通用 User
类中使用简单的 boolean
开关实现两种不同的存在“状态”,但它不是你要求的..)
我可能会使用
或者非常相似的东西
关于UML - 在序列图中提升 Actor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27380917/