我应该在 UML UseCase 图中包含系统的 tasks/responses 吗?
Should I include System's tasks/responses in UML UseCase diagram?
有一个练习要求我们画一个银行的用例图,
描述说客户可以存款和取款。对于那个用例场景,我只是画画吗
"make deposit" 和 "withdraw money" ?还是我也应该 <<'include'>> "update balance" 对它们都起作用?
Update Balance
是一个用例吗?对演员有什么附加价值吗?我猜不会。这是一个简单的功能,作为其他 2 个用例的一部分执行。您正在尝试(像大多数人一样)执行功能分解。仅仅两个用例共享一个公共功能并不能使该功能成为一个用例。用例是关于所考虑的系统交付给其参与者的附加值。当您描述用例内部的场景时,您可能会参考场景是其他用例。每个场景步骤都将以一个动作结束。并且在描述Withdraw money
时,可以简单地参考Make deposit
中描述的动作Update balance
。但是,Update balance
是简单添加操作的结果。那么,为什么将其称为通用功能呢?
有一条黄金法则帮我解决了类似的情况,希望对你有帮助。
用例定义:参与者与系统之间的一系列交互以获得附加值。
因此,如您所见,有 交互 ,基本上一个用例是一系列交互。
哪些互动是为了更新余额? None,只是系统(相对于 actor)所做的计算。
让我们specify假设下的用例是业务用例并且是 ATM。
- 1) Actor1 按 'start button'
- 2) 系统显示出卡画面
- 3)演员1出示卡片
- 4) 系统显示带有选项的菜单...
- 5) Actor1 select 退出.... ...
- 6) 更新后的系统显示屏幕
余额
- 7) 演员 1 select ....
所以这是非常直观的,首先不是用例,因为不涉及交互。所以不需要检查是否带来附加值。只是所涉及的众多交互中的一个重要部分。
在某些例外情况下,您可以采用该捷径,例如,如果您希望模型更加清晰,或者您希望根据用例划分什么工作。但恕我直言,这根本不是用例。
您可能有 'Show balance',但这只会是一次互动,除非您有 "show on screen" 或 "paper-print on a ATM"
等选项
希望对您有所帮助。
有一个练习要求我们画一个银行的用例图,
描述说客户可以存款和取款。对于那个用例场景,我只是画画吗
"make deposit" 和 "withdraw money" ?还是我也应该 <<'include'>> "update balance" 对它们都起作用?
Update Balance
是一个用例吗?对演员有什么附加价值吗?我猜不会。这是一个简单的功能,作为其他 2 个用例的一部分执行。您正在尝试(像大多数人一样)执行功能分解。仅仅两个用例共享一个公共功能并不能使该功能成为一个用例。用例是关于所考虑的系统交付给其参与者的附加值。当您描述用例内部的场景时,您可能会参考场景是其他用例。每个场景步骤都将以一个动作结束。并且在描述Withdraw money
时,可以简单地参考Make deposit
中描述的动作Update balance
。但是,Update balance
是简单添加操作的结果。那么,为什么将其称为通用功能呢?
有一条黄金法则帮我解决了类似的情况,希望对你有帮助。
用例定义:参与者与系统之间的一系列交互以获得附加值。
因此,如您所见,有 交互 ,基本上一个用例是一系列交互。
哪些互动是为了更新余额? None,只是系统(相对于 actor)所做的计算。
让我们specify假设下的用例是业务用例并且是 ATM。
- 1) Actor1 按 'start button'
- 2) 系统显示出卡画面
- 3)演员1出示卡片
- 4) 系统显示带有选项的菜单...
- 5) Actor1 select 退出.... ...
- 6) 更新后的系统显示屏幕 余额
- 7) 演员 1 select ....
所以这是非常直观的,首先不是用例,因为不涉及交互。所以不需要检查是否带来附加值。只是所涉及的众多交互中的一个重要部分。
在某些例外情况下,您可以采用该捷径,例如,如果您希望模型更加清晰,或者您希望根据用例划分什么工作。但恕我直言,这根本不是用例。
您可能有 'Show balance',但这只会是一次互动,除非您有 "show on screen" 或 "paper-print on a ATM"
等选项希望对您有所帮助。