如何制作我的;“登录”;UML中其他用例的用例先决条件

如何制作我的;“登录”;UML中其他用例的用例先决条件,uml,use-case,prerequisites,Uml,Use Case,Prerequisites,我正在为图书馆管理系统创建一个用例图。我有一个“登录”用例,每个参与者在进入其他用例之前都应该这样做。换句话说,我想说明“登录”用例是其他用例的先决条件。 有人知道如何展示这个吗? 谢谢有几种方法可以做到这一点: 使用关系,其中每个UC登录都是第一步 在用户必须登录的每个UC上设置一个前置条件 创建一个名为“登录用户”(或类似名称)的参与者,并显示与之相关的所有用例 你选择哪一个取决于许多因素。(1) 它简单直观,但是如果你有很多用例的话,它在图表上的伸缩性并不好。(2) 如果您以文本的方式记录

我正在为图书馆管理系统创建一个用例图。我有一个“登录”用例,每个参与者在进入其他用例之前都应该这样做。换句话说,我想说明“登录”用例是其他用例的先决条件。 有人知道如何展示这个吗?
谢谢

有几种方法可以做到这一点:

  • 使用
    关系,其中每个UC
    登录都是第一步
  • 在用户必须登录的每个UC上设置一个前置条件
  • 创建一个名为“登录用户”(或类似名称)的参与者,并显示与之相关的所有用例
  • 你选择哪一个取决于许多因素。(1) 它简单直观,但是如果你有很多用例的话,它在图表上的伸缩性并不好。(2) 如果您以文本的方式记录用例,那么它可以很好地工作,但不会显示在图表上。(3) 可能不是传统的,但可以提供比(1)更多的可伸缩性,同时仍然可以在图表上查看。但是,如果您有多个参与者,则会发生故障,每个参与者都必须登录才能执行其UCs

    我个人倾向于使用(2)。如果我需要一个UC图,我会在图中包含一个“登录”UC,但不会显示它与其他UCs的关系

    我不推荐的一个选项是
    关系,其中每个UC
    登录UC。它实际上在语义上不起作用,并且与上面(1)中的可伸缩性问题相同


    hth.

    在这种情况下,关系的另一种选择是依赖关系。这使得登录必须在用例之前,而不是简单地在用例中的某个点发生,这一点更加清楚

    EnterpriseArchitect在其用例工具箱中包含这样一个原型依赖项,但您可以创建自己的原型依赖项。关于这一点的EA文件说明:

    调用和前置关系由开放建模语言(OML)定义。他们是刻板的依赖关系;Invokes表示用例A在某一点上导致用例B发生,而prefers表示用例C必须在用例D开始之前完成


    您可能不想在UML中引入OML习惯用法,但该功能正是您想要的,并且在图表级别可见。

    UCs对于许多事情都很有用,但最重要的是对于通信。如果你开始在UC图上使用关系,你的沟通优势会下降一个等级。与每个UC中的复制粘贴先决条件“用户X必须登录”相同,等等

    最重要的是,UCs不打算成为完整的系统规范。所以简单地把它放在其他地方,例如:

    • 作为总体系统规则列表中的规则

    • 作为“用户访问权限”规范部分的表格


    谢谢斯芬妮。我在网上搜索用例的先决条件。有很多答案,但没有一个是带有前提条件的图表。我不知道这是评论还是形状。如果你能告诉我它在图表上是什么样子,我将不胜感激。在UCD上没有显示前置条件的标准语法(这就是为什么我说“…在图表上没有显示…”)。前提条件仅显示在图表上椭圆形后面的文本UC规范中。如果确实需要在图表上显示,则可以将受保护的UCs放在图表上的单独包中(名为“安全域任务”或类似名称的包)。