ざっくりですがクラス図作成しました。
これからプログラムを書き始めます。
ランキングに参加してます。
よかったらクリックをお願いします。
今回は記録ファイルの構成についてまとめます。
基本的には以下に従います。
ファイル拡張子は".blk"
としたいと思います。
繰り返しになる部分もありますが、
ファイル内部構成は以下の通りです。
①開始日時
②終了日時
③大会名
④場所
⑤参加人数
⑥手番(選択色含む)
⑦以下、置いた手を記載
⑦の置いた手に関して、2番手が、1番手の初手(ゲームの開始)から数えて6手目にピースtを以下のように配置した場合、
基準位置が横8, 縦7, ピースt, 向き6のため、
>006 02 0807t6
と表記します。
・006 → 初手から数えて6手目
・02 → 2番手
・0807t6 → ピースtを横08,縦07,向き6
置けなくなってパスの場合はpassと表記します。
例えば30手目に4番手が置けなくなった場合、
>030 04 pass
とします。
ランキングに参加してます。
よかったらクリックをお願いします。
以下にルールを記載します。
・4人対戦で交互に置き始める(ひとまず、今回のプログラムはこの前提でいきます)。
・全員、4すみのうち一つの角から置き始める。この時、必ず隅がうまるように置くこと。
・一番手を決めて、右回りに2番手、3番手、4番手、戻って1番手と繰り返しおいていく。
・順番が回ってくるたびにピースを1つ置いていく。
・置くピースは必ずそれまでに自分が置いたピースの角と角がつながるようにおかないといけない。
・自分のピース同士(同じ色のピース同士)が辺で接する場所には置けない。
・相手のピース同士(異なる色のピース同士)は辺で接する場所に置ける。
・一度置いたピースは動かすことができない。
・ピースを置くことができなくなったらそのプレイヤーはその時点で終了。
・全プレイヤーがピースを置けなくなったらゲームは終了。
次にスコアの数え方について記載します。
・残ったピースのマス目の合計が少ない順に1位、2位、3位、4位。
Blokusのルールは以下のリンクをたどると確認できます。
ランキングに参加してます。
よかったらクリックをお願いします。
ピースは以下の通り、21個のピースが存在します。
座標の表記(基準位置・基準の向き)は、以下の私の別ブログに記載した内容に準じます。
ランキングに参加してます。
よかったらクリックをお願いします。
ボードは以下の通り、20×20マスで、マス目を埋める形でピースを置きます。
座標の表記は、以下の私の別ブログに記載した内容に準じます。
ランキングに参加してます。
よかったらクリックをお願いします。
USED【送料無料】「要求」の基本原則 (技評SE選書) 岡 大勝 and 三宅 和之 価格:4,006円 |
仕様化フェーズ
→目的: ソリューションを使用として定義する。
→観点: 要求の受け手(開発者)の観点<対象を絞って・深く>。
(「要求」の基本原則(2009), p37)
<機能リスト>
機能①
全21ピースを選択し、手番通りに適正な方向に向けてBlokusのルールに従ってピースを操作できる機能
→要件id:F001> ピースを視覚的に操作できる。
→要件id:F002> ピースを置いた順番に置いた位置・状態(回転と鏡映による8つの状態)を記録する。
→要件id:F003> 手順の手戻りができる。
機能②
初手からの操作の記録(本筋と異なる手筋も含めて)ができる。
→要件id:F004> 変化の記録(本筋とは異なる手順の記録)ができる。
次回からお試しプログラムを作って、内部設計・外部設計の見通しを立てたいと思います。
ランキングに参加してます。
よかったらクリックをお願いします。
USED【送料無料】「要求」の基本原則 (技評SE選書) 岡 大勝 and 三宅 和之 価格:4,006円 |
導出フェーズ
→目的: 要望を実現するソリューションを導出する。
→観点: 要求の受け手(開発者)の観点<幅広く・浅く>。
(「要求」の基本原則(2009), p37)
<要件リスト>
要件id:F001
ピースを視覚的に操作できる。
要件id:F002
ピースを置いた順番に置いた位置・状態(回転と鏡映による8つの状態)を記録する。
要件id:F003
手順の手戻りができる。
要件id:F004
変化の記録(本筋とは異なる手順の記録)ができる。
次回は仕様化フェーズを実行します。
ランキングに参加してます。
よかったらクリックをお願いします。