プログラミング的考え方へ導入するための未経験者向けテーブルゲームの制作


Keywords: テーブルゲーム, プログラミング

1.はじめに

情報社会が飛躍的に進化していく中で身の回りの環境を新しく創造していくために、コンピュータを制御する能力の重要性が高まっている。文部科学省は、2020年より小学校でのプログラミング教育の必修化にむけて検討を始め、今後は興味関心以前のリテラシーとしてプログラミングのスキルは位置づけられると考えられる。
しかしながら、プログラミングを学習していく際に、独特の手続き的な考え方に対して高い壁を感じて苦しむ子供達は多い。それに対し、プログラミング学習を難無くこなすことができる子供達は、その考え方への「慣れ」が築かれているのではないかと考える。したがって、その様な挙動に対する慣れを予め築いておけば多少は楽に理解できる様になるのではないだろうか。
一方で、人間は遊びの中で学ぶことができる。このことから、「プログラミングの学習」という感覚から離れて、遊ぶ様にプログラミングの処理過程を体験することができれば慣れに繋げることができるのではないかと考えた。

2.研究の目的

本研究では、プログラミングに触れたことのない未経験者が、プログラミングの理解に必要な「慣れ」を築くことができるテーブルゲームの制作を行う。このゲームで遊ぶことによって、実際にプログラミングに触れた際に理解を支援することを目的とする。

3.先行事例との関連

デジタル媒体は、入力されたコードの実行結果を即座に返すことができ、そのフィードバックに応じて試行錯誤を行うことができることから、デジタル媒体による学習ツールは、自分でコードを記述するための基礎を理解するのに向いていると考えられる。
一方でアナログの教材は、コードの記述よりもコンピュータの処理のルールについて学ぶもの[1]であったり、ルールの中にアルゴリズムの考えが含まれているものであったり[2]と、内部処理について学習するものが多い傾向にある。
この事から、プログラミング的考え方への導入を目的とするならば、アナログの方が向いていると考え、アナログゲームを制作することとした。

4.調査と分析

研究を行うに当たって、プログラミングを苦手とする大学生二人に対してインタビューを行った。その結果、どちらも「内部処理のイメージができない」ということから苦手意識を抱いているということがわかった。また、その考えから、二重ループ等やや複雑なテクニックを使用するプログラムで苦戦する傾向にあったそうである。このことから、プログラミングを理解するためには内部処理の理解が重要になると仮定した。ある特定のプログラムの内部処理を扱うゲームによって現状ブラックボックスになっている部分の理解を支援するという方法を採ることにした。
実際にゲームを制作するにあたって、既存のプログラミングに関するアナログゲームについて調べたり、実際にプレイをしたりもした。その結果、既存のアナログ教材は、何かを置いたり盤上で駒を動かしたりするだけ等、アナログならではのギミックが少ないように見受けられた。これを踏まえ、今回制作するゲームには、アナログならではのギミックも盛り込み、楽しくプレイできる様にしたいと考えた。

5.最終成果物

5.1.最終成果物

最終的に制作したものが、図1に示した様なものである。
このゲームは、盤面上のレールに沿って転がるボールが自分の方へと転がって来る様レールを組み替えていくゲームとなっており、そのレールの組み換えは、亀の形をした駒に幾つかの指示を与え、動かすことで行う。このことから、タイトルとしてはボールを導くという意味で「BALL LEADER」と名付けた。

駒を動かすための指示には、主に「前へ進む」「右へ90度回る」「左へ90度回る」の3つが存在し、これらの指示を最大3つ並べる事によって駒は動く。90度回る指示にも、それぞれに駒の突起をマスの穴に挿して行うものと、マスの穴に挿さずに行うものが存在し、駒の突起をマスの穴に挿して回転することでマスも回転し、レールが組み変わる様になっている。
また、3つ全ての指示の組み合わせとそれによる駒の動き全て掲載した「カメコントロール大全」という名称の本も作成し、プログラミングへの慣れが浅い人でもゲームに取り付きやすくすることを図った。

5.2.テストプレイ

4人の情報系学部の大学生に集まってもらい、実際にゲームのプレイを1回行ってもらった。ゲームは45分程度掛かった。ゲーム中は指示の組み合わせを考えながら「難しいなこれ」という声を何度か上げていたが、終了後は「面白かった」「頭使った」「指示を考える際にフローチャートが頭に浮かんだ」といった声を聞くことができた。ゲーム中プレイヤー同士の助言も頻繁に行われ、「他の人へ助言し、その結果思い通りになっても嬉しい」という声も聞くことができた。

5.3.考察

プレイヤー同士で助言し合う機会を作るために2vs2で遊べるルールの追加も検討していたが、プレイヤー同士が敵対している今回のルールの時点で助言が頻繁に行われたため、必要性は薄いことがわかった。
また、ゲームをプレイしやすくするために作成した「カメコントロール大全」だが、今回のテストプレイにおいては開かれる機会は無かった。これは、他のプレイヤーとの会話がこの本の「指示を考える際の参考にする」役割を果たしていたためであると考えられる。しかし、今回テストプレイをしてもらった大学生達は気軽に会話ができる仲であったため、初対面の人同士でプレイした際は開かれる可能性があると考えられる。
「指示を考える際にフローチャートが頭に浮かんだ」といった声を聞くことができた事から、このゲームはプレイヤーをプログラミング的考え方へ導入させる働きをしているという事が考えられる。

6.今後の展望

今の時点ではプレイヤーが4人揃わないとプレイできないというデメリットが存在する。今後は3人以下でもプレイできる様、使用する道具やルールに変更を加えるか新しいルールを考案することで、親子や兄弟による1vs1での対戦を可能にする等、プレイすることができる場面を増やす。
今回、「カメコントロール大全」に掲載されている指示の組み合わせの順番は、「前へ進む」「左へ90度回る」「右へ90度回る」の順であいうえお順の様にし、使用する指示の数別にインデックスを作成した。使用される目的次第では、並びやインデックスを変更する事でより使いやすくできる可能性もあるため、もし使用される機会があり必要性があった場合、その目的も分析し、使いやすくなるようにする。
また、駒の形状も、今回は同じような指示を出して亀を動かすプログラミング言語「LOGO」に由来して亀の形にしたが、独自性がありかつゲームに適したモチーフを考え、その形状に変更する。

7.おわりに

ゲームのルールを考え、それを形にし、実際にプレイしてもらう事ができた。今後は、今後の展望の項に記した事を可能な限り実現していきたいと考えている。