【发布时间】:2022-01-06 09:06:56
【问题描述】:
我想要一个用例 - 存储信息系统。我将在用例图上提出所有者的要求,包括。登录后进行购物的客户,以及登录后管理价格等的管理员。
我可以从一个用例概括登录到系统 - 两个参与者结合一个用例(如下)?如何“改进”图表?
【问题讨论】:
标签: uml software-design diagram use-case use-case-diagram
我想要一个用例 - 存储信息系统。我将在用例图上提出所有者的要求,包括。登录后进行购物的客户,以及登录后管理价格等的管理员。
我可以从一个用例概括登录到系统 - 两个参与者结合一个用例(如下)?如何“改进”图表?
【问题讨论】:
标签: uml software-design diagram use-case use-case-diagram
当多个参与者与同一个用例关联时,UML 不指定语义。例如,这可能意味着只涉及其中一个参与者而没有另一个参与者,两个参与者同时参与,或者两个参与者一个接一个地参与。
当然,参与者和用例是分类器。因此,您可以使用用例或参与者的泛化(如示例 here 所述)。
但是您的图表虽然语法正确,但存在一些问题:
Admin account 不是用例:它不会对参与者产生任何可观察的结果;它是系统的内部细节。所以它不符合用例的 UML 标准。Login、Confirm password(或许还有Checkout?)不符合用户目标。作为explained here,根据UML 规范,这在根本上并没有错,但这是一种不好的做法。用例旨在描述参与者的目标,而不是流程或用户界面的细节。【讨论】:
它并没有什么特别的神奇之处,UML 用例描述了一个案例,并且可以有多个用户。
接下来可能只是移动共享用例。
但是,由于用例图支持用户继承,就好像它们是类一样,可能会添加一个通用抽象超类GenericUser 与共享用例,子类User 和Admin 与他们自己的特定用例会很有用的。
【讨论】: