情報処理学会第81回全国大会
「情報学的アプローチによる『情報科』大学入学者選抜における評価手法の研究開発」(3)
CBT V2システムと試行結果
大阪学院大学 西田知博先生
CBT V1からV2へ

私からは、今年度実施したCBT(Computer Based Testing)システム「CBT V2」による情報入試施行試験について、出題内容と高校生・大学生による実証実験の結果についてご紹介します。

まずV2とありますが、昨年度(2017年度)行ったのはV1の試験です。V1というのは、我々が最初に開発したCBTのシステムでした。V1では、この事業の前に情報処理学会の情報入試研究会が行った紙ベース(PBT)の「情報入試全国模試」と同様の試験をCBTで行うことができるということを、第一次の目標としました。
今年度のV2では、CBTならではのインタフェースや出題方法を使って試験をするということを目標としました。具体的には、ある程度の問題のプールを用意してそこからランダムに出題したり、いわゆる「ゲームブック型」(※1)の問題や、実際にブロックプログラミングを行ってデバッグしながら解くというような問題を出したりしました。
※1 連続的な問題で、受験者の回答によって次の問題が変わり、あるところで後戻りができないようにする出題方法
CBTならではの問題や出題方法

こちらが今年度の試験の構成です。出題範囲は「データの分析・表現」と「プログラミング/アルゴリズム」とし、セット1・セット2の二つの問題群を作りました。
セット1はいわゆるIRT(Item Response Theory:項目反応理論)を想定した小問から構成されるパートです。実際には小問で思考力・判断力・表現力を問うことは難しいかもしれませんが、そういうことができるのかどうかを確認するという意味も込めて行いました。ここでは約100問の問題のプールを用意してそれを区分けし、区分けの中からランダムに15問出題するようにしました。これを30分で行いました。
もう一つのセット2は、「データの分析・表現」と「プログラミング/アルゴリズム」を1問ずつ、計2問出題するものを2種類(2a、2b)作って、受験者にはそのどちらかのセットを受験してもらいました。こちらは先ほど紹介したゲームブック形式など、ストーリーに沿って中問形式の問題に答えていくものです。こういう形でいろいろと試してみようというのが今年度V2の試験でした。
セット1:IRTを利用した4択の小問
実際に問題を見ていただきましょう。下図はセット1で出題されたものです。こちらはロボットの動きを示す問題が書かれていて、該当する位置に達する手順のものを選ぶというオーソドックスな問題です。

一方こちらは、トランプのカードを一意に識別できる数を表す式を作るために、実際に選択肢をドラッグして並べ替えをする問題です。このような並べ替え問題はV1の時もありました。

さらに、文中にブランクを設けて当てはまる数を選ぶ(下図問6)、プログラムの手順を読んで実際にトレースして結果を選ぶ(下図問12)といったタイプのものもあります。


下図は、これまで情報入試研究会のペーパーテストやV1でも行ったことがある、いわゆる短冊を並べ替えてプログラムを書く問題ですが、それほど難しくないものを出題しました。ただ,こういった問題が15問もあるので、30分でやるにはかなり大変なものになりました。

セット2a :第1問「レジの動作テスト」第2問「自治会館の部屋の予約方法の改善」
セット2aの第1問は、先ほどお話ししたゲームブック型の問題で、出題者側としてはちょっと冒険をするものでした。ここではいわゆる「ブラックボックステスト(※2)」を行いました。
※2 入力データと出力データの結果だけに着眼し、それが 仕様書どおりに正しく処理されているかを調べるテスト

シチュエーションとしては、新しく導入したレジの動作を確認するという問題です。最初の問題は消費税が正しく計算されているかを調べるのですが、実際に購入する商品を選び、その計算が正しくされているかを見ます。例えば1円の商品のみを選択して計算すると「購入金額2円」と出てくるのですが、これは何かおかしいですよね。こういったことをチェックしていきます。
チェックは複数の商品を組み合わせて買ってもよく、例えば1円と100円で合計101円の商品を買った場合の結果を調べることができます。



このようなチェックを繰り返し,最終的に選択肢の中から該当する不具合を選ぶという問題です。問1は、この段階で「そういえばこれをチェックしていなかった」というものがあれば戻ってチェックし直すことができます。

一方、問2では、買い物の際のポイント計算をしています。こちらは最終回答の選択肢を見たら元に戻れないという構造になっているので、きっちりテストをする必要があります。この問題は分野としてはプログラミングですが、プログラムの「テスト」というこれまでとは違った出題となっています。

第二問は、データを扱うもので、自治会館の部屋の予約方法の改善という設定です。
問題の最初に示されているのは現在の自治会館の部屋の予約表ですが、これでは使い物になりません。これをどうやって改善するかという問題です。


設問は、こういった表で管理することで起こるトラブルを選んだり、これを予約受付アプリにするなら何をどのように表示したらよいかということを短冊を使って答えたりするものになっています。
また、利用者は申し込み時に何を・どう入力して、入力時にはどういうチェックをしたらよいかといった、インタフェースのデザインに関わることも問題に入れています。このように、データの扱い方の問題といっても、今までとは違った観点も入れました。

セット2b:第1問「生徒の成績データベース」第2問「ロボットの動きのプログラム」
こちらはセット2bの第1問、データベースに関する問題です。生徒、部活、科目、成績という四つの表について、選択や射影や結合といった表の操作をするという問題です。操作は,sAccessというデータベースの環境をご存知ならばよくわかると思いますが,日本語を使った表記を用いており,例示して説明しています。解答はブロック(短冊)を上部にフローティング表示される選択肢の中から操作などを選んで並べていくことによって行います。



第2問は、ロボットを動かすブロックプログラムの問題です。プログラムを読んでロボットが実際どのように動くかを答える問題と、指定された動作をするためにどのようにプログラムを作成したらよいかを考える問題で構成されています。プログラム作成は,なるべく手数を少なくして目的に達するというアルゴロジックに近い問題となっています。

この図のプログラムは、「前進2回+右回転」を2回繰り返し、最後に前進を1回を行うものですが、この問題ではこのロボットをはじめに0の位置に置いた時、どのように動いていくかを問うています。

もう一つは下図のように、指定された順番でロボットが動くように前進や回転を入れてプログラムを作っていくというものです。実際にプログラムを実行して確認することができるので、実際に自分で結果を確かめながら解答することができます。

大学生・高校生による実証実験の結果

この試験問題について、V1の時と同様に、大学と高校でそれぞれ実証実験をしました。V1の時は、高校では大学で行ったもののサブセットを実施しましたが、今回V2では、セット1とセット2の二つを両方とも実施していただくという条件で協力校を募集して、大学生と同じ試験を実施しました。
大学の方は昨年度と同様に大阪大学と東京大学の1年生を対象に8月に実施しました。参加者数は、阪大15人、東大は96人の計111人でした。高校は情報の授業を受けた1・2年生で、合計8校1531名が今年の1月と2月に受験しました。ただ、一部別々の時間に受験してもよい、ということにしたので、セット1の受験者数と、セット2a・2bを合わせた受験者数の合計が多少違っています。
今回、大学での実証実験ではBenesseのGPS-Academicという汎用的能力を測る試験を同時に受験してもらって、それとの相関を見ました。これは、GPS-Academicの評価指標に批判的思考力、協働的思考力、創造的思考力というものが入っているため、こちらとの関係も見るためです。
■大学生~セット1は比較的きれいな分布、セット2bは差が極端に大きい
大学生の結果が下図です。左上が全体の結果で、左下のグラフがセット1、右上がセット2a、右下が2bの得点分布です。
セット1は、多少ボコッとしたところはありますが、比較的きれいな山になっていますが、セット2a、2bは何とも言えない形で、特に2bの方は山が二つあるような形になっています。
セット1については、15問で単純に15点満点、セット2aと2bは、第一問・第二問を各30点、どちらも合計60点満点で評価しています。セット2aの平均点が43.41点、2bがちょっと低くて28.93点で、しかもかなり散らばりが大きいという結果になりました。

さらにセット2a、2bのそれぞれの問題を見ていきます。
下図の左上がセット2aの第一問、右上が第二問です。左下がセット2bの第一問、右下が2bの第二問です。こうしてみると、左下セット2bの第一問、データベースに関する問題が、30点満点で平均が12.33点と最も低くなっています。このデータベースの問題に関しては、後でお話ししますが、高校ではもっと明らかな差が出ています。

こちらがセット1とセット2の得点の相関です。セット1はIRTを想定したものですが,重み付けができていないので、得点だけで見ています。
左側の3つがセット1とセット2a、右側の3つがセット1とセット2bとの相関で、それぞれの一番上がセット2全体、真ん中がセット1とセット2の第1問、一番下がセット1とセット2の第2問という形です。
近似直線を引いていますが、かなり散らばりがあります。相関係数を取ると0.5とか0.45など、ある程度の相関は出ているという形です。
※クリックすると拡大します
さらにGPS-Academicとの相関を見ます。GPS-Academicの結果は偏差値で出てくるので、その偏差値と各セット合計の点数について見ました。
これで見ると、セット2aとGPS-Academicの思考力総合(批判的思考力+協働的思考力+創造的思考力)には一定の相関がありましたが、セット2bの第一問(データベースの問題)は相関がほとんどありません。また、セット2bの第二問(プログラミングの問題)とGPSの批判的思考力に多少相関が出ているという結果になりました。
※クリックすると拡大します
■高校生~セット1はほぼ正規分布、セット2bの低得点への偏りは大学生より大きい
次に高校の結果です。左上が全体の結果、左下がセット1、右上がセット2a、右下が2bです。セット1はきれいな分布になっています。セット2aは、0点は少ないものの、その後はほぼ同じ人数の分布が続き低得点者が多くなっています。ただ、ピーク後はなだらかに減少する分布になっています。
一方2bは、0点に最大の山があって、8~12点のところにもう一つ山があるのですが、得点が低い方への偏りは先ほどの大学生よりももっと顕著です。ただし、散らばりはセット2aの方があるという結果になりました。

プログラミングは底上げされたが、データベースは全くできていない
個別の問題を見ると、プログラミング、アルゴリズムの問題(セット2a第一問とセット2b第二問)は、比較的似たような分布です。同じプログラミングを扱う問題でも「プログラムのテスト」と「プログラムの作成」という違う内容で出題したのですが似た結果となりました。以前に情報入試委員会がペーパーテストで全国模試をした時は、プログラミングはもっと散々な結果だったので、「手も足も出ない」という形ではない出題ができたと考えます。

それに対してデータベースの結果は散々でした。我々としては、あれくらい説明をすれば大丈夫だろう思っていましたが、蓋を開けてみると受験者727人中542人が0点でした。原因はいくつかあって、その一つは、データベースの定義を出す時には項目の名前をきちんと書かなければいけないのができていなかったなど正確性の問題です。例えば問題文には「女性」と書いてあっても、表の項目名に「女」と書いてある場合、「女性」と書くとアウトになってしまいます。採点は幅を持たせていて、出力が正しくできればよし、としてあるのですが、項目名が間違うと0点になるので、それらに部分点を与える評価も必要かもしれません。
また、受験者へのアンケートで、データベースソフトによる情報検索を学んだことがあるかどうかを聞いていますが、191人は「やったことがある」と答えています。この経験が直接得点に結びつくわけではありませんが、それでも、やっていないとなかなか厳しいものがあり、高校生に出題する際には配慮が必要だった問題でした。
下図がセット1とセット2の相関ですが、数字の上ではそれなりの相関が出ていますが、大学よりもバラけた結果になっています。
※クリックすると拡大します
セット1の高校と大学の得点分布の比較です。大学生は阪大・東大なので、高得点に寄った分布になっていますが、高校もそこそこの結果を出しています。

セット2に関していえば、2a(上の二つ)は大学生が明らかに高得点側に偏っていますが、高校は30点付近まではほぼ同じ度数です。一方2b(下の二つ)に関しては、大学は二つの山ができた一方、高校生は下の方にかたまっているという感じです。

CBTならではの問題の影響か、6割以上がCBTを支持
試行試験の受験者に対してアンケートをいくつか取っています。「操作がスムースにできたかどうか」に関しては、大学も高校も良い評価が多かったと思いますが、一方で「非常に操作しにくかった」という人が約1割います。環境に左右される点もありますが、ここは改善の余地はあるかなと思います。
また、今回初採用のゲームブック型の問題について、問題提示までの時間は、内部構造の問題で今回は結構大きめのXMLファイルを読み込んだりしていたのでそういうところの懸念もあったのですが、さほど遅さは感じていないようでした。

「問題を解いていて解答が保存それていないのではないか、といった不安はないか」という設問では、大学生は、少し不安があったという人がいましたが、7割程度はそれほど不安には感じていないと答えています。一方、高校生の方は不安を感じていないという答えが1割程度低く、やや不安が多いという結果になっています。
最後に、CBTとPBTではどちらがよいかという質問については、V1がほぼ半々だったのに対し、今回はCBTならではの問題を入れたこともあり、高校も大学も6割以上がCBTの方がよいという結果でした。
紙とCBTがなぜ良いかという理由を、書いてもらったものがこちらです。紙が良いという人からは、「解いている実感がある」「書き込みができる」「CBTは目が疲れる」「全体の見通しが効く」ということがありました。

一方、CBTがよいという意見の方は、「タイプした方がいい」「時代に合っている」のほかに、「選択肢の並び替えがしやすい」などインタフェースの部分で評価している人もいます。また、これはちょっと前のめりな答えですが、「冒険感がいい」という生徒もいました。やはり短冊を並び替え,ブロックプログラミングなど、CBTならではの機能が評価されたということが伺えました。

情報処理学会第81回全国大会 「情報学的アプローチによる『情報科』大学入学者選抜改革における評価手法の研究開発」(3)講演より