我的Uml图是否正确?

时间:2014-03-23 14:52:18

标签: uml diagram

  • 我有这些uml图表。它们是一个叫做游戏的图表 井字游戏。只是一个简单的tictactoe与得分。所以我想要你 检查或给出我的图表的意见,如果它是正确的或需要的 改进。
  • 这是图表:

uml1

uml2 uml3![][3]

uml4

活动图 类图 用例图 状态图

4 个答案:

答案 0 :(得分:1)

简单回答:图表不正确。

如果没有查看图表的问题域方面,就会出现明显的问题。

1)您的活动图不可行。所有传入连接必须在动作开始之前提供令牌;因此,SwitchCurrentPlayer永远无法启动。您可以找到有用的相关答案:activity diagram - call operation example with parameters?

2)您的类图没有关联结束名。您在Tictactoe中有两个类型为Board的属性,在Board中有两个类型为Tictactoe的属性。

答案 1 :(得分:0)

是的,它看起来很不错。虽然我对使用TickTackToe的播放器构成怀疑。我的意思是即使没有玩家,班级本身也可以存在。

活动图中的用户也应该终止游戏。不要忘记这个功能。

答案 2 :(得分:0)

  • 第一个活动图

    • 在第二次决定之后,你又错过了一个决定 - 董事会是否满员?如果是的话 - 去领带,如果不是,那就是下一点
    • 你错过了循环。您可以将其显示为从第三个决策返回或通过循环片段元素覆盖所有重复操作。
  • 最后一张图。您必须在AFTER检查后进行退货,而不是之前。或者你会有无限循环。

  • 类图

    • 你不需要作为类的片段 - 使电路板由单元格组成,每个单元格的状态取自枚举Pieces(x,o)或null,以及函数putPiece(Pieces)
    • TickTackToe
    • 应该有currentPiece和currentPlayer字段。
    • 其他图表中提到的功能和字段在哪里。你应该在他们的基础上制作类图。
    • 什么是player2字段?

答案 3 :(得分:0)

活动图:

您的活动图允许执行操作"先移动"或"移动第二"只有一次,您必须再次开始整个活动才能继续。 玩家不是参与者。游戏只是参与者。当你开始游戏时,它必须等待事件"开始"。事件发生后,您可以等待"先移动"或"移动第二"事件。在发生一些移动事件后,您必须切换播放器。 我认为,您的活动图不需要有最终节点。当你关闭游戏时,我停止了活动。 活动定义行为。 Behaviorn可以设置为分类器行为,并在创建分类器实例时激活。

类图:

玩家不在游戏中构图

用例:

我想说你定义的UseCases是活动图的步骤。 Meaninfull用例将是" Play Game"或者可能"显示分数"。