用例泛化与扩展

时间:2014-03-31 11:14:08

标签: uml modeling use-case

我已阅读Use case generalization versus extension个问题,我有一个问题。似乎在推广用例时,您对一个功能有一些不同的方法,但是当您扩展用例时,您具有单一功能,但根据情况,它的部分存在细微差别。
当只有一个扩展点时,您也可以互换使用泛化和扩展,但如果有两个或更多扩展点,则应使用扩展名。
所以我说的是真的吗?

2 个答案:

答案 0 :(得分:2)

对我来说,概括和扩展是不可互换的。他们的意思是不同的,并且不依赖于的扩展点数量。 当用户U2推广用例U1时,U2是特定的U1,即U1的所有事情对于U2也是如此。因此,与U1关联的actor可以独立使用U1和U2 。 当用例U2扩展用例U1时,U2与U1不同。因此,与U1关联的actor可以(如果他愿意)使用U2但是在U1使用上下文中,他不能在U1上下文中使用U2。

希望它有所帮助,

此致

BR

答案 1 :(得分:1)

不,这不太准确。 Here是一个相关的讨论。专业化(与概括相反)和扩展实际上是完全不同的。扩展与可能在用例中执行更多操作的想法有关,而不是最低限度。专业化与以多种方式完成用例的想法有关。

让我们以杂货店中的“支付账单”用例为例。您可以使用现金或信用卡付款,您也可以(不必)使用折扣卡。通过现金支付和使用信用卡支付是支付账单的不同方式,因此它们是专业化的。注册折扣卡是一项活动,您可以在支付账单时支付账单,这是用例的扩展。