【问题标题】:Should the action "Set path" be a include in my use case diagram?“设置路径”操作是否应该包含在我的用例图中?
【发布时间】:2022-02-05 09:04:36
【问题描述】:
我的 android 应用程序允许用户检查他附近的药房,当点击其中一个时,它会询问用户是否要为其设置路径。
我的疑问是,由于我需要先检查附近的药店,我的“设置路径”活动是否应该在我的用例图中包括检查附近的药店?
此外,我的应用程序还允许用户玩一些记忆游戏并查看其排行榜。
在这种情况下,由于用户没有义务观看排行榜,因此扩展是否正确?
【问题讨论】:
标签:
android
uml
diagram
use-case
use-case-diagram
【解决方案1】:
用例表示对参与者有价值的行为集,原则上应与参与者的目标相对应。
在这方面,围绕Login存在一些争议(对立论点的细节:here):Login更多的是限制使用系统而不是用户重视的目标。例如,大多数用户会更喜欢幕后的 SSO,而不是需要他们参与的显式登录。我建议将其从图表中删除。只需在叙述中提及它(或者,如果您正式使用,也可以在活动图中作为一个动作提及)。
关于Set path,«include» 箭头应该是相反的方向。这意味着系统地提供了包含的用例的行为。但在你的叙述中,我明白这条道路没有系统地设定。此外,正如您所描述的,Set path 似乎是属于Find nearby pharmacy 目标的功能。将其添加为单独的用例是一种功能分解,会使图表变得不必要地复杂。
问题与Check leaderboard 类似,扩展用例适用于可选行为。但同样,排行榜似乎是一个功能,它是Play memory game 目标的一部分。同样是一个功能分解,您可以删除它以简化图表。
请记住,用例图旨在显示系统在其环境中的总体情况。它不是为了全面描述您的系统将执行的所有操作,更不用说一系列操作。该图通常由每个用例的文本描述完成,您可以在其中放置此类详细信息。如果你想更正式,你可以用更详细的活动图来描述每个用例。