UML用例-我是否正确使用它?

UML用例-我是否正确使用它?,uml,use-case,use-case-diagram,Uml,Use Case,Use Case Diagram,我将为现有的web程序创建一个用例图。不幸的是,我对用例非常不确定,我喜欢将它与其他UML混合使用 为此,我选择了订单页面 有3个不同的用户,管理员、驱动程序和客户 管理员可以查看所有订单,并有能力创建新订单。 司机可以看到自己的命令,也可以接受命令。 客户可以查看自己的订单,也可以下新订单 可以在订单元信息的标准视图(行视图)和小部件视图之间进行选择 最后但并非最不重要的一点是,可以单击其中一个订单,并打开单个订单概览 基于此,我现在创建了一个用例图,我的第一个问题是:对于我提供的信息,这一切

我将为现有的web程序创建一个用例图。不幸的是,我对用例非常不确定,我喜欢将它与其他UML混合使用

为此,我选择了订单页面

有3个不同的用户,管理员、驱动程序和客户

管理员可以查看所有订单,并有能力创建新订单。 司机可以看到自己的命令,也可以接受命令。 客户可以查看自己的订单,也可以下新订单

可以在订单元信息的标准视图(行视图)和小部件视图之间进行选择

最后但并非最不重要的一点是,可以单击其中一个订单,并打开单个订单概览

基于此,我现在创建了一个用例图,我的第一个问题是:对于我提供的信息,这一切都正确吗

这会成为一个巨大的用例图吗?还是应该为web应用程序逐页执行此操作?例如,如果这是订单概述,并且我现在有了更改页面的用例(在本例中,当我转到单订单概述时)。有没有办法让它看起来更干净?所有这些扩展/包含在一个位置上看起来都很混乱


恐怕我不知道我这样做是部分正确,还是完全没有抓住要点。

您需要记住的是,用例是关于附加值的,而不是关于技术实现。这对技术人员来说真的很难,这就是为什么他们总是开始功能分解。因此,综上所述,唯一的用例是
Show Order
,而不是其他

从这个角度来看,
登录
不是用例。它只是应用于某些用例的约束

您只关注了
显示
方面,但可能还有添加/编辑/删除。这样的积垢可以用不同的方法处理,没有一般的规则。可能有一个
Manage
和一个
Show
或任何与约束相关的组合


基本上,当您的UC图类似于蜘蛛网时,您的设计可能会被破坏。

谢谢您的时间。我在登录时看到了这一点。但是我不太确定“Show Orders and nothing others”在这种情况下,我只会从用户那里生成一个用例“Show Orders”?所有3个用户都可以通过某些方式查看订单,无论是全部还是仅自己查看。如果客户切换视图(例如切换到小部件),这不是一个用例吗?我只是有点困惑,因为首先有一个行视图,所以这不是一个用例,但您也有可能更改它。如果我理解正确,我的“将订单显示为行”是错误的。我可以将其与“将订单显示为小部件”一起更改。这两个视图将被视为一个新的“变更单视图”。或者,改变视图更多的是一种技术性的东西,在这种情况下唯一的其他用例是“创建新订单”和“显示单一订单”。我的意思是,正如我所说的:只有一个UC。您投入的其他一切都是技术实现。唯一的附加值是您可以看到订单。这与如何呈现完全无关。我可以在此页面上创建一个新的订单,这看起来像是一个用例。我理解为什么改变外观不算作用例,但是创建一个新的票证不是用例吗?我建议你读一读:Bittner/Spence用例建模。是的,我看到了
Create
,这是一个新的UC(我提到的CRUD的一部分)。