如果我需要将数据库识别为参与者,我会陷入困境并感到困惑,因为数据库是在场景中给出的。
我首先尝试将其作为演员,因为根据场景,所需的数据来自数据库。我还尝试为整个场景创建一个用例,但不确定是否正确。
这是场景的链接:https://justpaste.it/7tljo
The Use Case Diagram I created:
数据库是演员吗?
原则上数据库不应该成为用例中的参与者。原因有两个:
- 数据库通常是用于实现系统的组件,因此它是系统内部的一部分(即使它是从第三方购买并安装在单独的服务器上)。但参与者必须是系统外部的。
- 参与者可以代表与系统交互的单独系统。但是,由于它们在案例中发挥作用,因此预计会有一定程度的自治:系统参与者要么像人类参与者一样支持用例,要么使用系统来实现自己的目标。
更一般地说,关于候选系统参与者,可以问自己一些有用的问题:企业需要知道吗?用户或业务利益相关者对此感兴趣吗?如果您的系统不存在,系统参与者是一个有用的系统吗?我们可以想象与人类用户而不是系统参与者相同的用例吗?
整体图还好吗?
从语法上看,该图看起来没问题。但它有条不紊地将特性/功能分解为更小的部分。这称为功能分解:虽然 UML 没有禁止它,但它会导致复杂且不可读的图表。这就是为什么用例社区建议不要这样做,而是更愿意根据用户目标调整用例。
提示:如果您在设计用例(例如审查合同、批准合同)时开始考虑工作流程、操作顺序或用户界面组件,那么您可能应该考虑使用活动图。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)