Project / Coubertin / 野球盤のユースケース


Project/Coubertin

野球盤のユースケース

野球盤のユースケースを一度まとめてみましょう。

http://tallking.hp.infoseek.co.jp/prj/Coubertin/image/BB_UseCase.jpg

上記は、ユースケース図と呼ばれ、システムで何ができるかを表現したものです。主に要求をまとめたり、要求を導き出すために使用されます。プレーヤーやアンパイアなどの外部からシステムを利用する人やモノはアクターという人型のアイコンで表されます。楕円の図形で表される「ボールを見極める」「点数の加算」などは、ユースケースと呼ばれ、アクターから見て何ができるかを表しています。

野球盤は、基本的に2人で行うゲームなので、アンパイヤは、プレイヤーが兼ねることも可能です(コンピュータに行わせるのもありだと思うけど、ここではあまり深入りしないことにします)。 「ジャッジ」は、ストライク・ボールの判定をすること。「カウント」はストライクなら、ストライクカウントをアップさせ、ボールならボールカウントをアップさせることです。

プレーヤーAが守備、プレーヤーBが攻撃で数件ほどケースを考えてみます。

ランナー無しでヒット(1塁打)を打った場合。

  • プレーヤーA:球種としてカーブを選択する
  • プレーヤーA:ボールを投げる
  • プレーヤーB:ボールを見極める
  • プレーヤーB:打てると判断し、バットを振る (ヒットとなる)
  • プレーヤーB:ランナーを1塁に進める
  • アンパイヤ:ストライクとボールのカウントをクリアする

ランナー2塁でヒット(1塁打)を打った場合。

  • プレーヤーA:球種としてストレートを選択する
  • プレーヤーA:ボールを投げる
  • プレーヤーB:ボールを見極める
  • プレーヤーB:打てると判断し、バットを振る (ヒットとなる)
  • プレーヤーB:ランナーを1塁と3塁に進める
  • アンパイヤ:ストライクとボールのカウントをクリアする

ランナー2塁でツーベースヒット(2塁打)を打った場合。

  • プレーヤーA:球種としてストレートを選択する
  • プレーヤーA:ボールを投げる
  • プレーヤーB:ボールを見極める
  • プレーヤーB:打てると判断し、バットを振る (ヒットとなる)
  • プレーヤーB:ランナーを2塁に進める
  • アンパイヤ:プレーヤーB側に1点加算する
  • アンパイヤ:ストライクとボールのカウントをクリアする

1ストライク2ボールで、見逃し、ストライクだった場合。

  • プレーヤーA:球種としてストレートを選択する
  • プレーヤーA:ボールを投げる
  • プレーヤーB:ボールを見極める
  • プレーヤーB:打てないと判断し、見逃す (ストライクになる)
  • アンパイヤ:ストライクカウントを追加し、2ストライク2ボールにする

1アウト、2ストライク2ボールで、見逃し、ストライクだった場合。

  • プレーヤーA:球種としてストレートを選択する
  • プレーヤーA:ボールを投げる
  • プレーヤーB:ボールを見極める
  • プレーヤーB:打てないと判断し、見逃す (ストライクになる)
  • アンパイヤ:アウトカウントを追加し、2アウトにする
  • アンパイヤ:ストライクとボールのカウントをクリアする

2アウト、2ストライク2ボールで、見逃し、ストライクだった場合。

  • プレーヤーA:球種としてストレートを選択する
  • プレーヤーA:ボールを投げる
  • プレーヤーB:ボールを見極める
  • プレーヤーB:打てないと判断し、見逃す (ストライクになる)
  • アンパイヤ:ストライクカウントとアウトカウントをクリアする
  • その後、攻守交代する(プレイヤーAは攻撃に、プレイヤーBは守備に)

などなど。

細かい部分では、いろいろ記述されてない部分があるかもしれないですが、だいたいユースケース図に挙げられるような形になっていると思います。

図やユースケースに関する記述を見てピンと来ない場合は、一度自分で書いたりしてまとめてみるとよいでしょう。ちなみに上記のユースケース図はJUDE/Communityを使用して作成しました。手書きでも十分ですが、このような(UMLモデリング)ツールを使用するのもよいと思います。


選択肢 投票
役に立った 2  
まあまあ 0  
役に立たなかった 0