用例图&lt; <extend>&gt; </extend>

时间:2013-03-28 21:15:10

标签: uml diagram use-case

我为我提出的系统创建了下图,但有几个问题。

该项目有三个组成部分:程序(Java),网站和数据库。

使用该程序,用户可以生成数据并将其提交到数据库。然后,用户可以通过Web界面查看此内容。

从图中可以看出,我有“导出数据”<<extend>>“将信息传递到网站”。 (数据库通过PHP从数据库中检索数据)。这是否意味着“导出数据”需要位于“网站界面边界”。

另外,如果我要添加第三个边界 - 这是不好的做法吗?

Proposed Use Case

1 个答案:

答案 0 :(得分:1)

要具体回答您的主要问题,对用例(例如扩展)和用例包含(例如包或系统边界)之间的链接没有强烈要求

但除此之外,请允许我说一些关于你的图表的事情看起来很尴尬:

  • 我们应该在图中有这样的信息:哪个actor执行这个用例?这里我假设数据库不是表演者,所以除了底部的三个用例外,此图中没有用例遵守此规则。
  • 您只能在actor和用例之间绘制线条,而不能在两个用例之间绘制线条。在这里,例如导出数据和查询数据库之间,你的意思是什么?如果您的意思是导出数据进程的一部分将查询数据库,那么您需要<<include>>关系,箭头指向查询数据库,这意味着查询数据库是导入数据的强制子用例。但是,这是一个疯狂的猜测......
  • 我不确定你的<<extend>>是否正确。这意味着,当您授予权限时,您可以选择检查凭据,当您将信息传递给网站时,您可以选择导出数据。我很确定这不是你的意思。

总结最后两点:

Main use case ------------> sub use case
              <<include>>

Main use case <------------ optional sub use case
               <<extend>>

在UML语法中,箭头在include和extend之间反转是一件非常痛苦的事,但它是如何工作的。不是我的错:)。