2014-12-07 61 views
1

我想知道是否应该将关联添加到扩展的用例中。用例图 - 扩展并关联到扩展的UC

在我的情况下,演员必须“穿过”基础UC以获得扩展名。他无法直接访问它。

它应该是:

like this

like that

总而言之,扩展UC也是这个演员的使用​​情况,所以应该被标记为连接,以这个演员还有足够的延伸吗?

回答

2

UseCase定义说,在执行UseCase时,系统通过关联与连接到UseCase的外部实体(actor)进行交互。在扩展关系的情况下,可以独立于扩展的UseCase(示例中的显示列表)执行扩展用例(在您的示例中添加新)。如果你的actor在Add List UseCase的执行过程中与系统交互,那么actor和usecase之间的关联是必须的。扩展(不像包含)不一定总是被应用,通常定义一些什么时候使用它的条件。

结论如下:如果Actor在执行Add New UseCase期间与系统交互,则应连接到Add New UseCase。你提到Actor访问UseCase(直接或间接无关紧要),所以第二个图是正确的。

我建议您阅读UML的规范,部分UseCases。你会在那里找到你的问题的确切答案。 UML Webside

+0

看来您已经阅读过UML规范。你能更清楚地回答OP的问题吗?通过显示“正确”的图片? – xmojmr 2014-12-07 11:10:01

+1

好的,第二个。看到我的答案。 – Vladimir 2014-12-07 12:02:54

+0

我不认为Add New可以独立执行。如果不是,演员不应该有直接的关联,这是一种显示Add New的唯一入口点是通过show list的方式。 – BobRodes 2014-12-09 17:43:28