我有一个家长用例。我不想让用户使用父用例。我只想让用户有权访问子用例。可以把它看作是Java中的一个抽象类。你永远不能实例化一个抽象类。用例图允许这样的行为吗?
发布于 2013-05-28 17:39:16
是的,可以有“父”或“子”用例。用于对此关系进行建模的连接器称为generalization。请看这里:Use case generalization versus extension,一个包含图表的例子也在这里。
请注意:如果您将泛化建模为一个用例,那么这是另一回事(!)而不是<<extend>> one。
您可以在文本用例描述中添加关于调用约束的注释。
发布于 2013-06-15 04:00:35
@observer的答案几乎是完美的(我已经+1'd it :)),除了他没有完全回答你的问题。
在这种情况下,您可能会执行以下操作:

Actor0将管理到Pay bill,无论是使用Pay with credit card还是Pay with PayPal。另一方面,Pay with credit card.将只能对
Pay with credit card.操作
这意味着:
"children".
发布于 2013-02-20 05:32:46
是!(也是最终的,因为UseCase是分类器的特化)。
引用统一建模语言(OMG UML),上层建筑:
Generalizations
分类器属性:分类器具有以下属性:
Constraints:分类器只能专门化有效类型的分类器。
self.parents()->forAll(c | self.maySpecializeType(c))Additional operations
查询maySpecializeType()确定该分类器是否可以与指定类型的分类器具有泛化关系。默认情况下,分类器可以专门化相同类型或更通用类型的分类器。
Classifier::maySpecializeType(c : Classifier) : Boolean;
maySpecializeType = self.oclIsKindOf(c.oclType)最后,但同样重要的是,尽管它说maySpecializeType()“旨在由具有不同专门化约束的分类器重新定义”……对于UseCase或BehavioredClassifier,没有maySpecializeType()的重新定义。
来源:统一建模语言(OMG UML),上层建筑,版本2.4.1。
https://stackoverflow.com/questions/14945618
复制相似问题