SEになろうプロジェクト第2弾-第2回~たたき台の修正点を見つける~

「SEになろうプロジェクト」は、プログラミング言語の仕様を学ぶのではなく、プログラムで現実の課題をどのように解決するかを体感するプロジェクトです。第2弾は、レクリエーションゲームのデジタル化に挑みます。
Contents
仕様を元に生成AIに作らせたゲームをプレイする
第1回でグループごとに仕様を作りました。その仕様をまとめて一つの仕様書にして、生成AIに指示をしたらそれっぽいゲームを作ってくれました。
まずは、この「それっぽいゲーム」で遊ぶところから始めます。

悲鳴というか、怒号というか、あちらこちらから「クソゲーだ!!」という声が上がる展開です。そうです、生成AIの一発目のアウトプットはクソゲーでした。
生成AIへの手順を工夫すれば、もっと完成度の高いゲームが出てくると思います。が、ちょうどいいたたき台になったので、このまま進めます。
問題点・改良点を洗い出す
「クソゲーだ!!」と口で言うのは簡単です。単に事象を説明しているだけに過ぎません。それではなんの学習にもならないので、「なぜクソゲーと感じるのか、判断できるのか」を仕様化していきます。
ゲームの問題点・改良点を挙げて、「どうしたら改善できるか?」「どうしたらもっと面白くできるか」という観点で洗い出していきます。

手を入れる優先度を判断する
続いて、どこから修正していったらよいか優先順位をつけていきます。最優先で修正すべきは「ゲームとして成立するために必要な機能」です。
例えば「AIの投球ターンが終わらない」なんていうのが該当します。交互に投球するのに、AIのターンが終わらないというのは致命的です。こういうところから優先的に修正していきます。

この機能がなくても、この問題が修正されなくてもゲームが成立するというところは後回しです。完成させるまでに時間が限られているので、重要なところから作っていきます。VE(Value Engineering:バリュー・エンジニアリング)では、「基本機能」「二次機能」と表現します。
このような優先順位を決めて制作するテクニックは、他にも応用できます。ぜひ自分の課題にも適用してみてください。
対象のjsモジュールを絞り込む
改善する機能を決めたら、それを実現しているプログラムコードを特定します。通常JavaScriptコードは、大きな機能のかたまりごとにファイルに分かれています。だいたい当たりをつけてファイルを絞っていきます。

すべてのコードを生成AIに食わせて特定してもいいのだけれど、この「当たりをつける」というのがAIで代替不可能なところです。人間とAIの棲み分けで、まだまだ人間に優位性のあるところです。
そして、絞り込めました。

さあ、修正だ
修正箇所が見えたところで、本格的に手を入れていきます。ここは私が担当します。次回までに、それらしく作っておきます。
次回予告
次回は、2026年2月14日9時30分スタートです。
