(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024115980
(43)【公開日】2024-08-27
(54)【発明の名称】プログラム、情報処理方法および情報処理装置
(51)【国際特許分類】
G06Q 50/20 20120101AFI20240820BHJP
【FI】
G06Q50/20
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023021925
(22)【出願日】2023-02-15
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り (1)令和4年4月1日、ウェブサイトによる公開、https://loginc.benesse.ne.jp/cbt_s/login
(71)【出願人】
【識別番号】709006024
【氏名又は名称】株式会社ベネッセコーポレーション
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】中島 正剛
(72)【発明者】
【氏名】黛 直美
【テーマコード(参考)】
5L049
5L050
【Fターム(参考)】
5L049CC34
5L050CC34
(57)【要約】
【課題】同じ設問群を2か所で表示可能な環境において、ユーザが、一方で設問の内容を順次表示させつつ他方で設問を回答し直すことを抑制できるプログラム、情報処理方法および情報処理装置を提供する。
【解決手段】プログラムは、ユーザが使用する端末装置に、ユーザに対して、複数の設問それぞれに関する設問情報を表示する第1表示領域を表示する表示機能と、ユーザから、第1表示領域とは異なる第2表示領域であって、設問情報を表示する第2表示領域を表示させる表示要求の入力を受け付ける表示受付機能と、を実現させるためのプログラムであって、表示機能は、表示要求に基づいて、第2表示領域を表示し、第2表示領域が表示された場合、第1表示領域において表示されている設問と異なる設問の設問情報の表示を不可にする。
【選択図】
図5
【特許請求の範囲】
【請求項1】
ユーザが使用する端末装置に、
ユーザに対して、複数の設問それぞれに関する設問情報を、第1表示領域を表示する表示機能と、
前記ユーザから、前記第1表示領域とは異なる第2表示領域であって、前記設問情報を表示する第2表示領域を表示させる表示要求の入力を受け付ける表示受付機能と、を実現させるための端末プログラムであって、
前記表示機能は、
前記表示要求に基づいて、前記第2表示領域を表示し、
前記第2表示領域が表示された場合、前記第1表示領域において表示されている前記設問と異なる設問の設問情報の表示を不可にする、
端末プログラム。
【請求項2】
前記第1表示領域と前記第2表示領域とは、前記設問情報を、前記設問ごとに表示し、
前記端末装置に、
前記ユーザから、前記設問情報に対する回答入力を前記設問ごとに受け付ける回答受付機能と、
前記入力の結果に基づいて、前記複数の設問の進捗状況を示す進捗情報を記憶部に登録する登録機能と、を実現させ、
前記表示機能は、前記記憶部に登録された進捗情報に基づいて、前記第2表示領域に、前記第1表示領域で前記ユーザが最後に回答入力した設問の次の設問に関する設問情報を表示する、
請求項1に記載の端末プログラム。
【請求項3】
前記端末装置に、各表示領域が表示される際、各表示領域を識別するための領域識別情報を生成し、この生成した領域識別情報を、識別記憶部に新規に登録、または前記識別記憶部に既に登録されている他の領域識別情報があればこの他の領域識別情報に上書き登録する生成機能を実現させ、
前記表示機能は、前記第1表示領域を識別するための前記領域識別情報と、前記識別記憶部に登録されている前記領域識別情報とを照合し、照合の結果不一致の場合は前記第2表示領域が表示されたと判定して、前記第1表示領域において前記異なる設問の設問情報の表示を不可にする、
請求項1または2に記載の端末プログラム。
【請求項4】
前記表示機能は、前記第2表示領域が表示された場合、前記第1表示領域において、前記異なる設問の設問情報の表示に遷移せずに、前記第1表示領域を閉じる旨を示すエラー情報を表示する、
請求項1または2に記載の端末プログラム。
【請求項5】
ユーザが使用する端末装置と通信可能に接続されたサーバ装置に、
前記端末装置にインストールされた第1プログラムから、複数の設問に関する設問画面を、前記端末装置に表示させる表示要求を受け付けるサーバ受付機能と、
前記表示要求に基づいて、前記設問画面を、前記第1プログラムを介して前記端末装置に表示させるサーバ表示機能と、を実現させ、
前記サーバ受付機能は、前記第1プログラムとは異なる第2プログラムであって前記端末装置にインストールされた第2プログラムから、前記設問画面を、前記端末装置に表示させる表示要求を受け付け、
前記サーバ表示機能は、前記表示要求に基づいて前記第2プログラムを介して前記端末装置に前記設問画面を表示させ、前記第1プログラムを介して前記設問画面における前記複数の設問それぞれに関する設問情報の更新表示を不可にする、
サーバプログラム。
【請求項6】
前記サーバ装置に、前記第1プログラムおよび前記第2プログラムを含む各プログラムから要求された前記ユーザの認証が行われた際、各要求元を識別するための要求元識別情報を取得する取得機能を実現させ、
前記要求元識別情報を、サーバ識別記憶部に新規に登録、または前記サーバ識別記憶部に既に登録されている同一のユーザにおける他の要求元識別情報があればこの他の要求元識別情報に上書き登録するサーバ登録機能を実現させ、
前記サーバ受付機能は、前記第1プログラムから、前記第1プログラムを識別するための前記要求元識別情報を含む前記表示の更新要求を受け付け、
前記サーバ表示機能は、前記更新要求に含まれる前記要求元識別情報と、前記サーバ識別記憶部に登録されている前記要求元識別情報とを照合し、照合の結果不一致の場合に前記第2プログラムを介して前記設問画面が表示されていると判定して、前記第1プログラムを介して表示されている前記設問画面において前記設問情報の更新表示を不可にする、
請求項5に記載のサーバプログラム。
【請求項7】
ユーザが使用する第1端末装置および第2端末装置と通信可能に接続されたサーバ装置に、
前記第1端末装置から、複数の設問に関する設問画面を、前記第1端末装置に表示させる表示要求を受け付けるサーバ受付機能と、
前記表示要求に基づいて、前記設問画面を、前記第1端末装置に表示させるサーバ表示機能と、を実現させ、
前記サーバ受付機能は、前記第2端末装置から、前記設問画面を、前記第2端末装置に表示させる表示要求を受け付け、
前記サーバ表示機能は、前記表示要求に基づいて前記第2端末装置に前記設問画面を表示させ、前記第1端末装置の前記設問画面における前記複数の設問それぞれに関する設問情報の更新表示を不可にする、
サーバプログラム。
【請求項8】
前記サーバ装置に、前記第1端末装置および前記第2端末装置を含む各端末装置から要求された前記ユーザの認証が行われた際、各要求元を識別するための要求元識別情報を取得する取得機能を実現させ、
前記要求元識別情報を、サーバ識別記憶部に新規に登録、または前記サーバ識別記憶部に既に登録されている同一のユーザにおける他の要求元識別情報があればこの他の要求元識別情報に上書き登録するサーバ登録機能を実現させ、
前記サーバ受付機能は、前記第1端末装置から、前記第1端末装置を識別するための前記要求元識別情報を含む前記表示要求を受け付け、
前記サーバ表示機能は、前記表示要求に含まれる前記要求元識別情報と、前記サーバ識別記憶部に登録されている前記要求元識別情報とを照合し、照合の結果不一致の場合に前記第2端末装置に前記設問画面が表示されていると判定して、前記第1端末装置に表示されている前記設問画面において前記設問情報の更新表示を不可にする、
請求項7に記載のサーバプログラム。
【請求項9】
ユーザが使用する情報処理装置が、
ユーザに対して、複数の設問それぞれに関する設問情報を表示する第1表示領域を表示し、
前記ユーザから、前記第1表示領域とは異なる第2表示領域であって、前記設問情報を表示する第2表示領域を表示させる表示要求の入力を受け付け、
前記表示要求に基づいて、前記第2表示領域を表示し、
前記第2表示領域が表示された場合、前記第1表示領域において表示されている前記設問と異なる設問の設問情報の表示を不可にする、
情報処理方法。
【請求項10】
ユーザが使用する情報処理装置であって、
ユーザに対して、複数の設問それぞれに関する設問情報を表示する第1表示領域を表示する表示部と、
前記ユーザから、前記第1表示領域とは異なる第2表示領域であって、前記設問情報を表示する第2表示領域を表示させる表示要求の入力を受け付ける表示受付部と、を備え、
前記表示部は、
前記表示要求に基づいて、前記第2表示領域を表示し、
前記第2表示領域が表示された場合、前記第1表示領域において表示されている前記設問と異なる設問の設問情報の表示を不可にする、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報処理方法および情報処理装置に関する。
【背景技術】
【0002】
従来、ユーザの端末装置(以下、「ユーザ端末」ともいう)を利用してテストやアンケートなどの設問を表示したり設問に対するユーザからの回答を受け付けたりする技術であって、設問を進める際にユーザによる不正行為を抑制する技術が存在する。下記特許文献1では、所定の条件を満たすまで受検者による操作を無効とする第1の画面を表示してロック処理を行い、所定の条件を満たすと、第1の画面からテストの開始を指示可能な第2の画面に切り替えることでロックの解除処理を行う情報処理端末が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、Webブラウザ等の画面を表示させるためのプログラムの中には、2つの画面を同時に表示させることができるプログラムがある。このようなプログラムでは、例えば、2つの画面それぞれで同じ設問群の回答を開始した場合、一方の画面で設問群それぞれの内容を順次表示させて、これを確認しつつ他方の画面ではじめから同じ設問群を回答し直すということが可能となることがある。また、ユーザが、2つの端末装置または2つのプログラムそれぞれで同じ設問群の回答を開始しても、同じようことが可能となることがある。しかしながら、特許文献1に記載の技術では、このようなユーザの行為を抑制することができない。
【0005】
そこで、本発明のいくつかの態様は、同じ設問群を2か所で表示可能な環境において、ユーザが、一方で設問の内容を順次表示させつつ他方で設問を回答し直すことを抑制できるプログラム、情報処理方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係るプログラムは、ユーザが使用する端末装置に、ユーザに対して、複数の設問それぞれに関する設問情報を表示する第1表示領域を表示する表示機能と、ユーザから、第1表示領域とは異なる第2表示領域であって、設問情報を表示する第2表示領域を表示させる表示要求の入力を受け付ける表示受付機能と、を実現させるためのプログラムであって、表示機能は、表示要求に基づいて、第2表示領域を表示し、第2表示領域が表示された場合、第1表示領域において表示されている設問と異なる設問の設問情報の表示を不可にする。
【0007】
本発明の一態様に係る情報処理方法は、ユーザが使用する情報処理装置が、ユーザに対して、複数の設問それぞれに関する設問情報を表示する第1表示領域を表示し、ユーザから、第1表示領域とは異なる第2表示領域であって、設問情報を表示する第2表示領域を表示させる表示要求の入力を受け付け、表示要求に基づいて、第2表示領域を表示し、第2表示領域が表示された場合、第1表示領域において表示されている設問と異なる設問の設問情報の表示を不可にする。
【0008】
本発明の一態様に係る情報処理装置は、ユーザが使用する情報処理装置であって、ユーザに対して、複数の設問それぞれに関する設問情報を表示する第1表示領域を表示する表示部と、ユーザから、第1表示領域とは異なる第2表示領域であって、設問情報を表示する第2表示領域を表示させる表示要求の入力を受け付ける表示受付部と、を備え、表示部は、表示要求に基づいて、第2表示領域を表示し、第2表示領域が表示された場合、第1表示領域において表示されている設問と異なる設問の設問情報の表示を不可にする。
【発明の効果】
【0009】
本発明のいくつかの態様によれば、同じ設問群を2か所で表示可能な環境において、ユーザが、一方で設問の内容を順次表示させつつ他方で設問を回答し直すことを抑制できる。
【図面の簡単な説明】
【0010】
【
図1】本実施形態に係るテスト支援システムのシステム構成の一例を示す図である。
【
図2】本実施形態に係るテスト支援システムの概要の一例を示す図である。
【
図3】本実施形態に係るテスト支援システムの概要の一例を示す図である。
【
図4】本実施形態に係るテスト支援システムの概要の一例を示す図である。
【
図5】本実施形態に係るユーザ端末の機能構成の一例を示す図である。
【
図6】本実施形態に係るサーバ装置の機能構成の一例を示す図である。
【
図7】本実施形態に係るテスト支援システムの動作例を示す図である。
【
図8】本実施形態に係るテスト支援システムの動作例を示す図である。
【
図9】本実施形態に係るテスト支援システムの動作例を示す図である。
【
図10】本実施形態に係るテスト支援システムのハードウェア構成の一例を説明するための図である。
【発明を実施するための形態】
【0011】
添付図面を参照して、本発明の一実施形態(以下、「本実施形態」という。)について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【0012】
<1.システム構成>
図1を用いて、本実施形態に係るテスト支援システム1のシステム構成の例を説明する。テスト支援システム1は、学校や塾、自宅等において各種テストの実施を支援するためのシステムである。
【0013】
図1に示すように、テスト支援システム1は、ユーザが使用する第1ユーザ端末100aおよび第2ユーザ端末100bと、ユーザの当人認証(以下、「ユーザ認証」ともいう)のための認証用の第1サーバ装置200aと、ユーザである回答者に設問を提示したり回答者から設問に対する回答を受け付けたりする出題用の第2サーバ装置200bと、を備える。第1ユーザ端末100aと第2ユーザ端末100bとは、特に区別する必要がない場合、総称して「ユーザ端末100」ともいう。第1ユーザ端末100aは、第1端末装置の一態様である。また、第2ユーザ端末100bは、第2端末装置の一態様である。
【0014】
テスト支援システム1のユーザは、例えば、テストの受検者等の回答者(例えば、生徒等)、テストの監督者(例えば、先生や会場スタッフ等)、および/またはその他の関係者(例えば、テストの主催者やシステム管理者等)が考えられる。
【0015】
本実施形態では、上記のとおり、認証用のサーバを第1サーバ装置200aとし、他方、出題用のサーバを第2サーバ装置200bとして分けて構成しているが、本発明に係る第1サーバ装置と第2サーバ装置はこれに限定されない。例えば、第1サーバ装置と第2サーバ装置とは1つの装置であってもよい。すなわち、1つのサーバ装置が認証用と出題用の2つのサーバの機能を備えてもよい。第1サーバ装置200aと第2サーバ装置200bとは、特に区別する必要がない場合、総称して「サーバ装置200」ともいう。
【0016】
ネットワークNは、無線ネットワークや有線ネットワークにより構成される。ネットワークNの一例としては、携帯電話網や、PHS(Personal Handy-phone System)網、無線LAN(Local AreaNetwork)、3G(3rd Generation)、LTE(Long Term Evolution)、4G(4th Generation)、5G(5th Generation)、WiMax(登録商標)、赤外線通信、Bluetooth(登録商標)、有線LAN、電話線、電力線通信ネットワーク、IEEE1394などに準拠したネットワークがある。
【0017】
[サーバ装置]
サーバ装置200は、ネットワークNを介して、ユーザ端末100との通信が可能な情報処理装置である。サーバ装置200は、所定のプログラム(以下、「サーバプログラム」ともいう)を実行することにより、テストの主催者等を代行して、ユーザ認証の実行、設問の提示や設問に対する回答の評価等のテストに関するサービス(以下、「テストサービス」ともいう)を提供するための機能を提供する。本実施形態では、サーバ装置200が、テストサービスを提供するためのWebサイト(以下、「テストサイト」ともいう)において、ユーザ端末100からの要求に応じてWebページを生成し、ユーザ端末100に配信する例を説明する。
【0018】
[ユーザ端末]
ユーザ端末100は、例えば、ネットワークNを介して、サーバ装置200と通信可能な汎用または専用の情報処理装置であり、例えば、スマートフォンやタブレット端末、PDA等である。ユーザ端末100は、ユーザが使用する端末装置の一態様である。ユーザ端末100は、所定のプログラム(以下、「端末プログラム」ともいう)を実行することにより、テストに含まれる複数の設問それぞれに関するデータ(以下、「設問データ」ともいう)を表示させたりユーザから設問に対する回答入力を受け付けたり、これらの処理に必要な情報をサーバ装置200から受信したり、回答入力された結果を示す回答情報をサーバ装置200に送信したりする。本実施形態では、端末プログラムとして、ユーザ端末100に標準的に備わるWebブラウザを利用する例を説明するが、本発明に係る端末プログラムはこれに限定されない。ユーザは、サーバ装置200から配信されたWebページをユーザ端末100のWebブラウザから閲覧することで、サーバ装置200からテストサービスの提供を受けるものとする。
【0019】
<2.概要>
図2~4を参照して、本実施形態に係るテスト支援システム1におけるテストの同時受検対策の例を説明する。本例では、テストの受検に使用するWebブラウザがタブ制御を行っているものとする。
【0020】
<2-1.別タブでの同時受検の防止策>
図2は、同じ端末装置(第1ユーザ端末100a)かつ同一のWebブラウザにおいて、2つのタブに対応する2つの表示領域(画面)で複数の設問それぞれに関する情報(以下、「設問情報」ともいう)を表示させて回答し直す等の行為を抑制するための機能の一例を示す図である。本例では、設問1~6の設問群を含むテストを受検者Xが受検する際の例を説明する。
【0021】
設問情報は、例えば、各設問を識別するための情報(例えば、設問番号等)、各設問の例題を示す情報、および/または各設問の内容を示す情報を含んでもよい。また、設問情報は、例えば、複数の設問に共通する情報(例えば、テストコード、テストの内容、出題される設問の構成、出題形式、注意事項等)を含んでもよい。また、設問情報は、例えば、テキストデータ、音声データ、静止画像ファイル、および/または動画ファイル等であってもよい。
【0022】
(1)
図2に示すように、テスト支援システム1では、第1ユーザ端末100aは、テストの受検者Xからの新規のタブ(以下、先行して指定するタブを「第1タブ」ともいう)を開く指定に応じて、Webブラウザにより第1タブに対応する第1表示領域A1a(1つ目にログインする画面)を表示する。第1ユーザ端末100aは、第1表示領域A1aにおいて、受検者Xから認証情報(例えば、テスト支援システム1における受検者XのユーザIDとパスワード)の入力を受け付けて、ユーザ認証を実行させてテストサイトに受検者Xをログインさせる。
【0023】
(2)第1ユーザ端末100aは、上記(1)の第1表示領域A1aを表示させる際、第1表示領域A1aに対して各表示領域を識別するための情報(以下、「領域識別情報」または「領域ID」ともいう)を生成する。領域IDは、例えば、UUID(Universally Unique Identifier)等であってもよい。なお、端末プログラムの実装にオブジェクト指向プログラミングの技術を利用する場合、「第1表示領域A1aを表示させる際」は、第1表示領域A1aのインスタンスを生成する際と読み替えることが可能である。本例では、第1ユーザ端末100aが、第1表示領域A1aの領域IDとして「L001」を生成(採番)したものとする。
【0024】
(3)第1ユーザ端末100aは、上記の生成した領域ID「L001」を第1ユーザ端末100aの後述する識別記憶部131に新規で登録する。
【0025】
(4)第1ユーザ端末100aは、受検者Xからの第1タブとは異なる新規のタブ(以下、第1タブに後続して指定するタブを「第2タブ」ともいう)を開く指定に応じて、Webブラウザにより第2タブに対応する第2表示領域A2a(2つ目にログインする画面)を表示する。第2表示領域は、第1表示領域とは異なる表示領域である。第1ユーザ端末100aは、第2表示領域A2aにおいて、受検者Xから認証情報の入力を受け付けて、ユーザ認証を実行させてテストサイトに受検者Xをログインさせる。なお、本例では、第1表示領域A1aにおいて設問2の設問情報を表示させている際に、第2表示領域A2aを表示したものとする。この場合、第1ユーザ端末100aは、第2表示領域A2aにおいて、設問2の次の設問である設問3の設問情報から表示してもよい。
【0026】
(5)第1ユーザ端末100aは、上記(4)の第2表示領域A2aを表示させる際、第2表示領域A2aに対して各表示領域を識別するための領域IDを生成する。本例では、第1ユーザ端末100aが、第2表示領域A2aの領域IDとして「L002」を生成したものとする。
【0027】
(6)第1ユーザ端末100aは、上記(5)の生成した領域ID「L002」を、第1ユーザ端末100aの識別記憶部131に記憶されている「L001」に上書き登録する。このように、新規に第2タブを指定して表示させた第2表示領域A2aの領域IDで後から上書きさせることで、第1表示領域A1aに対して第2表示領域A2aが後勝ちさせるよう制御する。
【0028】
(7)第1ユーザ端末100aは、第1表示領域A1aにおいて現在表示されている設問2の次の設問3の設問情報を表示するページへの更新表示(表示遷移)する要求(以下、「表示要求」ともいう)の入力を受け付ける。
【0029】
(8)第1ユーザ端末100aは、上記表示要求に基づいて、要求対象の第1表示領域A1aの領域ID「L001」と、識別記憶部131に記憶されている領域ID「L002」とを照合させる。上記(6)のとおり識別記憶部131には「L002」が上書き登録されているため、照合の結果不一致(NG)となる。
【0030】
(9)第1ユーザ端末100aは、上記照合の結果それぞれの領域IDが一致しない場合は、現在表示されている設問2と異なる設問の設問情報の表示を不可とする。具体的には、第1ユーザ端末100aは、設問2の次の設問3のページへは更新表示させずに、「タブを閉じてください」というエラーメッセージを表示するページの方に更新表示させる。
【0031】
(10)第1ユーザ端末100aは、第2表示領域A2aにおいて現在表示されている設問3の次の設問4の設問情報を表示するページへの表示要求の入力を受け付ける。
【0032】
(11)第1ユーザ端末100aは、上記表示要求に基づいて、要求対象の第2表示領域A2aの領域ID「L002」と、識別記憶部131に記憶されている領域ID「L002」とを照合させる。上記(6)のとおり識別記憶部131には「L002」が登録されているため、照合の結果一致(OK)となる。
【0033】
(12)第1ユーザ端末100aは、上記照合の結果それぞれの領域IDが一致する場合は、現在表示されている設問3の次の設問4の設問情報の表示を可能にする。具体的には、第1ユーザ端末100aは、上記表示要求に基づいて、次の設問4のページへ更新表示させる。
【0034】
上記構成のもと、テスト支援システム1では、新規に第2タブを指定して第2表示領域A2aが表示された場合、第1表示領域A1aにおいて表示されている設問2と異なる設問(例えば、設問2の次の設問3)の設問情報の表示を不可にすることができる。このため、第1表示領域A1aでは、設問3以降の設問4~6の設問情報を表示することができない。したがって、テスト支援システム1では、同じ設問群を2か所で表示可能な環境において、ユーザが、一方で設問の内容を順次表示させつつ他方で設問を回答し直すことを抑制できる。
【0035】
例えば、1つ目の第1タブに対応する第1表示領域A1aでテストサイトにログインした場合、2つ目の第2タブに対応する第2表示領域A2aにおいてテストサイトに同じ認証情報でログインすること自体を不可とする方法により、同じ設問群を一方の表示領域で順次表示しつつ、他方の表示領域で設問の回答し直しを抑制することも別の方法として考えられる。しかしながら、この方法だと、第1表示領域A1aにおいてフリーズ状態等になってしまい受検の続行が困難になった場合において、新規に別のタブを指定して別の表示領域に設問を表示し直して受検の続行をすることができなくなることが考えられる。上記構成によれば、このような場合において、新規に第2タブを指定して第2表示領域A2aを表示することを許容することで、このようなフリーズ状態にも柔軟に対応しつつ、2つのタブそれぞれに対応する表示領域による同時受検を防止することができる。
【0036】
例えば、2つの端末装置からそれぞれテストサイトにログインした場合には、セッションが異なるため、セッションにより制御することが可能な場合がある。しかしながら、同じ端末装置、かつ同じWebブラウザから別のタブを指定してログインした場合、セッションが共有されてしまい、セッションによる制御が困難であることが考えられる。このようにセッションが共有されてしまう場合においても、上記構成によれば、受検者が、一方で設問の内容を順次表示させつつ他方で設問を回答し直すことを抑制できる。
【0037】
<2-2.別端末または別ブラウザでの同時受検の防止策>
図3~4は、2つの端末装置(第1ユーザ端末100aと第2ユーザ端末100b)を用いて、それぞれの端末装置で表示させた2つの画面を用いて、一方で複数の設問それぞれに関する設問情報を順次表示させて、他方で回答し直す等の行為を抑制するための機能の一例を示す図である。
図4は、
図3での後述する要求元IDの登録後、2つの端末装置の表示要求を第2サーバ装置200bが受け付けてそれぞれの端末装置における表示を制御する例を説明する。
【0038】
図3~4では2つの端末装置を用いた例を説明するが、1つの端末装置で2つの異なるWebブラウザ(例えば、GOOGLE CHROME(登録商標)およびMOZ1LLA FIREFOX(登録商標)の2つのハイパーテキスト表示アプリケーションプログラムの組み合わせ等)を用いる場合も同様の流れとなる。
【0039】
<2-2-1.ユーザ認証~トップページの表示>
図3は、ユーザ認証の認証要求から、サーバ装置200におけるの認証要求の各要求元を識別するための情報(以下、「要求元識別情報」または「要求元ID」ともいう)の発行・登録を経て、それぞれの端末装置でテストサイトのトップページを表示するまでの概要を示す図である。
【0040】
(1)
図3に示すように、第1ユーザ端末100aは、受検者Yからの表示要求に応じて、Webブラウザにより複数の設問に関する第1設問画面A1b(1つ目の端末装置で表示する画面)を表示する。第1ユーザ端末100aは、第1設問画面A1bにおいて、受検者Yからユーザ認証の認証情報の入力を受け付ける。
【0041】
(2)第1ユーザ端末100aは、上記(1)で入力された認証情報を、ユーザ認証の要求(以下、「認証要求」ともいう)として、第1サーバ装置200aに送信する。
【0042】
(3)第1サーバ装置200aは、第1ユーザ端末100aから送信された認証情報に基づいて、ユーザ認証に関する処理(以下、「認証処理」ともいう)を実行する。
【0043】
(4)第1サーバ装置200aは、上記(3)の認証処理が成功した場合、要求元の第1ユーザ端末100aに対して要求元ID「S001」を発行する。要求元IDは、例えば、UUID等であってもよい。また、要求元IDは、例えば、要求元のWebブラウザごと(または、セッションごと)に発行されてもよい。第1サーバ装置200aは、例えば、要求元IDをセッションごとに発行する場合、ユーザ認証が成功しセッションが確立された際に要求元IDを発行してもよい。
【0044】
(5)第1サーバ装置200aは、第2サーバ装置200bに、この要求元IDを含むユーザ情報を第2サーバ装置200bに送信して連携する。
【0045】
ユーザ情報は、ユーザに関する情報である。ユーザ情報は、例えば、テスト支援システム1のユーザID、ユーザIDに対応するパスワード、要求元ID、ユーザが受検者の場合の受検者ID、要求元ID、ユーザの氏名、年齢、性別、職業、住所、電話番号、および/またはメールアドレス等を含んでもよい。また、ユーザ情報は、学校での受検で、かつユーザが受検者の場合は、受検者の個人情報に代えて、受検者の学年、組番、および/または出席番号等を含んでもよい。
【0046】
第1サーバ装置200aは、各テストにおいて、ユーザ端末100から送信されたユーザ情報に基づいて、各受検者を一意に識別する受検者IDを発行してもよい。受検者IDは、例えば、受検者であるユーザごと、かつテストごと(受検ごと)に第1サーバ装置200aにより発行される。このため、例えば、テストAを受検した生徒がテストAと異なるテストBを受検した場合、第1サーバ装置200aは、この生徒に対し、テストA用の受検者IDとは異なる、テストB用の受検者IDを発行する。
【0047】
(6)第2サーバ装置200bは、第1サーバ装置200aから連携された要求元ID「S001」をサーバ識別記憶部231に登録する。
【0048】
(7)第1サーバ装置200aは、第1ユーザ端末100aに対し、第2サーバ装置200bにテストサイトのトップページにアクセスさせるための指示、具体的には第2サーバ装置200bへのリダイレクトレスポンスを送信する。第1サーバ装置200aは、例えば、要求元IDをCookieに格納して、このリダイレクトレスポンスにこのCookieを含めて第1ユーザ端末100aに送信することで要求元IDを連携してもよい。連携されたCookie(要求元ID)は、第1ユーザ端末100aのWebブラウザがファイルやメモリで保持する。本例では、このCookieにより要求元IDを連携する例を説明する。また、要求元IDをJWT(JSON Web Token)に含めて、この要求元IDを含めたJWTをCookieに格納してもよい。また、このCookieは、例えば、Webブラウザを閉じると削除されるセッションCookieであってもよい。
【0049】
(8)第1ユーザ端末100aは、上記(5)のリダイレクトレスポンスに基づいて、第2サーバ装置200bに、テストサイトのトップページを表示するための表示要求を送信する。この表示要求には、要求元ID「S001」を格納するCookieが含まれる。
【0050】
(9)第2サーバ装置200bは、この表示要求に基づいて、表示要求に含まれる要求元ID「S001」とサーバ識別記憶部231に登録されている要求元ID「S001」を照合し、照合の結果いずれもS001で一致するため、トップページを表示するための情報(以下、「表示情報」ともいう)を第1ユーザ端末100aに送信する。
【0051】
(10)第1ユーザ端末100aは、上記(9)で送信された表示情報に基づいて、第1設問画面A1bにおいて、トップページ(メニューページ)を表示する。
【0052】
(11)第2ユーザ端末100bは、受検者Yからの表示要求に応じて、Webブラウザにより複数の設問に関する第2設問画面A2b(2つ目の端末装置で表示する画面)を表示する。第2ユーザ端末100bは、第2設問画面A2bにおいて、受検者Yからユーザ認証の認証情報の入力を受け付ける。
【0053】
(12)第2ユーザ端末100bは、上記(11)で入力された認証情報を、認証要求として、第1サーバ装置200aに送信する。
【0054】
(13)第1サーバ装置200aは、第2ユーザ端末100bから送信された認証情報に基づいて、ユーザ認証の認証処理を実行する。
【0055】
(14)第1サーバ装置200aは、上記(13)の認証処理が成功した場合、要求元の第2ユーザ端末100bに対して要求元ID「S002」を発行する。
【0056】
(15)第1サーバ装置200aは、第2サーバ装置200bに、この要求元IDを含むユーザ情報を第2サーバ装置200bに送信して連携する。
【0057】
(16)第2サーバ装置200bは、第1サーバ装置200aから連携された要求元ID「S002」を、サーバ識別記憶部231に記憶されている「S001」に上書きして登録する。このように、第2サーバ装置200bは、新規にユーザ認証の要求をした第2ユーザ端末100bの要求元IDで上書きさせることで、第1ユーザ端末100aに対して第2ユーザ端末100bが後勝ちするよう制御する。
【0058】
(17)第1サーバ装置200aは、第2ユーザ端末100bに対し、第2サーバ装置200bにテストサイトのトップページにアクセスさせるためのリダイレクトレスポンスであって、要求元IDを格納したCookieを含むリダイレクトレスポンスを送信する。
【0059】
(18)第1ユーザ端末100aは、上記(17)のリダイレクトレスポンスに基づいて、第2サーバ装置200bに、テストサイトのトップページを表示する表示要求を送信する(リダイレクト)。この表示要求には、要求元ID「S002」を格納するCookieが含まれる。
【0060】
(19)第2サーバ装置200bは、この表示要求に基づいて、表示要求に含まれる要求元ID「S002」とサーバ識別記憶部231に登録されている要求元ID「S002」を照合し、照合の結果いずれもS002で一致するため、トップページを表示する表示情報を第1ユーザ端末100aに送信する。
【0061】
(20)第1ユーザ端末100aは、上記(19)で送信された表示情報に基づいて、第2設問画面A2bにおいて、トップページ(メニューページ)を表示する。
【0062】
<2-2-2.トップページからの表示遷移>
図4は、第1ユーザ端末100aと第2ユーザ端末100bそれぞれにおいて、表示されたトップページからの表示遷移の概要を示す図である。
【0063】
(1)
図4に示すように、受検者Yは、第1ユーザ端末100aの第1設問画面A1bのトップページに表示された受検開始入力手段(本例では、「受検開始」ボタン)に対して受検を開始する旨の入力をする。第1ユーザ端末100aは、この受検開始の入力を受け付ける。
【0064】
(2)第1ユーザ端末100aは、第2サーバ装置200bに、受検開始の入力を受け付けた際に表示する設問1の設問情報を表示するための表示要求を送信する。この表示要求には、第1ユーザ端末100aの要求元ID「S001」を格納するCookieが含まれている。
【0065】
(3)第2サーバ装置200bは、上記(3)で第1ユーザ端末100aから送信された表示要求に含まれる要求元ID「S001」と、サーバ識別記憶部231に登録されている要求元ID「S002」とを照合する。
【0066】
(4)第2サーバ装置200bは、照合の結果、「S001」と「S002」で不一致のため、別の端末装置から新たなログイン(第2ユーザ端末100bによるログイン)があったと判定し、認証エラーを示す情報(以下、「エラー情報」ともいう)を第1ユーザ端末100aに送信する。
【0067】
(5)第1ユーザ端末100aは、上記(4)で第2サーバ装置200bから送信されたエラー情報に基づいて、第1設問画面A1bにおいて、別の端末装置(第2ユーザ端末100b)から新たなログインがあったため設問1の設問情報を表示できない旨を示すエラーを表示する。
【0068】
(6)受検者Xは、第2ユーザ端末100bの第2設問画面A2bのトップページに表示された受検開始入力手段に対して受検を開始する旨の入力をする。第2ユーザ端末100bは、この受検開始の入力を受け付ける。
【0069】
(7)第2ユーザ端末100bは、第2サーバ装置200bに、受検開始の入力を受け付けた際に表示する設問1の設問情報を表示するための表示要求を送信する。この表示要求には、第2ユーザ端末100bの要求元ID「S002」を格納するCookieが含まれている。
【0070】
(8)第2サーバ装置200bは、上記(7)で第2ユーザ端末100bから送信された表示要求に含まれる要求元ID「S002」と、サーバ識別記憶部231に登録されている要求元ID「S002」とを照合する。
【0071】
(9)第2サーバ装置200bは、照合の結果、いずれも「S002」で一致するため、要求どおり設問1の設問情報を表示する表示情報を第2ユーザ端末100bに送信する。
【0072】
(10)第2ユーザ端末100bは、上記(4)で第2サーバ装置200bから送信された表示情報に基づいて、第2設問画面A2bにおいて、設問1の設問情報を表示する。
【0073】
上記構成のもと、テスト支援システム1では、別の端末装置である第2ユーザ端末100bからテストサイトに新規にログインされた場合、第1ユーザ端末100aの第1設問画面A1bにおいてトップページから設問1の設問情報への更新表示等、設問情報の更新表示を不可にすることができる。このため、受検者Yは、第1ユーザ端末100aにおいて、これ以上設問の設問情報を順次表示することができない。したがって、テスト支援システム1では、同じ設問群を2か所で表示可能な環境において、受検者が、一方で設問の内容を順次表示させつつ他方で設問を回答し直すことを抑制できる。なお、他の例として、第1ユーザ端末100aの第1設問画面A1bにおいて、設問1~6の設問群の途中の設問2の設問情報が表示された後、かつ設問3の設問情報が表示される前に第2ユーザ端末100bからログインした場合は、設問2から設問3の設問情報への更新表示を不可にすることができる。
【0074】
上記2-2-1.の別タブでの同時受検防止策と同様に、例えば、1つ目の端末装置でテストサイトにログインした場合、2つ目の別の端末装置でテストサイトに同じ認証情報でログインすること自体を不可とする方法により、同じ設問群について一方の端末装置で順次表示しつつ他方の端末装置で設問の回答し直しを抑制することも考えられる。しかしながら、この方法だと、同様に、第1ユーザ端末100aにおいてフリーズ状態等になってしまい受検の続行が困難になった場合において、受検の続行をすることができなくなることが考えられる。上記構成によれば、このような場合において、2つ目の端末装置でのログインを許容することで、このようなフリーズ状態にも柔軟に対応しつつ、2つの端末装置(2つのWebブラウザ)による同時受検を防止することができる。
【0075】
<3.機能構成>
図5~6を参照して、本実施形態に係るユーザ端末100およびサーバ装置200の機能構成の例を説明する。
図5はユーザ端末100の機能構成の例を示し、
図6はサーバ装置200の機能構成の例を示す。
【0076】
<3-1.ユーザ端末>
図5に示すように、ユーザ端末100は、制御部110と、通信部120と、記憶部130と、を備える。
【0077】
[制御部]
制御部110は、受付部111と、表示部112と、を備える。また、制御部110は、例えば、登録部113および/または生成部114を備えてもよい。
【0078】
[受付部]
受付部111は、ユーザから、画面に出力されたテストサイトのWebページの入力フォーム等を介して各種情報や各種要求の入力を受け付ける。受付部111は、認証受付部111aを備える。認証受付部111aは、ユーザから、このユーザの認証情報の入力を受け付ける。
【0079】
受付部111は、回答受付部111bを備える。回答受付部111bは、ユーザから、テストサイトに表示された設問情報に対する回答入力を設問ごとに受け付ける。
【0080】
受付部111は、表示受付部111cを備える。表示受付部111cは、ユーザから、設問情報を設問ごとに表示する第1表示領域を表示させる表示要求の入力を受け付ける。また、表示受付部111cは、ユーザから、第1表示領域とは異なる第2表示領域であって、設問情報を設問ごとに表示する第2表示領域を表示させる表示要求の入力を受け付ける。
【0081】
[表示部]
表示部112は、ユーザ端末100に、テストサイトの画面や音声等により各種情報を表示する。表示部112は、例えば、第2サーバ装置200bから送信された表示情報(例えば、Webページ等)に基づいて、テストサイトの各画面を表示してもよい。
【0082】
表示部112は、ユーザに対して、複数の設問それぞれに関する設問情報を表示する第1表示領域を表示する。また、表示部112は、表示受付部111cが受け付けたユーザからの表示要求に基づいて、(第1表示領域を閉じて非表示にせずに)第2表示領域を表示する。第1表示領域と第2表示領域は、例えば、設問情報を、設問ごとに表示してもよい(例えば、1つの画面(Webページ)につき1つの設問を表示する等)。また、表示部112は、第2表示領域が表示された場合、第1表示領域において表示されている設問と異なる設問の設問情報の表示を不可にする。
【0083】
上記構成によれば、表示部112は、新規にタブを指定して別の第2表示領域が表示された場合、第1表示領域において表示されている設問の次の設問等の異なる設問の設問情報の表示を不可にすることができる。このため、同じ設問群を2つの表示領域で表示可能なWebブラウザ等の端末プログラムにおいて、ユーザが、一方で設問の内容を順次表示させつつ他方で設問を回答し直すことを抑制できる。
【0084】
表示部112は、例えば、設問情報を含むWebページを設問ごとに表示し、表示した設問情報に対するユーザからの回答入力を受け付けた場合、次の設問の設問情報へと更新表示させてもよい。
【0085】
表示部112は、例えば、記憶部130に登録された進捗情報および/または回答情報に基づいて、第2表示領域に、第1表示領域でユーザが最後に回答入力した設問の次の設問に関する設問情報を表示してもよい。
【0086】
進捗情報は、複数の設問それぞれの進捗状況を示す情報である。また、進捗情報は、例えば、テスト全体の進捗状況を示してもよい。
【0087】
表示部112は、例えば、進捗情報における設問1の進捗状況が「回答済」と設定されていて、かつ、設問2の進捗状況が「開始前」と設定されている場合、第2表示領域に、設問1の次の設問2から開始させるよう設問2の設問情報を表示してもよい。
【0088】
表示部112は、例えば、記憶部130に設問1の回答情報(例えば、設問1に対する音声入力による回答を示した『回答1.mp3』ファイル等)が登録されていて、かつ設問2の回答情報が登録されていない場合、第1表示領域で最後に回答入力した設問を設問1と判定し、第2表示領域に、設問1の次の設問2から開始させるよう設問2の設問情報を表示してもよい。
【0089】
上記構成によれば、第2表示領域において、第1表示領域における設問群の進捗状況をふまえて設問群それぞれの設問情報の表示等を開始することができる。このため、2つの表示領域で並行して設問を進めたことにより発生する進捗情報や回答情報等の不整合を抑止することができる。
【0090】
表示部112は、例えば、第1表示領域を識別するための領域識別情報と、識別記憶部131に登録されている領域識別情報とを照合してもよい。領域識別情報の照合のタイミングは、例えば、更新表示の際に都度照合する、または、各設問の設問情報の表示開始の際、または設問の各パート(例えば、例題パート、説明パート、および問題パート等)の表示開始の際等の特定のイベントの際に照合する等が考えられる。表示部112は、照合の結果不一致の場合は第2表示領域が表示されたと判定して、第1表示領域において表示されている設問と異なる設問の設問情報の表示を不可にする。
【0091】
上記構成によれば、ユーザ端末100はローカルの識別記憶部131に登録されている領域識別情報を用いて別の第2表示領域が後から並行して表示されたことを検出し、これまで表示していた第1表示領域では設問をこれ以上進めることを抑止することができる。このため、同じ設問群を2つの表示領域で表示可能なWebブラウザ等の端末プログラムにおいて、ユーザが、一方で設問の内容を順次表示させつつ他方で設問を回答し直すことを効率よく抑制できる。
【0092】
表示部112は、例えば、第2表示領域が表示された場合、第1表示領域において、表示されている設問と異なる設問の設問情報の表示に遷移せずに、第1表示領域を閉じる旨を示すエラー情報を表示してもよい。このような構成によれば、第2表示領域が表示された場合、第1表示領域において表示遷移により設問の内容を順次表示することを抑制し、具体的な操作指示をユーザに提示することができる。
【0093】
[登録部]
登録部113は、回答受付部111bが受け付けた回答入力の結果に基づいて、複数の設問それぞれに対する回答情報を設問ごとに記憶部130に登録する。登録部113は、この際、回答情報のデータファイル名を、どの設問に対する回答か、すなわち設問の進捗状況を判定可能に設定してもよい。登録部113は、例えば、設問1に対する回答の回答情報であれば、データファイル名を『回答1.mp3』等に設定してもよい。このような構成によれば、ファイルについて付帯情報やファイルの中身まで読み込まなくてもファイル名だけで設問の進捗状況を判定することができる。
【0094】
登録部113は、例えば、設問情報に対する回答入力等のユーザ端末100の処理状況に基づいて、進捗情報を記憶部130に登録してもよい。具体的には、登録部113は、設問2の回答入力に基づいて設問2の回答情報を記憶部130に登録した場合は、設問2の進捗状況を「開始前」から「回答済」に更新登録してもよい。
【0095】
[生成部]
生成部114は、ユーザ端末100に、各表示領域が表示される際、各表示領域を識別するための領域識別情報(領域ID)を生成する。生成部114は、この生成した領域識別情報を、識別記憶部131に新規に登録、または識別記憶部131に既に登録されている他の領域識別情報があればこの他の領域識別情報に上書き登録する。
【0096】
[削除部]
削除部115は、第2サーバ装置200bへの回答情報の送信が完了した場合、記憶部130に登録されている送信対象の回答情報(言い換えれば、送信済みの回答情報)を削除してもよい。このような構成によれば、ユーザ端末100における回答情報の保存期間が冗長になることを抑止し、セキュリティ性の高いシステムを提供することができる。
【0097】
[通信部]
通信部120は、ネットワークNを介して、サーバ装置200と、テストサイトのWebページ等の各種情報を送受信する。
【0098】
[記憶部]
記憶部130は、進捗情報、表示情報(設問情報を含む)、回答情報等のテストに関する各種情報を記憶する。記憶部130は、例えば、これらのデータを相互に関連付けて記憶してもよい。記憶部130は、データベースマネジメントシステム(DBMS)を利用して各種情報を記憶してもよいし、ファイルシステムを利用して各種情報を記憶してもよい。DBMSを利用する場合は、データごとにテーブルを設けて、このテーブル間を関連付けて各種情報を管理してもよい。
【0099】
記憶部130は、例えば、識別記憶部131を備えてもよい。識別記憶部131は、例えば、ユーザごと(具体的には、ユーザIDごと)、またはユーザおよび受検ごと(具体的には、受検者IDごと)に、領域識別情報を記憶する。
【0100】
<3-2.サーバ装置>
図6に示すように、サーバ装置200は、サーバ制御部210と、サーバ通信部220と、サーバ記憶部230と、を備える。
【0101】
[サーバ制御部]
サーバ制御部210は、サーバ受付部211と、サーバ表示部212と、を備える。また、サーバ制御部210は、例えば、認証部213、取得部214および/またはサーバ登録部215を備えてもよい。
【0102】
サーバ受付部211は、ユーザ端末100等から、各種情報や各種要求を受け付ける。サーバ受付部211は、ユーザ端末100にインストールされた第1プログラム(端末プログラムの一態様)から、複数の設問に関する設問画面を、このユーザ端末100に表示させる表示要求を受け付ける。また、サーバ受付部211は、第1プログラムとは異なる第2プログラムであってユーザ端末100にインストールされた第2プログラム(端末プログラムの一態様)から、設問画面を、このユーザ端末100に表示させる表示要求を受け付ける。
【0103】
サーバ受付部211は、例えば、ユーザ端末100にインストールされた第1プログラムから、第1プログラムを識別するための要求元識別情報を含む表示の更新要求を受け付けてもよい。
【0104】
サーバ受付部211は、例えば、第1ユーザ端末100aから、複数の設問に関する設問画面を第1ユーザ端末100aに表示させる表示要求を受け付けてもよい。また、サーバ受付部211は、例えば、第2ユーザ端末100abから、複数の設問に関する設問画面を第2ユーザ端末100abに表示させる表示要求を受け付けてもよい。
【0105】
サーバ受付部211は、例えば、第1ユーザ端末100aから、第1ユーザ端末100aを識別するための要求元識別情報を含む表示要求を受け付けてもよい。
【0106】
[サーバ表示部]
サーバ表示部212は、ユーザ端末100に、テストサイトの画面や音声等により各種情報を表示させる。サーバ表示部212は、例えば、設問情報および/またはユーザ情報等に基づいて、テストサイトの各画面を表示させるための表示情報(例えば、Webページ等)を生成してもよい。表示部112は、生成した表示情報をユーザ端末100に送信してもよい。ユーザ端末100は受信した表示情報に基づいて、テストサイトの各画面を表示する。
【0107】
サーバ表示部212は、例えば、表示要求に基づいて第2プログラムを介してユーザ端末100に設問画面を表示させ、第1プログラムを介して設問画面における複数の設問それぞれに関する設問情報の更新表示を不可にしてもよい。具体的には、サーバ表示部212は、第1プログラムを介して表示されている設問画面において、表示されている設問の次の設問の設問情報の表示を不可にしてもよい。
【0108】
サーバ表示部212は、例えば、サーバ受付部211が受け付けた第1プログラムからの更新要求に含まれる要求元識別情報と、サーバ識別記憶部231に登録されている要求元識別情報とを照合してもよい。サーバ表示部212は、この照合の結果不一致の場合に第2プログラムを介して設問画面が表示されたと判定する。サーバ表示部212は、この判定の結果に基づいて、第1プログラムを介して表示されている設問画面において設問情報の更新表示を不可にする。具体的には、サーバ表示部212は、この判定の結果に基づいて、第1プログラムを介して表示されている設問画面において、判定時点で表示されている設問の次の設問の設問情報の表示を不可にしてもよい。
【0109】
上記構成によれば、第1プログラムとは別のプログラムである第2プログラムからテストサイトに新規にログインされた場合、第1プログラムを介して表示されている設問画面における設問群の設問情報の更新表示を不可にすることができる。このため、同じ設問群を2つのプログラムにより表示可能な環境において、ユーザが、一方のプログラムを介して設問の内容を順次表示させつつ他方のプログラムを介して設問を回答し直すことを抑制できる。
【0110】
サーバ表示部212は、例えば、第1ユーザ端末100aから表示受付部111cが受け付けた表示要求に基づいて、設問画面を、第1ユーザ端末100aに表示させる。
【0111】
サーバ表示部212は、例えば、第1ユーザ端末100aからサーバ受付部211が受け付けた表示要求に含まれる要求元識別情報と、サーバ識別記憶部231に登録されている要求元識別情報とを照合してもよい。サーバ表示部212は、この照合の結果不一致の場合に第2ユーザ端末100bに設問画面が表示されたと判定してもよい。サーバ表示部212は、第1ユーザ端末100aに表示されている設問画面において設問情報の更新表示を不可にする。
【0112】
上記構成によれば、第1プログラムとは別のプログラムである第2プログラムからテストサイトに新規にログインされた場合、第1プログラムを介して表示されている設問画面における設問群の設問情報の更新表示を不可にすることができる。このため、同じ設問群を2つのプログラムにより表示可能な環境において、ユーザが、一方のプログラムを介して設問の内容を順次表示させつつ他方のプログラムを介して設問を回答し直すことを抑制できる。
【0113】
[認証部]
認証部213は、ユーザ端末100から、ユーザ認証の認証要求として認証情報を受信した場合、この認証情報に基づいて、認証処理を実行する。認証部213は、例えば、認証情報がユーザIDとパスワードの場合、ユーザ端末100から受信したユーザIDとパスワードを照合元とし、他方、サーバ記憶部230で記憶するユーザ情報に含まれるユーザIDとパスワードを照合先として、これらの情報を照合してもよい。認証部213は、例えば、これらの情報が一致した場合は認証成功と判定し、他方、不一致の場合は認証失敗と判定してもよい。
【0114】
[取得部]
取得部214は、例えば、第1プログラムおよび第2プログラムを含む各プログラムから要求されたユーザ認証が行われた際、第1サーバ装置200aまたは自装置のサーバ記憶部230等から、各要求元を識別するための要求元識別情報を取得してもよい。
【0115】
取得部214は、例えば、第1ユーザ端末100aおよび第2ユーザ端末100bを含む各端末装置から要求されたユーザの認証が行われた際、各要求元を識別するための要求元識別情報を取得してもよい。
【0116】
[サーバ登録部]
サーバ登録部215は、ユーザ端末100から取得したユーザ情報や回答情報等の各種情報をサーバ記憶部230に登録する。サーバ登録部215は、例えば、取得部214により取得された要求元識別情報を、サーバ識別記憶部231に新規に登録、またはサーバ識別記憶部231に既に登録されている、同一のユーザにおける(および同一の受検における)他の要求元識別情報があればこの他の要求元識別情報に上書き登録してもよい。
【0117】
[サーバ通信部]
サーバ通信部220は、ネットワークNを介して、ユーザ端末100と、テストサイトの表示情報(設問情報を含む)や設問に対する回答情報等の各種情報を送受信する。
【0118】
[サーバ記憶部]
サーバ記憶部230は、進捗情報、表示情報、回答情報等のテストに関する各種情報を記憶する。サーバ記憶部230は、例えば、これらのデータを相互に関連付けて記憶してもよい。サーバ記憶部230は、DBMSを利用して各種情報を記憶してもよいし、ファイルシステムを利用して各種情報を記憶してもよい。DBMSを利用する場合は、データごとにテーブルを設けて、このテーブル間を関連付けて各種情報を管理してもよい。なお、サーバ記憶部230と、ユーザ端末100の記憶部130とが、同じ情報を記憶する(共有する)場合、サーバ記憶部230に記憶されている方をマスタとしてもよい。
【0119】
サーバ記憶部230は、例えば、サーバ識別記憶部231を備えてもよい。サーバ識別記憶部231は、例えば、ユーザごと、またはユーザおよび受検ごとに、要求元識別情報を記憶する。
【0120】
<5.動作例>
図7~9を参照して、テスト支援システムの動作例を説明する。
図7は、第1表示領域におけるユーザ認証の実行、1問目の設問情報の表示および回答入力までの処理の流れや各装置間の相互作用を示すシーケンス図である。また、
図7~9の例では、同じユーザ端末100および同じ端末プログラムを用いて設問情報の表示等行うものとする。また、本例では、テストに含まれる設問群は設問1~3の3問とする。なお、以下に示す処理の順番は一例であって、適宜、変更されてもよい。
【0121】
図7に示すように、ユーザ端末100の表示部112は、表示受付部111cがユーザから入力を受け付けた第1表示領域の表示要求(第1タブの指定)に基づいて、第1表示領域を表示する(S10)。ユーザ端末100の生成部114は、第1表示領域を識別するための領域識別情報を生成して、識別記憶部131に登録する(S11)。ユーザ端末100の認証受付部111aは、テストサイトへのログインとして、第1表示領域においてユーザからユーザ認証の認証情報の入力を受け付ける(S12)。ユーザ端末100の第1送信部121aは、ユーザ認証の認証要求として、この入力された認証情報を第1サーバ装置200aに送信する(S13)。第1サーバ装置200aの取得部214は、ユーザ端末100から送信された認証情報を取得する(S14)。第1サーバ装置200aの認証部213は、この取得した認証情報に基づいて認証処理を実行する(S15)。
【0122】
ユーザ端末100、第1サーバ装置200a、および第2サーバ装置200bは、上記ユーザ認証の認証処理の結果認証が成功した場合、複合フラグメントalt(alternative)が示すエリアの上部内の処理を実行する。具体的には、第1サーバ装置200aのサーバ通信部220は、ユーザ端末100に、第2サーバ装置200bにテストサイトのトップページにアクセスさせるための指示、具体的にはリダイレクトレスポンスを送信する(S16)。ユーザ端末100は、このリダイレクトレスポンスを受信すると、第2サーバ装置200bにテストサイトの表示要求、具体的にはリダイレクトを送信する(S17)。第2サーバ装置200bは、このリダイレクトを受信した場合、トップページを出力させるための表示情報(設問情報を含む)を生成または取得する(S18)。第2サーバ装置200bは、表示情報をユーザ端末100に送信する(S19)。ユーザ端末100は、この表示情報を受信する。
【0123】
ユーザ端末100の表示部112は、上記受信した表示情報に基づいて、テストサイトのトップページを第1表示領域に表示する(S20)。ユーザ端末100の表示受付部111cは、第1表示領域において、この表示したトップページを介して、設問群の回答を開始する開始要求の入力を受け付ける(S21)。
【0124】
ユーザ端末100の表示部112は、上記開始要求の入力を受け付けた場合、第1表示領域に、1問目の設問情報を表示する(S22)。ユーザ端末100の回答受付部111bは、第1表示領域から1問目の設問の設問情報に対する回答入力を受け付ける(S23)。ユーザ端末100の登録部113は、この回答入力の結果に基づいて、1問目の回答情報と1問目が回答済みであることを示す進捗情報を記憶部130に登録する(S24)。ユーザ端末100の送信部121は、1問目の回答情報と進捗情報を第2サーバ装置200bに送信する(S25)。第2サーバ装置200bのサーバ通信部220は、ユーザ端末100から送信されたこれらの情報を受信する。ユーザ端末100の削除部115は、送信対象の(送信済みの)1問目の回答情報を記憶部130から削除する(S26)。
【0125】
第2サーバ装置200bのサーバ登録部215は、上記ユーザ端末100から受信した進捗情報と回答情報をサーバ記憶部230に登録する(S27)。ステップS27に後続する処理については、
図8を参照して説明する。
【0126】
ユーザ端末100、第1サーバ装置200a、および第2サーバ装置200bは、上記ユーザ認証の認証処理の結果認証が失敗した場合、複合フラグメントaltが示すエリアの下部内の処理を実行する。具体的には、第1サーバ装置200aのサーバ通信部220は、認証の結果認証が失敗した旨を示す認証結果情報をユーザ端末100に送信する(S28)。ユーザ端末100は、この送信された認証結果情報を受信する。ユーザ端末100の表示部112は、認証結果情報に基づいて、認証失敗した旨を出力する(S29)。
【0127】
図8は、第2表示領域における1問目の設問情報の表示および回答入力までの処理の流れや各装置間の相互作用を示すシーケンス図である。本例では、第1表示領域と第2表示領域とは、同じ端末プログラムにより表示される領域のため、ユーザ認証の認証成功の結果(言い換えれば、サーバ装置200との間のセッション)を共有するものとする。
【0128】
図8に示すように、ユーザ端末100の表示受付部111cは、第2表示領域を表示させる表示要求の入力を受け付ける(S30)。ユーザ端末100の表示部112は、この第2表示領域の表示要求(第2タブの指定)に基づいて、第2表示領域を表示する(S31)。ユーザ端末100の生成部114は、第2表示領域を識別するための領域識別情報を生成して、識別記憶部131の第1表示領域の領域識別情報に上書き登録する(S32)。
【0129】
ユーザ端末100の認証受付部111aは、ユーザから、第2表示領域において、テストサイトへのログイン要求の入力を受け付ける(S33)。ユーザ端末100の第1送信部121aは、認証受付部111aがこのログイン要求の入力を受け付けると、既に認証成功済みのため(セッションが確立しているため)、テストサイトのトップページの表示要求を第1サーバ装置200aに送信する(S34)。第2サーバ装置200bのサーバ表示部212は、この表示要求を受信した場合、トップページを出力させるための表示情報(設問情報を含む)を生成または取得する(S35)。第2サーバ装置200bは、表示情報をユーザ端末100に送信する(S36)。ユーザ端末100は、この表示情報を受信する。
【0130】
ユーザ端末100の表示部112は、上記受信した表示情報に基づいて、テストサイトのトップページを第2表示領域に表示する(S37)。ユーザ端末100の表示受付部111cは、この第2表示領域に表示したトップページを介して、設問群の回答を開始する開始要求の入力を受け付ける(S38)。表示部112は、この開始要求に基づいて、第2表示領域の領域識別情報と、識別記憶部131に記憶する領域識別情報とを照合する(S39)。本例では、ステップS32で第2表示領域の領域識別情報で上書き登録されているため照合の結果、これらの領域識別情報は一致する。表示部112は、この照合の結果に基づいて、記憶部130に登録されている進捗情報に基づいて、設問の進捗状況を判定する(S40)。本例では、
図7に記載のステップS24において、第1表示領域により設問1が回答済みであると進捗情報に登録されているため、進捗状況は設問1が回答済みであると判定する。
【0131】
ユーザ端末100の表示部112は、上記領域識別情報の照合の結果および進捗状況の判定の結果に基づいて、第2表示領域に、2問目の設問情報を表示する(S41)。ユーザ端末100の回答受付部111bは、第2表示領域から2問目の設問の設問情報に対する回答入力を受け付ける(S42)。ユーザ端末100の登録部113は、この回答入力の結果に基づいて、2問目の回答情報を記憶部130に登録し、また、進捗状況として2問目が回答済みであることを示すように進捗情報を更新登録する(S43)。ユーザ端末100の送信部121は、2問目の回答情報と更新した進捗情報を第2サーバ装置200bに送信する(S44)。第2サーバ装置200bは、これらの情報を受信する。第2サーバ装置200bのサーバ通信部220は、ユーザ端末100から送信されたこれらの情報を受信する。ユーザ端末100の削除部115は、送信対象の(送信済みの)2問目の回答情報を記憶部130から削除する(S45)。
【0132】
第2サーバ装置200bのサーバ登録部215は、上記ユーザ端末100から受信した回答情報をサーバ記憶部230に登録する(S46)また、サーバ登録部215は、上記受信した進捗情報に基づいて、サーバ記憶部230に登録されている進捗情報を更新する(S47)。ステップS47に後続する処理については、
図9を参照して説明する。
【0133】
図9は、第1表示領域と第2表示領域とが同時に表示された際の設問情報の表示制御の処理の流れや各装置間の相互作用を示すシーケンス図である。
【0134】
図9に示すように、ユーザ端末100の表示受付部111cは、第1表示領域において、2問目の設問情報の表示要求(具体的には、2問目の設問情報への表示遷移の要求)の入力を受け付ける(S50)。表示部112は、この表示要求に基づいて、第1表示領域の領域識別情報と、識別記憶部131に記憶する領域識別情報とを照合する(S51)。本例では、ステップ32で第2表示領域の領域識別情報で上書き登録されているため照合の結果、これらの領域識別情報は不一致となる。表示部112は、この照合の結果に基づいて、第1表示領域を閉じる旨を表示する(S52)。
【0135】
ユーザ端末100の表示受付部111cは、第2表示領域において、3問目の設問情報の表示要求の入力を受け付ける(S53)。表示部112は、この表示要求に基づいて、第2表示領域の領域識別情報と、識別記憶部131に記憶する領域識別情報とを照合する(S54)。照合の結果、これらの領域識別情報は一致するため、表示部112は、第2表示領域に3問目の設問情報を表示する(S55)。ユーザ端末100の回答受付部111bは、第2表示領域から3問目の設問の設問情報に対する回答入力を受け付ける(S56)。ユーザ端末100の登録部113は、この回答入力の結果に基づいて、3問目の回答情報を記憶部130に登録し、また、進捗状況として3問目が回答済みであることを示すように進捗情報を更新登録する(S57)。ユーザ端末100の送信部121は、3問目の回答情報と更新した進捗情報を第2サーバ装置200bに送信する(S58)。第2サーバ装置200bのサーバ通信部220は、ユーザ端末100から送信されたこれらの情報を受信する。ユーザ端末100の削除部115は、送信対象の(送信済みの)3問目の回答情報を記憶部130から削除する(S59)。
【0136】
第2サーバ装置200bのサーバ登録部215は、上記ユーザ端末100から受信した回答情報をサーバ記憶部230に登録する(S60)また、サーバ登録部215は、受信した進捗情報に基づいて、サーバ記憶部230に登録されている進捗情報を更新する(S61)。
【0137】
ユーザ端末100の表示部112は、第2表示領域に、3問目の回答済みであることを示す進捗情報に基づいて、テストを終了してよいか否かをユーザに問い合わせる旨の情報(
図9では、「終了確認情報」と表記)を表示する(S61)。ユーザ端末100の表示受付部111cは、第2表示領域において、ユーザから、終了確認情報に対するテストの終了を要求する終了要求の入力を受け付ける(S62)。ユーザ端末100の送信部121は、この終了要求を第2サーバ装置200bに送信する(S63)。第2サーバ装置200bのサーバ通信部220は、この終了要求を受信する。第2サーバ装置200bのサーバ登録部215は、この受信した終了要求に基づいて、要求元のユーザのテストを終了するようサーバ記憶部230に登録されている進捗情報を更新する(S64)。第2サーバ装置200bのサーバ通信部220は、ユーザ端末100に、終了要求を受け付けた旨を応答する(S65)。ユーザ端末100は、この応答を受信する。
【0138】
ユーザ端末100の表示部112は、上記終了要求に対する応答に基づいて、第2表示領域に、テストを終了した旨を表示する(S66)。ユーザ端末100の削除部115は、終了対象のテストに関するローカルデータ(例えば、進捗情報や削除されずに保存されている回答情報等)を削除する(S67)。
【0139】
<6.ハードウェア構成>
図10を参照して、上述してきたユーザ端末100およびサーバ装置200をコンピュータ800により実現する場合のハードウェア構成の一例を説明する。なお、それぞれの装置の機能は、複数台の装置に分けて実現することもできる。
【0140】
図10に示すように、コンピュータ800は、プロセッサ801と、メモリ803と、記憶装置805と、入力I/F部807と、データI/F部809と、通信I/F部811、及び表示装置813を含む。
【0141】
プロセッサ801は、メモリ803に記憶されているプログラム(例えば、端末プログラムやサーバプログラム)を実行することによりコンピュータ800における様々な処理を制御する。例えば、ユーザ端末100の制御部やサーバ装置200のサーバ制御部210が備える各機能部などは、メモリ803に一時記憶されたプログラムを、プロセッサ801が実行することにより実現可能である。
【0142】
メモリ803は、例えばRAM(Random Access Memory)などの記憶媒体である。メモリ803は、プロセッサ801によって実行されるプログラムのプログラムコードや、プログラムの実行時に必要となるデータを一時的に記憶する。
【0143】
記憶装置805は、例えばハードディスクドライブ(HDD)やフラッシュメモリなどの不揮発性の記憶媒体である。記憶装置805は、オペレーティングシステムや、上記各構成を実現するための各種プログラム(例えば、端末プログラムやサーバプログラム)を記憶する。この他、記憶装置805は、回答情報、および/または表示情報等の各種情報を登録するテーブルと、当該テーブルを管理するDBを記憶することも可能である。このようなプログラムやデータは、必要に応じてメモリ803にロードされることにより、プロセッサ801から参照される。
【0144】
入力I/F部807は、ユーザからの入力を受け付けるためのデバイスである。入力I/F部807の具体例としては、キーボードやマウス、タッチパネル、各種センサ、ウェアラブル・デバイスなどが挙げられる。入力I/F部807は、例えばUSB(Universal Serial Bus)などのインタフェースを介してコンピュータ800に接続されても良い。
【0145】
データI/F部809は、コンピュータ800の外部からデータを入力するためのデバイスである。データI/F部809の具体例としては、各種記憶媒体に記憶されているデータを読み取るためのドライブ装置などがある。データI/F部809は、コンピュータ800の外部に設けられることも考えられる。その場合、データI/F部809は、例えばUSBなどのインタフェースを介してコンピュータ800へと接続される。
【0146】
通信I/F部811は、コンピュータ800の外部の装置と有線または無線により、インターネットNを介したデータ通信を行うためのデバイスである。通信I/F部811は、コンピュータ800の外部に設けられることも考えられる。その場合、通信I/F部811は、例えばUSBなどのインタフェースを介してコンピュータ800に接続される。
【0147】
表示装置813は、各種情報を表示するためのデバイスである。表示装置813の具体例としては、例えば液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ、ウェアラブル・デバイスのディスプレイなどが挙げられる。表示装置813は、コンピュータ800の外部に設けられても良い。その場合、表示装置813は、例えばディスプレイケーブルなどを介してコンピュータ800に接続される。また、入力I/F部807としてタッチパネルが採用される場合には、表示装置813は、入力I/F部807と一体化して構成することが可能である。
【0148】
なお、本実施形態は、本発明を説明するための例示であり、本発明をその実施の形態のみに限定する趣旨ではない。また、本発明は、その要旨を逸脱しない限り、さまざまな変形が可能である。さらに、当業者であれば、以下に述べる各要素を均等なものに置換した実施の形態を採用することが可能であり、かかる実施の形態も本発明の範囲に含まれる。
【0149】
[変形例]
なお、本発明を上記実施の形態に基づいて説明してきたが、以下のような場合も本発明に含まれる。
【0150】
[変形例1]
上記実施形態では、端末プログラムをWebブラウザとする例を説明したが、本発明に係る端末プログラムはこれに限定されない。端末プログラムは、例えば、テスト支援システム1またはサードパーティシステムが提供する各システム専用のアプリケーションプログラム(例えば、ネイティブアプリ)であってもよい。
【符号の説明】
【0151】
1…テスト支援システム、100…ユーザ端末、110…制御部、111…受付部、112…表示部、113…登録部、114…生成部、115…削除部、120…通信部、121…送信部、122…受信部、130…記憶部、131…識別記憶部、200a…第1サーバ装置、200b…第2サーバ装置、210…サーバ制御部、211…サーバ受付部、212…サーバ表示部、213…認証部、214…取得部、215…サーバ登録部、800…コンピュータ、801…プロセッサ、803…メモリ、805…記憶装置、807…入力I/F部、809…データI/F部、811…通信I/F部、813…表示装置。