説明

クイズ生成装置及びクイズ生成方法

【課題】サーバ装置からクイズが提供されたクライアント端末を操作して、提供されたクイズの解答を行う際に、解答者の解答意欲が低下してしまうということを防止する。
【解決手段】辞書データベース2aに登録されている説明の中に、その説明により特定される音楽用語に非常に近い語句(類似語)が含まれている場合には、辞書データベース2aに類似語IDを登録しておく。また、類似語データベース2bに類似語IDと類似語(語句)とを対応付けて登録しておく。そして、類似語IDが登録されている説明に含まれている類似語を類似語データベース2bから抽出し、抽出した類似語を隠した説明をクイズの問題にする。これにより、クイズとして成立しないような問題が出題されることを防止することができ、ユーザの解答意欲が低下してしまうことを防止することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クイズ生成装置及びクイズ生成方法に関し、特に、用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するために用いて好適なものである。
【背景技術】
【0002】
従来から、用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成することが行われている。具体的に説明すると、クイズを生成するサーバ装置は、まず、用語とその用語の説明とが対応付けられて登録されているデータベースを用いて、そのデータベースに登録されている説明の何れかと、その説明に対応付けられている用語を含む複数の用語とを抽出する。そして、サーバ装置は、抽出した説明を問題にすると共に、抽出した複数の用語を選択肢とするクイズを、ネットワークを介してクライアント端末に提供する。
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、前述した従来の技術では、説明の中に、解答となる用語を想起させてしまうような言葉が入っていると、その説明が問題として成立しなくなる虞があった。
また、選択肢とする複数の用語の関連性が希薄であったり、以前に出題された問題や選択肢が再度クイズとして出題されたりすると、正解の選択肢を解答者に容易に想起させてしまう虞があった。
【0004】
また、クイズの正誤に応じて得点を計数するようにした場合、クイズに正解したか否かでだけで得点を定めてしまうと、解答者がクイズに飽きてしまう虞があった。
さらに、クイズに対する解答を行った後に、そのクイズの正解が表示されるようにした場合、解答者は、クイズに対する正解を見た後、ブラウザの戻るボタンを押す等して、そのクイズに対する解答をやり直すことが可能であった。このため、クイズが不正に進行してしまう虞があった。
【0005】
以上のように従来の技術では、サーバ装置等のクイズを生成するクイズ生成装置から提供されたクイズに対する解答意欲が低下してしまうという問題点があった。
本発明はこのような問題点に鑑みてなされたものであり、クイズ生成装置から提供されたクイズに対する解答意欲が低下してしまうことを防止することを目的とする。
【課題を解決するための手段】
【0006】
本発明のクイズ生成装置は、用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成装置であって、前記問題とする用語の説明を修正するか否かを判定する判定手段と、前記判定手段により、前記問題とする用語の説明を修正する必要があると判定されると、その問題とする用語の説明を修正する修正手段と、前記クイズを表示するためのデータを生成する生成手段と、前記生成手段により生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信手段とを有し、前記生成手段は、前記修正手段により、前記問題とする用語の説明が修正された場合には、その修正された用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを表示するためのデータを生成することを特徴とする。
また、本発明の他の特徴とするところは、用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成装置であって、前記クイズを表示するためのデータを生成する生成手段と、前記生成手段により生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信手段と、前記送信手段により送信されたデータに基づいて前記クライアント端末で表示されているクイズにおける選択肢をユーザが選択可能な選択肢として登録する登録手段と、前記送信手段により送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信手段と、前記受信手段により受信されたデータが示す選択肢が、正解か否かを判別する判別手段とを有し、前記判別手段は、前記受信手段により受信されたデータが示す選択肢が、前記登録手段により登録された選択肢と同じである場合に限り、前記受信手段により受信されたデータが示す選択肢が、正解か否かを判別することを特徴とする。
また、本発明のその他の特徴とするところは、用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成装置であって、前記クイズを表示するためのデータを生成する生成手段と、前記生成手段により生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信手段と、前記送信手段により送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信手段と、前記受信手段により受信されたデータが示す選択肢が、正解か否かを判別する判別手段と、前記送信手段によりデータが送信された時刻と、前記受信手段によりデータが送信された時刻とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出する算出手段と、前記算出手段により算出された時間に応じて、前記判別手段により正解と判別された場合に前記ユーザに付与する得点を決定する得点決定手段とを有することを特徴とする。
【0007】
本発明のクイズ生成方法は、用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成方法であって、前記問題とする用語の説明を修正するか否かを判定する判定ステップと、前記判定ステップにより、前記問題とする用語の説明を修正する必要があると判定されると、その問題とする用語の説明を修正する修正ステップと、前記クイズを表示するためのデータを生成する生成ステップと、前記生成ステップにより生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信ステップとを有し、前記生成ステップは、前記修正ステップにより、前記問題とする用語の説明が修正された場合には、その修正された用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを表示するためのデータを生成することを特徴とする。
また、本発明の他の特徴とするところは、用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成方法であって、前記クイズを表示するためのデータを生成する生成ステップと、前記生成ステップにより生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信ステップと、前記送信ステップにより送信されたデータに基づいて前記クライアント端末で表示されているクイズにおける選択肢をユーザが選択可能な選択肢として登録する登録ステップと、前記送信ステップにより送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信ステップと、前記受信ステップにより受信されたデータが示す選択肢が、正解か否かを判別する判別ステップとを有し、前記判別ステップは、前記受信ステップにより受信されたデータが示す選択肢が、前記登録ステップにより登録された選択肢と同じである場合に限り、前記受信ステップにより受信されたデータが示す選択肢が、正解か否かを判別することを特徴とする。
また、本発明のその他の特徴とするところは、用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成方法であって、前記クイズを表示するためのデータを生成する生成ステップと、前記生成ステップにより生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信ステップと、前記送信ステップにより送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信ステップと、前記受信ステップにより受信されたデータが示す選択肢が、正解か否かを判別する判別ステップと、前記送信ステップによりデータが送信された時刻と、前記受信ステップによりデータが送信された時刻とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出する算出ステップと、前記算出ステップにより算出された時間に応じて、前記判別ステップにより正解と判別された場合に前記ユーザに付与する得点を決定する得点決定ステップとを有することを特徴とする。
【発明の効果】
【0008】
本発明によれば、クイズ生成装置から提供されたクイズに対する解答意欲が低下してしまうことを防止することができる。
【発明を実施するための最良の形態】
【0009】
次に、図面を参照しながら、本発明の一実施形態について説明する。
図1は、本実施形態のクイズ生成装置の一例であるサーバ装置を含むネットワークシステムの構成の一例を示した図である。
図1において、ネットワークシステムは、サーバ装置1と、データベース2と、インターネット等のネットワーク3と、複数のクライアント端末4a〜4nとを有している。
【0010】
データベース2は、音楽用語と、その音楽用語の説明とが対応付けられて登録されている辞書データベース2a(図14を参照)等を含むものである。このデータベース2は、例えば、ハードディスクドライブ等を備えた記憶装置を用いることにより実現できる。
【0011】
サーバ装置1は、辞書データベース2aに登録されている音楽用語の説明を問題とし、その説明に対応付けられている音楽用語を含む複数の音楽用語を選択肢とするクイズをクライアント端末4に提供する。なお、サーバ装置1は、音楽用語のクイズの他に、クライアント端末4のユーザから指定された音楽用語の説明(以下、必要に応じて音楽用語の解説と称する)もクライアント端末4に提供するようにしている。
【0012】
クライアント端末4は、サーバ装置1から提供されたクイズを画面上に表示する。そして、クライアント端末4のユーザである解答者が、クイズの問題に対する選択肢の何れかを選択すると、クライアント端末4は、解答者が選択した選択肢の内容等をサーバ装置1に送信する。
【0013】
サーバ装置1は、解答者が選択した選択肢の内容等をクライアント端末4から受け取ると、解答者が選択した選択肢が正解であるか否かを判定し、判定した結果に応じた情報をクライアント端末4に送信する。クライアント端末は、サーバ装置1から送信された情報に基づく表示を行う。
なお、クライアント端末4で表示される画面の内容については、図3〜図8等を用いて後述する。
【0014】
図2は、サーバ装置1及びクライアント端末4の構成の一例を示した図である。
図2において、サーバ装置1及びクライアント端末4は、CPU1101と、ROM1102と、RAM1103と、キーボード(KB)1104のキーボードコントローラ(KBC)1105と、表示部としてのCRTディスプレイ(CRT)1106のCRTコントローラ(CRTC)1107と、ハードディスク(HD)1108及び記録媒体(MC)5000のコントローラ(DKC)1110と、ネットワーク3との接続のためのネットワークインターフェースコントローラ(NIC)1112とが、システムバス1113を介して互いに通信可能に接続された構成としている。
【0015】
CPU1101は、ROM1102或いはHD1108に記憶されたソフトウェアを実行することで、システムバス1103に接続された各構成部を総括的に制御する。
すなわち、CPU1101は、所定の処理シーケンスに従った処理プログラムやデータを、ROM1102、或いはHD1108、或いは記録媒体(MC)5000から読み出して実行することで、後述する動作を実現するための制御を行う。
【0016】
RAM1103は、CPU1101の主メモリ或いはワークエリア等として機能する。
KBC1105は、KB1104や図示していないマウス等からの指示入力を制御する。
【0017】
CRTC1107は、CRT1106の表示を制御する。
DKC1110は、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイル、ネットワーク管理プログラム、及び後述するフローチャートで示すような処理を実行する所定の処理プログラム等を記憶するHD1108や、演出情報等を記憶する記録媒体(MC)5000のアクセスを制御する。
NIC1112は、ネットワーク3上の装置或いはシステムと双方向にデータをやりとりする。
【0018】
次に、図3〜図8を用いて、サーバ装置1からクライアント端末4に提供される音楽用語のクイズや音楽用語の解説の概要について説明する。なお、ここでは、2問のクイズが出題される場合を例に挙げて説明する。
クライアント端末4のユーザが、所定の操作を行ってサーバ装置1にアクセスすると、サーバ装置1は、図3に示す選択画面30を表示するのに必要なデータをクライアント端末4に送信する。そうすると、クライアント端末4は、図3に示す選択画面30を表示する。図3に示す選択画面30は、音楽用語のクイズと、音楽用語の解説との何れかをユーザが選択するための画面である。
【0019】
クライアント端末4のユーザは、マウスやキーボード等を操作して、意味の分からない音楽用語をキーワード入力欄31に入力した後、OKボタン32を押す。そうすると、クライアント端末4は、キーワード入力欄31に入力された音楽用語を示すデータをサーバ装置1に送信する。サーバ装置1は、クライアント端末4から送信されたデータに示されている音楽用語に対応付けられて辞書データベース2aに登録されている説明を取得し、図4に示す用語解説表示画面40を表示するのに必要なデータをクライアント端末4に送信する。そうすると、クライアント端末4は、図4に示す用語解説表示画面40を表示する。
【0020】
図4に示す用語解説表示画面40は、キーワード入力欄31に入力された音楽用語と、その音楽用語の説明とを含む用語解説を表示するための画面である。なお、クライアント端末4のユーザが、マウス等を操作して、図4に示す用語解説表示画面40に表示されているOKボタン41を押すと、クライアント端末4は、図3に示した選択画面30を再度表示する。
【0021】
図3に説明を戻し、クライアント端末4のユーザが、マウス等を操作して、選択画面30に表示されているGOボタン32を押すと、クライアント端末4は、音楽用語のクイズの実行指示を示すデータをサーバ装置1に送信する。そうすると、サーバ装置1は、図5に示すカテゴリ選択画面50を表示するのに必要なデータをクライアント端末4に送信する。図5に示すカテゴリ選択画面50は、音楽用語のクイズのカテゴリ(ジャンル)をユーザが選択するための画面である。本実施形態では、複数のカテゴリを選択することが可能になっている。図5に示すカテゴリ選択画面50では、クライアント端末4のユーザが、マウス等を操作することにより、4つのチェックボックス51a〜51dのうち、「楽器」に対応するチェックボックス51aと、「一般」に対応するチェックボックス51cと、「邦楽」に対応するチェックボックス51dとにチェックが入れられている。すなわち、図5に示すカテゴリ選択画面50では、「楽器」、「一般」、及び「邦楽」が、音楽用語のクイズのカテゴリとして選択されている。
【0022】
クライアント端末4のユーザが、マウス等を操作して、図5に示すカテゴリ選択画面50に表示されているキャンセルボタン52を押すと、クライアント端末4は、図3に示した選択画面30を再度表示する。一方、クライアント端末4のユーザが、マウス等を操作して、図5に示すカテゴリ選択画面50に表示されているOKボタン53を押すと、クライアント端末4は、選択されたカテゴリを示すデータをサーバ装置1に送信する。サーバ装置1は、クライアント端末4から送信されたカテゴリと同一のカテゴリに属している説明の何れかを辞書データベース2aから選択し、選択した説明を問題とする。その後サーバ装置1は、選択した説明に対応付けられている音楽用語を正解として選択すると共に、クライアント端末4から送信されたカテゴリに属しているその他の音楽用語を正解候補として選択し、選択した音楽用語を選択肢とする。
【0023】
そして、サーバ装置1は、図6に示すクイズ画面60を表示するのに必要なデータをクライアント端末4に送信する。そうすると、クライアント端末4は、図6に示すクイズ画面60を表示する。図6に示すクイズ画面60は、1問目のクイズを表示するための画面である。クライアント端末4のユーザが、マウス等を操作して、図6に示すクイズ画面60に表示されている3つの選択肢ボタン61a〜61cのうち、何れか1つを押すと、押した選択肢ボタン61に対応する選択肢の内容を示すデータを、サーバ装置1に送信する。なお、ここでは、正解である「オカリナ」と異なる「クイーカ」に対応する選択枝ボタン61cが押されたとする。
【0024】
サーバ装置1は、クライアント端末4のユーザにより押された選択肢ボタン61に対応する選択肢の内容を示すデータに基づいて、クライアント端末4のユーザにより選択された選択枝が正解か否かを判断すると共に、次のクイズにおける問題と選択肢とを決定する。前述したように、ここでは、図6に示すクイズ画面60において、選択肢ボタン61cが押されたとしているので、サーバ装置1は、クライアント端末4のユーザにより選択された選択枝が不正解であると判定する。
【0025】
その後サーバ装置1は、図7に示すクイズ画面70を表示するのに必要なデータをクライアント端末4に送信する。そうすると、クライアント端末4は、図7に示すクイズ画面70を表示する。図7に示すクイズ画面70は、2問目のクイズを表示すると共に1問目のクイズの結果を表示するための画面である。ここで、図7に示すクイズ画面70では、1問目のクイズの結果として、1問目のクイズに対する解答の正誤と、1問目のクイズの解答に対して与えられた得点と、正解数とが表示されるようにしている。クライアント端末4のユーザが、マウス等を操作して、図7に示すクイズ画面70に表示されている3つの選択肢ボタン71a〜71cのうち、何れか1つを押すと、押した選択肢ボタン71に対応する選択肢の内容を示すデータをサーバ装置1に送信する。なお、ここでは、正解である「ファルセット」に対応する選択枝ボタン71aが押されたとする。
【0026】
サーバ装置1は、クライアント端末4のユーザにより押された選択肢ボタン71に対応する選択肢の内容を示すデータに基づいて、クライアント端末4のユーザにより選択された選択枝が正解か否かを判断すると共に、クイズの結果を判断する。前述したように、ここでは、図7に示すクイズ画面70において、選択肢ボタン71cが押されたとしているので、サーバ装置1は、クライアント端末4のユーザにより選択された選択枝が正解であると判定する。
その後サーバ装置1は、図8に示すクイズ結果表示画面80を表示するのに必要なデータをクライアント端末4に送信する。そうすると、クライアント端末4は、図8に示すクイズ結果表示画面80を表示する。図8に示すクイズ結果表示画面80は、最後の問題である2問目のクイズの結果を表示すると共に、クイズの最終結果を表示する。ここで、図8に示すクイズ画面80では、2問目のクイズの結果として、2問目のクイズに対する解答の正誤と、2問目のクイズの解答に対して与えられた得点と、正解数とが表示されるようにしている。また、クイズの最終結果として、1問目の問題の解答と2問目の問題の解答に対して与えられた得点の合計が表示されるようにしている。
クライアント端末4のユーザが、マウス等を操作して、図8に示すクイズ結果表示画面80に表示されているOKボタン81を押すと、クライアント端末4は、図3に示した選択画面30を再度表示する。
【0027】
以上のようにして行われるクイズにおいて、辞書データベース2aに登録されている説明の中に、その説明により特定される音楽用語(すなわち、正解となる音楽用語)が含まれている場合に、その説明を問題としてそのまま表示すると、クライアント端末4のユーザは、その問題に対する解答を容易に推測することができることになる。例えば、図9の上段に示すように、音楽用語である「バリトン」の説明の中に、「バリトン」という音楽用語が含まれている場合に、その説明をそのまま問題文としてクライアント端末4に表示すると、その問題に対する解答が「バリトン」であることを、クライアント端末4のユーザは、極めて容易に推測することができてしまう。
そこで、本実施形態では、図9の下段に示すように、「バリトン」の説明に含まれる「バリトン」という音楽用語を「×」で隠すようにしている。なお、必ずしも「×」で該当する音楽用語を隠す必要はなく、例えば、該当する単語を「×」以外の記号、文字、又は画像等に置き換えてもよい。
【0028】
また、辞書データベース2aに登録されている説明の中に、その説明により特定される音楽用語の一部の語句等、その音楽用語に非常に近い語句(以下、必要に応じて類似語と称する)が含まれている場合に、その説明を問題としてそのまま表示すると、クライアント端末4のユーザは、その問題に対する解答を容易に推測することができることになる。例えば、図10の上段に示すように、音楽用語である「ブルゴーニュ楽派」の説明の中に、「ブルゴーニュ」という単語が含まれている場合に、その説明をそのまま問題文としてクライアント端末4に表示すると、その問題の正解が「ブルゴーニュ楽派」であることを、クライアント端末4のユーザは、容易に推測することができてしまう。
そこで、本実施形態では、図10の下段に示すように、「ブルゴーニュ楽派」の説明に含まれる「ブルゴーニュ」という単語を「×」で隠すようにしている。なお、必ずしも「×」で該当する語句を隠す必要はなく、例えば、該当する語句を「×」以外の記号、文字、又は画像等に置き換えてもよい。
【0029】
また、辞書データベース2aに登録されている音楽用語の説明の中には、画像が含まれているものがある。そして、その説明により特定される音楽用語や、その音楽用語に非常に近い語句がこの画像(以下、必要に応じて隠し画像と称する)の中に含まれている場合に、その説明(隠し画像)を問題としてそのまま表示すると、クライアント端末4のユーザは、その問題に対する解答を容易に推測することができることになる。例えば、図11に示すように、音楽用語である「プラトー」の説明の中に、「プラトー」という音楽用語が含まれている隠し画像がある場合に、その説明(隠し画像)をそのまま問題文としてクライアント端末4に表示すると、その問題の正解が「プラトー」であることを、クライアント端末4のユーザは、容易に推測することができてしまう。
そこで、本実施形態では、このように、説明により特定される音楽用語や、その音楽用語に非常に近い語句等、解答となる音楽用語に関連した語句を含む隠し画像を有する説明を問題とする場合には、その説明からその説明に含まれている隠し画像を削除するようにしている。
【0030】
また、図5に示したカテゴリ選択画面50において、複数のカテゴリが選択された場合に、その複数のカテゴリに属する音楽用語から、正解候補となる音楽用語を無作為に選択すると、正解の選択肢と、正解候補の選択肢との関連性が希薄になり、クライアント端末4のユーザが、その問題に対する解答を容易に推測することができてしまう場合がある。例えば、「アフター・ビート」という音楽用語が正解である場合に、「ピアノ」や、「バイオリン」といった音楽用語を正解候補にすると、問題の正解が「アフター・ビート」であることを、クライアント端末4のユーザは、容易に推測することができてしまう。
そこで、本実施形態では、カテゴリ選択画面50において、複数のカテゴリが選択された場合であっても、問題の正解となる音楽用語が属するカテゴリと同一のカテゴリに属する音楽用語を正解候補にするようにしている。すなわち、全ての選択肢を同一のカテゴリに属する音楽用語としている。
【0031】
また、クイズの実行中に問題や選択肢が再度表示されると、クライアント端末4のユーザが、その問題に対する解答を容易に推測することができてしまう。そこで、本実施形態では、使用した問題と選択肢を保存しておき、クイズの実行中に(前述した図3〜図8に示した例では2問のクイズ)の中で、同じ問題や選択肢を再度表示しないようにしている。
【0032】
また、例えば、図7に示したクイズ画面70において、1問目のクイズの解答を確認した後、クライアント端末4のユーザが、マウス等を操作して、ブラウザの戻るボタン72を押すと、クライアント端末4は、クイズ画面60を再度表示する。そうすると、クライアント端末4のユーザは、このクイズ画面60において、1問目のクイズに対する解答を知った上で、1問目のクイズに対する解答をやり直すことができてしまう。
そこで、本実施形態では、クライアント端末4に新たに画面が表示される度に、選択可能な選択肢を更新するようにしている。例えば、図6に示したクイズ画面60がクライアント端末4に表示された場合には、選択可能な選択肢は、「アルト・サクソフォーン」、「オカリナ」、及び「クイーカ」とする。その後、図7に示したクイズ画面70がクライアント端末4に表示された場合には、選択可能な選択肢を、「音程」、「主調」、及び「ファルセット」に更新する。このようにすれば、クイズ画面70が表示された後、クライアント端末4のユーザが、ブラウザの戻るボタン71を押してクイズ画面60に戻って、1問目のクイズに対する解答を再度行おうとしても、選択可能な選択肢は、「アルト・サクソフォーン」、「オカリナ」、及び「クイーカ」であるので、1問目のクイズの選択肢を選択しても、その選択を無効にすることができる。
【0033】
また、クイズに対する解答に正解したか否かだけで得点を定めてしまうと、例えば、問題に対する答えを調べた上で解答したユーザに与える得点と、問題に対する答えを調べずに即座に解答したユーザに与える得点とが同じになってしまう。そうすると、例えば、音楽用語に精通したユーザは、クイズに飽きてしまうことになる。
そこで、本実施形態では、クライアント端末4のユーザが、問題に対する解答に要した時間に応じて得点を異ならせるようにしている。
【0034】
例えば、サーバ装置1は、クイズの問題を送信してから、そのクイズの問題がクライアント端末4で受信され表示されるまでの時間x1と、その問題に対する解答となる選択肢ボタン61、71をクライアント端末4のユーザが押してから(すなわち、その選択肢ボタン61、71に対応する選択肢の内容を示すデータがクライアント端末4から送信されてから)、その選択肢ボタン61、71に対応する選択肢の内容を示すデータを受信するまでの時間x2とを加算した時間を求めておく。そして、サーバ装置1は、クイズの問題を送信した時刻T1と、その問題に対する選択肢の内容を示すデータを受信した時刻T2とを計数する。そうすると、クライアント端末4のユーザが、問題に対する解答に要した時間αを、以下の(1)式で求めることができる。
α=T2−T1−(x1+x2) ・・・(1)
【0035】
このように時間αを求めれば、例えば、問題に対する解答に要した時間が長ければ得点を低くすることができ、短ければ高くすることができる。
また、以上のようにして時間x1、x2を求めれば、複数のクライアント端末4が使用している通信回線の通信速度に関わらず、問題に対する解答に要した時間αを正確に求めることができ好ましいが、クイズの問題を送信した時刻T1と、その問題に対する選択肢の内容を示すデータを受信した時刻T2との差を、問題に対する解答に要した時間と見なすようにしてもよい。
【0036】
次に、図12〜図26を参照しながら、以上のような概要でクイズをクライアント端末4に提供するサーバ装置1の詳細な動作の一例を説明する。
図12は、クライアント端末4にクイズを提供する際のサーバ装置1のCPU1101における主要な処理の一例を説明するメインフローチャートである。
まず、ステップS1において、値数iを0にする。値数iは、例えばRAM1103に記憶される。
次に、ステップS2において、値数iが問題数以上であるか否かを判定する。図3〜図8に示した例では、2問のクイズが出題されるので、値数iが2以上であるか否かを判定する。この判定の結果、値数iが問題数以上である場合には、後述するステップS13に進む。一方、値数iが2以上でない場合には、ステップS3に進み、クイズを行おうとするユーザ(クライアント端末4)を識別するためのユーザ識別処理を実行する。このユーザ識別処理については、図15のフローチャートを用いて後述する。
【0037】
次に、ステップS4において、クイズに対する解答が正解か否かを判定する正解判定処理を実行する。この正解判定処理については、図16のフローチャートを用いて後述する。
次に、ステップS5において、クイズの問題と、その問題に対する選択肢とを選定する問題選択処理を実行する。この問題選択処理の詳細については、図18のフローチャートを用いて後述する。
次に、ステップS6において、1次的データベースを作成する。
図13は、1次的データベースの一例を示す図である。図13に示す1次的データベース130では、選択肢が3つである場合を例に挙げて示している。
図13において、1次的データベース130には、ステップS5の問題選択処理により選定された問題と、その問題の正解を示す音楽用語と、その問題の正解ではない正解候補を示す音楽用語と、それら音楽用語に対して辞書データベース2aに登録されている問題IDと、前述したクイズの問題を送信した時刻T1と、その問題に対する選択肢の内容を示すデータを受信した時刻T2と、クイズ対する解答に応じてユーザに与えられる得点と、ステップS3で識別されたユーザを特定するユーザIDとが、クイズの問題毎に登録される。このように、本実施形態では、1次的データベース130を作成することにより、サーバ装置1は、クイズにおける出題内容や解答状況をユーザ毎に判別することができる。なお、1次的データベース130は、例えばHD1108に記憶される。また、1次的データベース130に登録される音楽用語と、問題IDは、辞書データベース2aから読み取られたものである。
【0038】
図14は、辞書データベース2aの一例を示す図である。
図14において、辞書データベース2aには、音楽用語と、その音楽用語の説明と、その音楽用語が属するカテゴリを示すカテゴリ番号と、その音楽用語とその音楽用語の説明とを識別する問題IDと、その音楽用語の説明に含まれる類似語を識別する類似語IDと、その音楽用語の説明に含まれる隠し画像を識別する隠し画像IDとが対応付けられて登録されている。なお、類似語が説明に含まれていない場合には、類似語IDは登録されない。また、隠し画像が説明に含まれていない場合には、隠し画像IDは登録されない。
【0039】
次に、ステップS7において、説明に正解となる音楽用語が含まれている場合に、その音楽用語を隠す正解隠し処理を実行する。この正解隠し処理については、図19のフローチャートを用いて後述する。
次に、ステップS8において、説明に類似語が含まれている場合に、その類似語を隠す類似語隠し処理を実行する。この類似語隠し処理については、図20のフローチャートを用いて後述する。
次に、ステップS9において、説明に隠し画像が含まれている場合に、その隠し画像を隠す画像隠し処理を実行する。この画像隠し処理については、図21のフローチャートを用いて後述する。
【0040】
次に、ステップS10において、例えば、図6及び図7に示したクイズ画面60、70を表示するクイズ表示処理を実行する。このクイズ表示処理については、図24のフローチャートを用いて後述する。
次に、ステップS11において、クイズの問題に対する解答に応じてユーザに付与する得点を求める得点処理を実行する。この得点処理については、図25のフローチャートを用いて後述する。
次に、ステップS12において、値数iに1を加算する。
【0041】
ステップS2において、値数iが問題数以上であると判定され、全ての問題に対して処理が終わると、ステップS13に進み、クイズの最終結果を表示するために必要なデータ(例えば、図8に示したようなクイズ結果表示画面80を表示するのに必要なデータ)をクライアント端末4に送信する。これにより、クライアント端末4は、図8に示したようなクイズ結果表示画面80を表示する。
最後に、ステップS14において、ステップS6で作成した1次的データベース130をHD1108等から削除する。
【0042】
次に、図15のフローチャートを参照しながら、図12のステップS3におけるユーザ識別処理の一例を説明する。
まず、ステップS21において、値数iが0であるか否かを判定する。この判定の結果、値数iが0であり、まだユーザIDが得られていない場合には、ステップS22に進み、乱数を発生させて取得し、取得した乱数の値に基づいてユーザIDを生成する。そして、このユーザIDをRAM1103に記憶させると共に、クライアント端末4に送信し、図12のフローチャートに戻る。なお、このステップS21において、ユーザIDを、必ずしも乱数を用いて生成する必要はない。ユーザIDは、例えば、セッションIDであったり、連番であったりしてもよい。また、このユーザIDは、図13に示した1次的データベース130に登録される。
【0043】
一方、値数iが0でなく、既にユーザIDが生成されている場合には、クライアント端末4がサーバ装置1にアクセスした際のURLに含まれているクエリーストリングから、ユーザIDを取得して、図12のフローチャートに戻る。このように、クライアント端末4は、ステップS21でサーバ装置1から送信されたユーザIDを、クエリーストリングに含めてサーバ装置1にアクセスする。
なお、このステップS22において、ユーザIDを、必ずしもクエリーストリングから取得する必要はない。例えば、クッキー、セッション変数等を利用してユーザIDを取得するようにしてもよい。
【0044】
次に、図16のフローチャートを参照しながら、図12のステップS16における正解判定処理の一例を説明する。
まず、ステップS31において、値数iが0であるか否かを判定する。この判定の結果、値数iが0である場合には、まだ問題に対する解答が得られていないので、図12のフローチャートに戻る。
一方、値数iが0でない場合には、ステップS32に進み、ユーザが解答した問題の正解となる音楽用語を、図13に示した1次的データベース130から取得する。
次に、ステップS33において、クライアント端末4のユーザが選択した選択肢に対応する音楽用語を、例えばクライアント端末4から送信されたデータに基づいて取得する。
【0045】
次に、ステップS34において、ステップS32で取得した正解となる音楽用語と、ステップS33で取得した音楽用語とが一致するか否かを判定する。この判定の結果、ステップS32で取得した正解となる音楽用語と、ステップS33で取得した音楽用語とが一致する場合には、問題に正解したことを表示することを示すデータを、例えばRAM1103に記憶する。
【0046】
一方、ステップS32で取得した正解となる音楽用語と、ステップS33で取得した音楽用語とが一致しない場合には、ステップS36に進み、前の問題の解答を確認した後に、ブラウザの戻るボタン72を押して前の問題に対する解答を再度行うことを禁止する戻る禁止処理を実行する。なお、この戻る禁止処理については、図17のフローチャートを用いて後述する。
次に、ステップS37において、問題に不正解であったことを示すデータを、例えばRAM1103に記憶する。
【0047】
次に、図17のフローチャートを参照しながら、図16のステップS36における戻る禁止処理の一例を説明する。
まず、ステップS41において、正解候補(A(0)〜A(m−2)、mは選択肢の数)を、1次的データベース130から取得する。
次に、ステップS42において、値数jと値数countとを0にする。これら値数j、countは、例えばRAM1103に記憶される。
次に、ステップS43において、値数jが(m−1)以上であるか否かを判定する。この判定の結果、値数jが(m−1)以上である場合には、後述するステップS47に進む。一方、値数jが(m−1)以上でない場合には、全ての選択肢に対する処理が終わっていないのでステップS44に進み、ステップS41で取得した正解候補A(j)が、クライアント端末4のユーザにより選択された選択肢に対応する音楽用語(ステップS33で取得した音楽用語)Bと一致するか否かを判定する。
【0048】
この判定の結果、ステップS41で取得した正解候補A(j)が、クライアント端末4のユーザにより選択された選択肢に対応する音楽用語Bと一致しない場合には、ステップS45に進み、値数countに1を加算する。一方、ステップS41で取得した正解候補A(j)が、クライアント端末4のユーザにより選択された選択肢に対応する音楽用語Bと一致する場合には、ステップS45を省略してステップS46に進む。
【0049】
そして、ステップS46において、値数jに1を加算し、ステップS43に戻る。
ステップS43において、値数jが(m−1)以上である場合には、全ての選択肢に対する処理が終わっていると判定し、ステップS47に進み、値数countが、(m−1)であるか否かを判定する。この判定の結果、値数countが、(m−1)である場合には、クライアント端末4のユーザが不正な操作により問題に対する解答を行っていると判定し、ステップS48に進み、不正な操作を行っていることを表示するのに必要なデータをクライアント端末4に送信して処理を終了する。これにより、クライアント端末4は、不正な操作を行っていることを示すエラー表示を行う。
一方、値数countが、(m−1)でない場合には、クライアント端末4のユーザが不正な操作を行っていないので、そのまま図12のフローチャートに戻る。
【0050】
次に、図18のフローチャートを参照しながら、図12のステップS5における問題選択処理の一例について説明する。
まず、ステップS51において、図5に示したカテゴリ選択画面50を用いてクライアント端末4のユーザにより選択されたカテゴリを示すカテゴリ番号を取得する。このカテゴリ番号は、1問目の問題を選定する際には、図5に示すカテゴリ選択画面50に表示されているOKボタン53が押されることによりクライアント端末4から送信されるデータに基づいて、カテゴリ番号を取得する。一方、2問目以降の問題を選定する際には、クライアント端末4がサーバ装置1にアクセスした際のURLに含まれているクエリーストリングに基づいて、カテゴリ番号を取得する。このように、クライアント端末4は、図5に示したカテゴリ選択画面50を用いてクライアント端末4のユーザにより選択されたカテゴリを示すデータをクエリーストリングに含めてサーバ装置1にアクセスする。
【0051】
次に、ステップS52において、値数jを0にする。
次に、ステップS53において、ステップS51で取得したカテゴリ番号に対応付けられて辞書データベース2aに登録されている問題IDの何れか1つを無作為に抽出する。
次に、ステップS54において、値数iが0であるか否かを判定する。この判定の結果、値数iが0である場合には、出題済みの問題がないので、後述するステップS60に進む。一方、値数iが0でない場合には、ステップS55に進み、1次的データベース130に登録されている問題IDを取得する。すなわち、既に出題済みの問題の選択肢となった音楽用語に対する問題IDを取得する。
【0052】
次に、ステップS56において、ステップS53で抽出した問題IDと、ステップS55で取得した問題IDとが一致するか否かを判定する。この判定の結果、ステップS53で抽出した問題IDと、ステップS55で取得した問題IDとが一致しない場合には、ステップS55で取得した問題IDに対応付けられている説明が未だ問題として出題されておらず、且つその問題IDに対応付けられている音楽用語が未だ正解候補としての選択肢となっていないので、後述するステップS60に進む。
一方、ステップS53で抽出した問題IDと、ステップS55で取得した問題IDとが一致する場合には、ステップS57に進み、値数jが1000より大きいか否かを判定する。この判定は、無限ループを防止するためのものである。この判定の結果、値数jが1000より大きくない場合には、ステップS58に進み、値数jに1を加算してステップS53に戻る。一方、値数jが1000より大きい場合には、問題の選定ができないことを表示するのに必要なデータをクライアント端末4に送信して処理を終了する。これにより、クライアント端末4は、問題の選定ができないことを示すエラー表示を行う。
【0053】
ステップS54において、値数iが0であると判定された場合と、ステップS56において、ステップS53で抽出した問題IDと、ステップS55で取得した問題IDとが一致しないと判定された場合には、ステップS60に進み、ステップS53で抽出した問題IDと、その問題IDに対応付けられて辞書データベース2aに登録されている音楽用語及び説明とを1次的データベース130に保存すると共に、その問題IDに対応付けられて辞書データベース2aに登録されているカテゴリ番号を、例えばHD1108(等)に保存する。
【0054】
次に、ステップS61において、値数kを0にする。この値数kは、例えばRAM1103に記憶される。
次に、ステップS62において、値数kが(m−1)以上であるか否かを判定する。この判定の結果、値数kが(m−1)以上である場合には、問題に対する全ての選択肢が取得されているので、図12に示したフローチャートに戻る。一方、値数kが(m−1)以上でない場合には、ステップS63に進み、値数jを0にする。
次に、ステップS64において、ステップS60で取得したカテゴリ番号に対応付けられて辞書データベース2aに登録されている問題IDの何れか1つを無作為に抽出する。
【0055】
次に、ステップS65において、ステップS64で抽出した問題IDが、ステップS55で取得した問題ID、ステップS60で保存した問題ID、又はステップS69で保存した問題ID(K≧1のとき)に一致するか否かを判定する。この判定の結果、ステップS64で抽出した問題IDが、ステップS55で取得した問題ID、ステップS60で保存した問題ID、又はステップS69で保存した問題ID(K≧1のとき)の何れにも一致しない場合には、ステップS69に進み、ステップS64で抽出した問題IDに対応付けられて辞書データベース2aに登録されている音楽用語を正解候補の選択肢として決定し、決定した音楽用語に対応付けられて辞書データベース2aに登録されている問題IDと、その問題IDに対応付けられて辞書データベース2aに登録されている音楽用語とを、1次的データベース130に保存する。そして、ステップS70に進み、値数kに1を加算しステップS62に戻る。
【0056】
一方、ステップS64で抽出した問題IDが、ステップS60で保存した問題ID、又はステップS69で保存した問題ID(K≧1のとき)の何れかに一致する場合には、ステップS66に進み、値数jが1000より大きいか否かを判定する。この判定は、無限ループを防止するためのものである。この判定の結果、値数jが1000より大きくない場合には、ステップS67に進み、値数jに1を加算して、ステップS64に戻る。
一方、値数jが1000より大きい場合には、問題の選定ができないことを表示するのに必要なデータをクライアント端末4に送信して処理を終了する。これにより、クライアント端末4は、問題の選定ができないことを示すエラー表示を行う。
【0057】
次に、図19のフローチャートを参照しながら、図12のステップS7における正解隠し処理の一例を説明する。
まず、ステップS81において、図18のフローチャートに示した問題選択処理のステップS60で保存された問題IDに対応付けられて1次的データベース130に登録されている説明に、その説明により特定される音楽用語(すなわち、正解となる音楽用語)があるか否かを判定する。この判定の結果、正解となる音楽用語が説明にある場合には、ステップS82に進み、正解となる音楽用語の部分を「×」に置換する処理を行い、1次的データベース130に登録される説明の内容を変更する。これにより、正解となる音楽用語の部分が「×」で表示された説明が、クライアント端末4に送信されることになる。一方、正解となる音楽用語が説明にない場合には、ステップS82を省略して図12のフローチャートに戻る。
【0058】
次に、図20のフローチャートを参照しながら、図12のステップS8における類似語隠し処理の一例を説明する。
まず、ステップS91において、図18のフローチャートに示した問題選択処理のステップS60で保存された問題IDに対応付けられて辞書データベース2aに登録されている類似語IDを読み出す。
次に、ステップS92において、図18のフローチャートに示した問題選択処理のステップS60で保存された問題IDに対応付けられて辞書データベース2aに登録されている類似語IDがあるか否かを判定する。なお、ステップS91、S92の処理の順番を入れ替えてもよい。
【0059】
この判定の結果、類似語IDがある場合には、図18のフローチャートに示した問題選択処理のステップS60で保存された問題IDに対応付けられて1次的データベース130に登録されている説明を読み出す。そして、ステップS91で読み出された類似語IDに対応付けられて図21に示すような類似語データベース2bに登録されている語句を読み出す。そして、説明に含まれている類似語の部分を「×」に置換する処理を行い、1次的データベース130に登録される説明の内容を変更する。これにより、類似語の部分が「×」で表示された説明が、クライアント端末4に送信されることになる。一方、類似語IDがない(説明に類似語がない)場合には、ステップS93を省略して図12のフローチャートに戻る。
【0060】
次に、図22のフローチャートを参照しながら、図12のステップS9における画像隠し処理の一例について説明する。
まず、ステップS101において、図18のフローチャートに示した問題選択処理のステップS60で保存された問題IDに対応付けられて辞書データベース2aに登録されている隠し画像IDを読み出す。
次に、ステップS102において、図18のフローチャートに示した問題選択処理のステップS60で保存された問題IDに対応付けられて辞書データベース2aに登録されている隠し画像IDがあるか否かを判定する。なお、ステップS101、S102の処理の順番を入れ替えてもよい。
【0061】
この判定の結果、隠し画像IDがある場合には、図18のフローチャートに示した問題選択処理のステップS60で保存された問題IDに対応付けられて1次的データベース130に登録されている説明を読み出す。そして、ステップS101で読み出された隠し画像IDに対応付けられて図23に示すような隠し画像データベース2cに登録されている画像表示用タグを読み出す。そして、読み出した説明に含まれている画像表示用タグを削除する処理を行い、1次的データベース130に登録される説明の内容を変更する。これにより、画像のない説明が、クライアント端末4に送信されることになる。一方、隠し画像IDがない(説明に画像がない)場合には、ステップS103を省略して図12のフローチャートに戻る。
【0062】
次に、図24のフローチャートを参照しながら、図12のステップS10におけるクイズ表示処理の一例を説明する。
まず、ステップS111において、ステップS35で記憶された、問題に正解であったことを示すデータ、又はステップS37で記憶された、問題に不正解であったことを示すデータを読み出し、問題に正解であったことを表示するのに必要なデータ、又は問題に不正解であったことを表示するのに必要なデータを生成する。
【0063】
次に、ステップS112において、ステップS60で保存した問題IDに対応付けられて1次的データベース130に登録されている説明を表示するのに必要なデータを生成する。
次に、ステップS113において、乱数Cを生成して取得する。この乱数Cは、0以上(m−1)以下の範囲の値を有する。
次に、ステップS114において、値数jが選択肢の数m以上であるか否かを判定する。この判定の結果、値数jが選択肢の数m以上である場合には、選択肢を表示するためのデータを全て生成したので、後述するステップS120に進む。一方、値数jが選択肢の数m以上でない場合には、ステップS115に進み、値数jが乱数Cと同じであるか否かを判定する。
【0064】
この判定の結果、値数jが乱数Cと同じでない場合には、後述するステップS118に進む。一方、値数jが乱数Cと同じである場合には、ステップS116に進み、ステップS60で保存した問題IDに対応付けられている音楽用語(正解となる選択肢)を表示するのに必要なデータを生成する。このとき、例えば、乱数Cが0である場合には、正解となる選択肢が、図7に示したクイズ画面70の左側に表示されるようにデータを生成する。また、乱数Cが1である場合には、正解となる選択肢が、図7に示したクイズ画面70の真ん中に表示されるようにデータを生成する。また、乱数Cが2である場合には、正解となる選択肢が、図7に示したクイズ画面70の右側に表示されるようにデータを生成する。そして、ステップS118に進む。
【0065】
ステップS115において、値数jが乱数Cと同じでないと判定された場合には、ステップS117に進み、ステップS69で保存した問題IDに対応付けられている音楽用語(正解候補となる選択肢)を表示するのに必要なデータを生成する。このとき、正解候補となる選択肢の表示位置が、前述した正解となる選択肢の表示位置と異なる位置になるようにデータを生成する。
【0066】
そして、ステップS118において、値数jに1を加算してステップS114に戻る。
ステップS114において、値数jが選択肢の数m以上であると判定された場合には、選択肢を表示するためのデータを全て生成したので、ステップS119に進み、ステップS111、S112、S116、S117で生成したデータを1つの画面(例えば図7及び図8に示したクイズ画面70、80)に表示するための表示データを生成して、クライアント端末4に送信する。そして、クライアント端末4は、送信された表示データに基づいた表示を行う。
【0067】
なお、図24では、図7に示したクイズ画面70を表示するための処理を詳細に説明した。しかしながら、図8に示したクイズ画面80等についても、1次的データベース130から得点を示すデータを読み出す等して必要なデータを取得して表示データを生成してクライアント端末4に送信することにより、クライアント端末4に表示させることができるということは言うまでもない。
【0068】
次に、図25のフローチャートを参照しながら、図12のステップS11における得点処理の一例について説明する。
まず、ステップS131において、問題の送信時刻(例えば、図24のステップS119で表示データを送信した時刻)T1を取得する。
次に、ステップS132において、問題に対する解答の受信時刻(例えば、図16のステップS33で解答を受信した時刻)T2を取得する。
【0069】
次に、ステップS133において、クイズの問題を送信してから、そのクイズの問題がクライアント端末4で受信され表示されるまでの時間x1と、その問題に対する解答となる選択肢ボタン61、71をクライアント端末4のユーザが押してから、その選択肢ボタン61、71に対応する選択肢の内容を示すデータを受信するまでの時間x2とを加算した時間xを取得する補正時間取得処理を実行する。この補正時間取得処理については、図26を用いて後述する。
【0070】
次に、ステップS134において、1次的データベース130に登録されている得点を参照して、これまでの問題でユーザに与えた得点の合計Pを取得する。
次に、ステップS135において、問題に対する解答が正解であったか否かを判定する。この判定は、例えば、図16のステップS35で記憶された、問題に正解であったことを示すデータ、又はステップS37で記憶された、問題に不正解であったことを示すデータに基づいて行うことができる。
【0071】
この判定の結果、問題に対する解答が正解でなければ、得点をユーザに与えないので、後述するステップS140に進む。一方、問題に対する解答が正解であれば、ステップS136に進み、ユーザが問題に対する解答に要した時間αを、前記(1)式を用いて求める。
次に、ステップS137において、ステップS136で求めた時間αが、予めROM1102等に記憶されている制限時間よりも長いか否かを判定する。この判定の結果、ステップS136で求めた時間αが、制限時間よりも長い場合には、解答に時間を要しているので、ステップS138に進み、これまでの問題でユーザに与えた得点の合計Pに1を加算した値を、ユーザに与える新たな得点とする。なお、この場合、ユーザが解答を行った問題に対する1次的データベース130の得点の欄に1を書き込む。
【0072】
一方、ステップS136で求めた時間αが、制限時間よりも短い場合には、ステップS139に進み、前記制限時間からステップS136で求めた時間αを減算した値に、これまでの問題でユーザに与えた得点の合計Pを加算した値を、ユーザに与える新たな得点とする。なお、この場合、ユーザが解答を行った問題に対する1次的データベース130の得点の欄に、前記制限時間からステップS136で求めた時間αを減算した値を書き込む。
次に、ステップS140において、ユーザに与える得点PをステップS138、S139の処理結果に基づいて更新する。この得点Pは、例えばRAM1103に記憶される。
【0073】
次に、図26のフローチャートを参照しながら、図25のステップS133における補正時間取得処理の一例を説明する。
ステップS151において、これから出題する問題に対する表示データのサイズを取得し、取得したサイズと同じサイズのデータをクライアント端末4に送信してからそのデータが返信されるまでの時間を求める。これにより、クイズの問題を送信してから、そのクイズの問題がクライアント端末4で受信され表示されるまでの時間x1と、その問題に対する解答となる選択肢ボタン61、71をクライアント端末4のユーザが押してから、その選択肢ボタン61、71に対応する選択肢の内容を示すデータを受信するまでの時間x2とを加算した時間xを得ることができる。なお、このように、問題が出題される度に、時間xを取得すれば、問題に対する解答に要した時間αを正確に求めることができ好ましいが、1問目の問題の前に、問題の表示データの平均値と同じサイズのデータをクライアント端末4に送信し、そのデータを送信してから返信されるまでの時間を、時間xと見なすようにしてもよい。
【0074】
以上のように本実施形態では、辞書データベース2aに登録されている説明を検索し、その説明により特定される音楽用語が含まれている場合には、その音楽用語を隠した説明をクイズの問題にするようにした。
また、辞書データベース2aに登録されている説明の中に、その説明により特定される音楽用語に非常に近い語句(類似語)が含まれている場合には、辞書データベース2aに類似語IDを登録しておく。また、類似語データベース2bに類似語IDと類似語(語句)とを対応付けて登録しておく。そして、類似語IDが登録されている説明に含まれている類似語を類似語データベース2bから抽出し、抽出した類似語を隠した説明をクイズの問題にするようにした。
【0075】
また、辞書データベース2aに登録されている説明の中に含まれている画像に、その説明により特定される音楽用語や、その音楽用語に非常に近い語句がある場合、辞書データベース2aに隠し画像IDを登録しておく。また、隠し画像データベース2cに隠し画像IDと画像表示用タグとを対応付けて登録しておく。そして、隠し画像IDが登録されている説明に含まれている画像を削除し、その画像を削除した説明をクイズの問題にするようにした。
以上のようにすることにより、クイズとして成立しないような問題が出題されることを防止することができ、ユーザの解答意欲が低下してしまうことを防止することができる。
【0076】
また、辞書データベース2aにカテゴリ番号を登録しておくようにし、そのカテゴリ番号に基づいて同一のカテゴリに属するものを判断することで、同一のカテゴリの中から、クイズの問題に対する選択肢を選ぶようにした。
このようにすることにより、明らかに正解でないと分かるような選択肢が正解候補になることを防止することができ、ユーザの解答意欲が低下してしまうことを防止することができる。
【0077】
また、1回のクイズで複数の問題が出題される場合には、一度出題した問題や選択肢を1次的データベース130に登録しておくようにして、一度出題した問題や選択肢と異なる問題や選択肢を選んで出題するようにした。
このようにすることにより、ユーザが、過去の出題内容の記憶を頼りにして解答を行ってしまうことを防止することができ、ユーザの解答意欲が低下してしまうことを防止することができる。
【0078】
また、前の問題に対する解答と共に表示している最新の問題に対する選択肢のみを選択可能な選択肢とするようにして、ユーザが問題に対する解答を行った後に、その問題に対する解答を再度行っても、その問題に対する解答が無効になるようにした。
このようにすることにより、ユーザが、前の問題に対する解答を見た後に、その前の問題に対する解答を再度やり直すことを防止することができ、ユーザの解答意欲が低下してしまうことを防止することができる。
【0079】
また、ユーザが問題に対する解答に要した時間を求め、求めた時間に応じてクイズの得点を決定するようにした。
このようにすることにより、問題に正解した場合であっても、その問題に対する解答に要した時間に応じて得点を異ならせることができる。したがって、例えば、音楽用語に習熟したユーザと、そうでないユーザとで得点を異ならせることができ、音楽用語に習熟したユーザの解答意欲が低下してしまうことを防止することができる。
【0080】
なお、本実施形態では、クイズにおける出題内容や解答状況をユーザ毎に判別するための情報を1次的データベース130に登録するようにしたが、クイズにおける出題内容や解答状況をユーザ毎に判別するための情報を、必ずしもデータベースを用いて登録する必要はない。例えば、セッション変数やクッキーに保存するようにしてもよい。
また、クイズにおける出題内容や解答状況をユーザ毎に判別することができれば、1次的データベース130に登録される情報は、必ずしも前述したものに限定されない。
【0081】
また、本実施形態では、類似語IDと、類似語とを類似語データベース2bに登録するようにしたが、類似語IDと、類似語とをプログラム内に埋め込むようにしてもよい。同様に、隠し画像IDと、画像表示用タグとを隠し画像データベース2cに登録するようにしたが、隠し画像IDと、画像表示用タグとをプログラム内に埋め込むようにしてもよい。
また、類似語や隠し画像を説明から抽出することができれば、類似語データベース2bや、隠し画像データベース2cに登録される情報は、必ずしも前述したものに限定されない。
【0082】
さらに、本実施形態では、音楽用語とその音楽用語の説明とを用いて、問題と選択肢とを作成してクイズを出題するようにしたが、必ずしも音楽用語を用いる必要はないということは言うまでもない。また、1回のクイズで出題される問題の数や、選択肢の数も、前述したものに限定されるものではないということは言うまでもない。また、データベース2としての機能をサーバ装置1が有しているようにしてもよい。
【0083】
(本発明の他の実施形態)
前述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【0084】
また、この場合、前記ソフトウェアのプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、およびそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0085】
また、コンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【0086】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【図面の簡単な説明】
【0087】
【図1】本発明の実施形態を示し、クイズ生成装置の一例であるサーバ装置を含むネットワークシステムの構成の一例を示した図である。
【図2】本発明の実施形態を示し、サーバ装置及びクライアント端末の構成の一例を示した図である。
【図3】本発明の実施形態を示し、音楽用語のクイズと、音楽用語の解説との何れかをユーザが選択するための選択画面の一例を示した図である。
【図4】本発明の実施形態を示し、入力された音楽用語と、その音楽用語の説明とを含む用語解説を表示するための用語解説表示画面の一例を示した図である。
【図5】本発明の実施形態を示し、音楽用語のクイズのカテゴリ(ジャンル)をユーザが選択するためのカテゴリ選択画面の一例を示した図である。
【図6】本発明の実施形態を示し、1問目のクイズを表示するためのクイズ画面の一例を示した図である。
【図7】本発明の実施形態を示し、2問目のクイズを表示すると共に1問目のクイズの結果を表示するためのクイズ画面の一例を示した図である。
【図8】本発明の実施形態を示し、最後の問題である2問目のクイズの結果を表示すると共に、クイズの最終結果を表示するためのクイズ結果表示画面の一例を示した図である。
【図9】本発明の実施形態を示し、正解となる音楽用語が含まれている説明と、その音楽用語を隠した説明の一例を示した図である。
【図10】本発明の実施形態を示し、類似語が含まれている説明と、その類似語を隠した説明の一例を示した図である。
【図11】本発明の実施形態を示し、画像が含まれている説明と、その画像を削除説明の一例を示した図である。
【図12】本発明の実施形態を示し、クライアント端末にクイズを提供する際のサーバ装置のCPUにおける主要な処理の一例を説明するメインフローチャートである。
【図13】本発明の実施形態を示し、1次的データベースの一例を示す図である。
【図14】本発明の実施形態を示し、辞書データベースの一例を示す図である。
【図15】本発明の実施形態を示し、図12のステップS3におけるユーザ識別処理の一例を説明するフローチャートである。
【図16】本発明の実施形態を示し、図12のステップS16における正解判定処理の一例を説明するフローチャートである。
【図17】本発明の実施形態を示し、図16のステップS36における戻る禁止処理の一例を説明するフローチャートである。
【図18】本発明の実施形態を示し、図12のステップS5における問題選択処理の一例について説明するフローチャートである。
【図19】本発明の実施形態を示し、図12のステップS7における正解隠し処理の一例を説明するフローチャートである。
【図20】本発明の実施形態を示し、図12のステップS8における類似語隠し処理の一例を説明するフローチャートである。
【図21】本発明の実施形態を示し、類似語データベースの一例を示す図である。
【図22】本発明の実施形態を示し、図12のステップS9における画像隠し処理の一例について説明するフローチャートである。
【図23】本発明の実施形態を示し、隠し画像データベースの一例を示す図である。
【図24】本発明の実施形態を示し、図12のステップS10におけるクイズ表示処理の一例を説明するフローチャートである。
【図25】本発明の実施形態を示し、図12のステップS11における得点処理の一例について説明するフローチャートである。
【図26】本発明の実施形態を示し、図25のステップS133における補正時間取得処理の一例を説明するフローチャートである。
【符号の説明】
【0088】
1 サーバ装置
2 データベース
2a 辞書データベース
2b 類似語データベース
2c 隠し画像データベース
3 ネットワーク
4 クライアント端末
30 選択画面
40 用語解説表示画面
50 カテゴリ選択画面
60、70 クイズ画面
80 クイズ結果表示画面

【特許請求の範囲】
【請求項1】
用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成装置であって、
前記問題とする用語の説明を修正するか否かを判定する判定手段と、
前記判定手段により、前記問題とする用語の説明を修正する必要があると判定されると、その問題とする用語の説明を修正する修正手段と、
前記クイズを表示するためのデータを生成する生成手段と、
前記生成手段により生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信手段とを有し、
前記生成手段は、前記修正手段により、前記問題とする用語の説明が修正された場合には、その修正された用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを表示するためのデータを生成することを特徴とするクイズ生成装置。
【請求項2】
前記判定手段は、前記問題とする用語の説明に、その問題に対する解答となる用語が含まれているか否かを判定し、
前記修正手段は、前記判定手段により、前記問題とする用語の説明に、その問題に対する解答となる用語が含まれていると判定されると、その問題に対する解答となる用語を、前記問題とする用語の説明から除外することを特徴とする請求項1に記載のクイズ生成装置。
【請求項3】
前記判定手段は、前記用語の説明を特定する情報と、その用語に近似する類似語を特定する情報とが対応付けられて記憶された記憶媒体を参照して、前記問題とする用語の説明に、前記類似語が含まれているか否かを判定し、
前記修正手段は、前記判定手段により、前記問題とする用語の説明に、前記類似語が含まれていると判定されると、その類似語を、問題とする用語の説明から除外することを特徴とする請求項1又は2に記載のクイズ生成装置。
【請求項4】
前記判定手段は、前記用語の説明を特定する情報と、前記用語の説明に含まれる除外すべき画像を特定する情報とが対応付けられて記憶された記憶媒体を参照して、前記問題とする用語の説明に、除外すべき画像が含まれているか否かを判定し、
前記修正手段は、前記判定手段により、前記問題とする用語の説明に、除外すべき画像が含まれていると判定されると、その除外すべき画像を、問題とする用語の説明から除外することを特徴とする請求項1〜3の何れか1項に記載のクイズ生成装置。
【請求項5】
前記送信手段により送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信手段と、
前記受信手段により受信されたデータが示す選択肢が、正解か否かを判別する判別手段とを有することを特徴とする請求項1〜4の何れか1項に記載のクイズ生成装置。
【請求項6】
前記送信手段により送信されたデータに基づいて前記クライアント端末で表示されているクイズにおける選択肢をユーザが選択可能な選択肢として登録する登録手段を有し、
前記判別手段は、前記受信手段により受信されたデータが示す選択肢が、前記登録手段により登録された選択肢と同じである場合に限り、前記受信手段により受信されたデータが示す選択肢が、正解か否かを判別することを特徴とする請求項5に記載のクイズ生成装置。
【請求項7】
前記受信手段により受信されたデータが示す選択肢が、前記登録手段により登録された選択肢と異なる場合に、ユーザにより選択された選択肢が不適切であることを示すデータを、前記ネットワークを介して前記クライアント端末に送信する第2の送信手段を有することを特徴とする請求項6に記載のクイズ生成装置。
【請求項8】
前記送信手段によりデータが送信された時刻と、前記受信手段によりデータが送信された時刻とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出する算出手段と、
前記算出手段により算出された時間に応じて、前記判別手段により正解と判別された場合に前記ユーザに付与する得点を決定する得点決定手段とを有することを特徴とする請求項5〜7の何れか1項に記載のクイズ生成装置。
【請求項9】
前記算出手段は、前記送信手段によりデータが送信された時刻と、前記受信手段によりデータが送信された時刻と、前記ネットワークにおけるデータの通信時間とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出することを特徴とする請求項8に記載のクイズ生成装置。
【請求項10】
前記ネットワークにおけるデータの通信時間を導出する導出手段を有し、
前記導出手段は、前記生成手段により生成されたデータと容量が同じ大きさのデータを、前記生成手段によりデータが生成される度に、前記ネットワークを介して前記クライアント端末に送信し、その送信した時刻と、その送信に対する返信を前記クライアント端末から受信した時刻とに基づいて、前記ネットワークにおけるデータの通信時間を導出することを特徴とする請求項8に記載のクイズ生成装置。
【請求項11】
用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成装置であって、
前記クイズを表示するためのデータを生成する生成手段と、
前記生成手段により生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信手段と、
前記送信手段により送信されたデータに基づいて前記クライアント端末で表示されているクイズにおける選択肢をユーザが選択可能な選択肢として登録する登録手段と、
前記送信手段により送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信手段と、
前記受信手段により受信されたデータが示す選択肢が、正解か否かを判別する判別手段とを有し、
前記判別手段は、前記受信手段により受信されたデータが示す選択肢が、前記登録手段により登録された選択肢と同じである場合に限り、前記受信手段により受信されたデータが示す選択肢が、正解か否かを判別することを特徴とするクイズ生成装置。
【請求項12】
前記受信手段により受信されたデータが示す選択肢が、前記登録手段により登録された選択肢と異なる場合に、ユーザにより選択された選択肢が不適切であることを示すデータを、前記ネットワークを介して前記クライアント端末に送信する第2の送信手段を有することを特徴とする請求項11に記載のクイズ生成装置。
【請求項13】
前記送信手段によりデータが送信された時刻と、前記受信手段によりデータが送信された時刻とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出する算出手段と、
前記算出手段により算出された時間に応じて、前記判別手段により正解と判別された場合に前記ユーザに付与する得点を決定する得点決定手段とを有することを特徴とする請求項11又は12に記載のクイズ生成装置。
【請求項14】
前記算出手段は、前記送信手段によりデータが送信された時刻と、前記受信手段によりデータが送信された時刻と、前記ネットワークにおけるデータの通信時間とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出することを特徴とする請求項13に記載のクイズ生成装置。
【請求項15】
前記ネットワークにおけるデータの通信時間を導出する導出手段を有し、
前記導出手段は、前記生成手段により生成されたデータと容量が同じ大きさのデータを、前記生成手段によりデータが生成される度に、前記ネットワークを介して前記クライアント端末に送信し、その送信した時刻と、その送信に対する返信を前記クライアント端末から受信した時刻とに基づいて、前記ネットワークにおけるデータの通信時間を導出することを特徴とする請求項14に記載のクイズ生成装置。
【請求項16】
用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成装置であって、
前記クイズを表示するためのデータを生成する生成手段と、
前記生成手段により生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信手段と、
前記送信手段により送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信手段と、
前記受信手段により受信されたデータが示す選択肢が、正解か否かを判別する判別手段と、
前記送信手段によりデータが送信された時刻と、前記受信手段によりデータが送信された時刻とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出する算出手段と、
前記算出手段により算出された時間に応じて、前記判別手段により正解と判別された場合に前記ユーザに付与する得点を決定する得点決定手段とを有することを特徴とするクイズ生成装置。
【請求項17】
前記算出手段は、前記送信手段によりデータが送信された時刻と、前記受信手段によりデータが送信された時刻と、前記ネットワークにおけるデータの通信時間とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出することを特徴とする請求項16に記載のクイズ生成装置。
【請求項18】
前記ネットワークにおけるデータの通信時間を導出する導出手段を有し、
前記導出手段は、前記生成手段により生成されたデータと容量が同じ大きさのデータを、前記生成手段によりデータが生成される度に、前記ネットワークを介して前記クライアント端末に送信し、その送信した時刻と、その送信に対する返信を前記クライアント端末から受信した時刻とに基づいて、前記ネットワークにおけるデータの通信時間を導出することを特徴とする請求項17に記載のクイズ生成装置。
【請求項19】
前記選択肢となる用語を決定する選択肢決定手段を有し、
前記選択肢決定手段は、前記選択肢の候補となる用語を特定する情報と、その用語のカテゴリを特定する情報とが対応付けられて記憶された記憶媒体を参照して、前記選択肢となる用語の全てを、同一のカテゴリの用語の中から決定し、
前記生成手段は、前記用語の説明を問題とし、前記選択肢決定手段により決定された用語を選択肢とするクイズを表示するのに必要なデータを生成することを特徴とする請求項1〜18の何れか1項に記載のクイズ生成装置。
【請求項20】
前記問題となった用語の説明と、その問題に対する選択肢となった用語とを記憶媒体に記憶する記憶手段と、
前記問題となる用語の説明を決定する問題決定手段と、
前記選択肢となる用語を決定する選択肢決定手段とを有し、
前記問題決定手段は、前記記憶手段により記憶媒体に記憶された用語の説明と異なる用語の説明を、前記問題となる用語の説明して決定し、
選択肢決定手段は、前期記憶手段により記憶媒体に記憶された用語と異なる用語を、前記選択肢となる用語として決定し、
前記生成手段は、前記問題決定手段により決定された用語の説明を問題とし、前記選択肢決定手段により決定された用語を選択肢とするクイズを表示するのに必要なデータを生成することを特徴とするすることを特徴とする請求項1〜19の何れか1項に記載のクイズ生成装置。
【請求項21】
用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成方法であって、
前記問題とする用語の説明を修正するか否かを判定する判定ステップと、
前記判定ステップにより、前記問題とする用語の説明を修正する必要があると判定されると、その問題とする用語の説明を修正する修正ステップと、
前記クイズを表示するためのデータを生成する生成ステップと、
前記生成ステップにより生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信ステップとを有し、
前記生成ステップは、前記修正ステップにより、前記問題とする用語の説明が修正された場合には、その修正された用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを表示するためのデータを生成することを特徴とするクイズ生成方法。
【請求項22】
用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成方法であって、
前記クイズを表示するためのデータを生成する生成ステップと、
前記生成ステップにより生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信ステップと、
前記送信ステップにより送信されたデータに基づいて前記クライアント端末で表示されているクイズにおける選択肢をユーザが選択可能な選択肢として登録する登録ステップと、
前記送信ステップにより送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信ステップと、
前記受信ステップにより受信されたデータが示す選択肢が、正解か否かを判別する判別ステップとを有し、
前記判別ステップは、前記受信ステップにより受信されたデータが示す選択肢が、前記登録ステップにより登録された選択肢と同じである場合に限り、前記受信ステップにより受信されたデータが示す選択肢が、正解か否かを判別することを特徴とするクイズ生成方法。
【請求項23】
用語の説明を問題とし、その用語を含む複数の用語を選択肢とするクイズを生成するクイズ生成方法であって、
前記クイズを表示するためのデータを生成する生成ステップと、
前記生成ステップにより生成されたデータを、ネットワークを介して相互に接続されたクライアント端末に送信する送信ステップと、
前記送信ステップにより送信されたデータに基づいて前記クライアント端末で表示されたクイズにおいてユーザにより選択された選択肢を示すデータを、前記クライアント端末から受信する受信ステップと、
前記受信ステップにより受信されたデータが示す選択肢が、正解か否かを判別する判別ステップと、
前記送信ステップによりデータが送信された時刻と、前記受信ステップによりデータが送信された時刻とを用いて、前記ユーザが前記クイズの問題に対する解答に要した時間を算出する算出ステップと、
前記算出ステップにより算出された時間に応じて、前記判別ステップにより正解と判別された場合に前記ユーザに付与する得点を決定する得点決定ステップとを有することを特徴とするクイズ生成方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate