0

我目前正在刷新/改变我在软件开发方面的知识,因为我很快就会在这个领域工作。我们在大学里学到了很多关于 UML 图和编码的知识,但我从来没有在一个真正的项目中把它们结合在一起。因此,我开始在 Grails 中创建一个测试 Web 应用程序,并且我想从需求分析和用例开始,以使其接近现实。

我的网络应用程序应该允许用户共享食谱、查找食谱和查看其他用户的食谱。每个食谱都有许多成分,它们不仅仅是字符串,而是实体,因此可以使用卡路里、脂肪、蛋白质和碳水化合物来自动计算某个食谱的营养成分。

消费者或营养专家都可以将成分添加到数据库中。如果它是由消费者创建的,它只是一种“潜在”成分,这意味着它必须由管理员验证才能成为“适当”成分——否则它会被标记,例如红色文本颜色。

这是我当前的用例图:

http://ubuntuone.com/0zDw9kEbj1BwtXjnCtxdwC

我的问题是:

  • 就我而言,包含的用例可以被重用,这意味着被其他用例包含或与其他参与者相关联。但这也可以通过扩展用例来实现吗?'AddProspectiveIngredient' 是否也可以扩展 'VerifyIngredient' (尽管它对这个系统没有任何意义)?
4

2 回答 2

0

您可以有许多用例,相互扩展。因为扩展是一种变体。只有这样才过分。如果 AB 和 BC 已经如此连接,则不需要在 A 和 C 之间绘制扩展连接。

但是您可能会遇到工具限制的问题。VP-UML 不能很好地与“扩展”一起工作。即使是通常的删除也无法在“扩展点”上正常工作

于 2014-02-23T22:54:10.730 回答
0

是的,您可以通过一个或多个其他用例(使用includeandextend关系之一)引用一个用例,您还可以将包含或扩展的用例与您的参与者相关联。

此讨论有助于区分用例图中的include和关系。extend

于 2019-09-27T07:17:37.353 回答