我应该使用包含还是扩展

时间:2013-02-04 14:20:14

标签: uml tool-uml argouml staruml

考虑以下情况。我无法找到一个好的答案。

我有一个用例A.执行后,将遵循两个可能的用例之一:

  1. 执行用例B
  2. 执行用例C
  3. 我应该使用什么? A包括B和A包括C?或B扩展A和C扩展A?

    我不确定,因为C和B在这里是潜力。其中一个必须完成。

    感谢所有帮助。

2 个答案:

答案 0 :(得分:0)

我不确定使用用例是建模替代方案的正确方法。 如果您在两个用例之间创建包含,则表示在执行包含目标时,包含链接的来源将始终包含。 如果你在两个UC之间创建一个扩展,这或多或少具有两个类之间的泛化,即扩展的目标是源的泛化。

答案 1 :(得分:0)

根据您的示例用例A“撰写号码”(在电话上),您有2种可能性,无论是用例B“拨打号码”还是用例C“删除号码”

正确的选择是将用例A和B定义为主要用例,包括用例A:

UseCase B \            --include - > UseCase A. UseCase C /

用例应该由actor目标定义,在你的例子中,actor的目标是调用数字或删除数字。