2

当一切都自动化时,究竟如何绘制用例图?这是我收到的请求的示例:

“进行修改,将游戏服务器重置为特定地图或在 2 小时内没有玩家时切换游戏类型”

现在,基本上没有经典意义上的用户。有问题的修改一旦添加到服务器就会自动启动。提前考虑会有一个计时器,它会定期轮询玩家的数量,然后在该数字为零时开始倒计时。然后计时器将调用一个触发更改的方法。

您可以在此描述中看到哪些演员?

4

2 回答 2

2

我是否可以建议,在这种情况下,参与者应该与实现无关,而不是“计时器”,类似于“服务器监视器”。这里有一个关键的区别是将参与者的实例和参与者本身(或角色和谁/什么正在执行该角色)分开。

即“服务器管理员”的角色可以用许多不同的方式实例化:

  • 定时器
  • 柜台
  • 服务器管理员员工

您应该将参与者视为履行特定的“角色”,以及封装一组逻辑功能的角色。这样,您的最终产品就不会妨碍您的要求,并且您可以更轻松地回答问题(特别是在寻求改进时):

  • 我可以自动化吗?
  • 有没有更便宜/更快的方式来执行这个角色?
  • 此用例是否特定于该角色?
  • 这个角色有其他用例吗?

只是试图强调将您的演员扮演的角色(即服务器管理员)和实例化它的应用程序/人/机器分开的好处和重要性。

于 2013-09-23T04:00:10.290 回答
1

计时器通常被建模为用例图中的参与者。我建议你这样做。

于 2011-02-14T00:30:09.853 回答