(57)【要約】【課題】短時間に大量の投票を受け付けても、リアルタイムに現在の集計結果を投票者に返すことが可能な投票システムを提供する。【解決手段】投票データを集計する複数のサーバと、情報処理装置とネットワークを介して接続され、かつ、複数のサーバと接続され、情報処理装置から前記投票データを受信すると、複数のサーバから１つを選択し、選択したサーバに投票データを転送する転送装置とを有し、複数のサーバのそれぞれは、投票データを保存するための第１の記憶手段と、転送装置から受信する投票データを第１の記憶手段に格納するとともに、自装置以外のサーバに投票データを送信し、他のサーバから受信する投票データを第１の記憶手段に格納し、転送装置から投票データを受信したとき、第１の記憶手段に保存した投票データの集計結果を投票データの送信元の情報処理装置に送信する制御手段とを有する。【選択図】図１
2010003050.tif 000002
【特許請求の範囲】
【請求項１】
投票データを集計する複数のサーバと、
情報処理装置とネットワークを介して接続され、かつ、前記複数のサーバと接続され、前記情報処理装置から前記投票データを受信すると、前記複数のサーバから１つを選択し、選択したサーバに前記投票データを転送する転送装置とを有し、
前記複数のサーバのそれぞれは、
前記投票データを保存するための第１の記憶手段と、前記転送装置から受信する投票データを前記第１の記憶手段に格納するとともに、自装置以外のサーバに該投票データを送信し、他のサーバから受信する投票データを前記第１の記憶手段に格納し、前記転送装置から前記投票データを受信したとき、前記第１の記憶手段に保存した投票データの集計結果を前記投票データの送信元の情報処理装置に送信する制御手段とを有する、投票システム。
【請求項２】
前記複数のサーバと接続され、前記投票データを保存するための第２の記憶手段をさらに有し、
前記複数のサーバのそれぞれの制御手段は、
前記転送装置から受信する投票データを前記第２の記憶手段に格納し、投票が締め切られた後、前記情報処理装置から最終集計結果を要求する旨の信号を受信すると、前記第２の記憶手段に保存された投票データを用いて求めた集計結果を要求元の情報処理装置に送信する、請求項１記載の投票システム。
【請求項３】
前記投票データを前記第２の記憶手段に格納する際のデータ形式と前記第１の記憶手段に格納する際のデータ形式とが異なるとき、
前記投票が締め切られた後、前記第２の記憶手段に保存された前記投票データを前記第１の記憶手段のデータ形式に変換する管理装置をさらに有する請求項２記載の投票システム。
【請求項４】
投票開始から一定時間毎に前記複数のサーバのそれぞれの前記第１の記憶手段に格納された投票データの数と前記第２の記憶手段に格納された投票データの数を比較し、比較による差の値に基づく誤差情報を求め、該誤差情報を前記複数のサーバに送信する管理装置をさらに有し、
前記複数のサーバのそれぞれの制御手段は、
前記管理装置から受信する誤差情報を前記第１の記憶手段に格納し、前記集計結果に該誤差情報を添付して前記情報処理装置に送信する、請求項２記載の投票システム。
【請求項５】
情報処理装置とネットワークおよび転送装置を介して接続される複数のサーバ装置の１つであって、
投票データを保存するための第１の記憶手段と、
前記転送装置を介して前記情報処理装置から受信する投票データを前記第１の記憶手段に格納するとともに、自装置以外のサーバ装置に該投票データを送信し、他のサーバ装置から受信する投票データを前記第１の記憶手段に格納し、前記情報処理装置から投票データを受信したとき、前記第１の記憶手段に保存した投票データの集計結果を前記投票データの送信元の情報処理装置に送信する制御手段と、
を有するサーバ装置。
【請求項６】
前記制御手段は、
前記情報処理装置から投票データを受信すると、該投票データを前記複数のサーバ装置に接続される第２の記憶手段に格納し、投票が締め切られた後、前記情報処理装置から最終集計結果を要求する旨の信号を受信すると、前記第２の記憶手段に保存された投票データを用いて求めた集計結果を要求元の情報処理装置に送信する、請求項５記載のサーバ装置。
【請求項７】
情報処理装置とネットワークおよび転送装置を介して接続される複数のサーバ装置の１つによる情報処理方法であって、
前記転送装置を介して前記情報処理装置から受信する投票データを自装置内の第１の記憶手段に格納するとともに、自装置以外のサーバ装置に該投票データを送信し、
他のサーバ装置から受信する投票データを前記第１の記憶手段に格納し、
前記情報処理装置から投票データを受信したとき、前記第１の記憶手段に保存した投票データの集計結果を前記投票データの送信元の情報処理装置に送信する、情報処理方法。
【請求項８】
前記情報処理装置から投票データを受信すると、該投票データを前記複数のサーバ装置に接続される第２の記憶手段に格納し、
投票が締め切られた後、前記情報処理装置から最終集計結果を要求する旨の信号を受信すると、前記第２の記憶手段に保存された投票データを用いて求めた集計結果を要求元の情報処理装置に送信する、請求項７記載の情報処理方法。
【請求項９】
情報処理装置とネットワークおよび転送装置を介して接続される複数のコンピュータの１つに実行させるためのプログラムであって、
前記転送装置を介して前記情報処理装置から受信する投票データを自装置内の第１の記憶手段に格納するとともに、自装置以外のコンピュータに該投票データを送信し、
他のコンピュータから受信する投票データを前記第１の記憶手段に格納し、
前記情報処理装置から投票データを受信したとき、前記第１の記憶手段に保存した投票データの集計結果を前記投票データの送信元の情報処理装置に送信する処理を前記コンピュータに実行させるためのプログラム。
【請求項１０】
前記情報処理装置から投票データを受信すると、該投票データを前記複数のコンピュータに接続される第２の記憶手段に格納し、
投票が締め切られた後、前記情報処理装置から最終集計結果を要求する旨の信号を受信すると、前記第２の記憶手段に保存された投票データを用いて求めた集計結果を要求元の情報処理装置に送信する処理をさらに有する請求項９記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して受信する投票を集計する投票システムと、サーバ装置と、情報処理方法と、コンピュータに実行させるためのプログラムとに関する。
【背景技術】
【０００２】
テレビ放送によるアンケート調査やクイズ番組の放送中に視聴者がリアルタイムで参加できるシステムが知られている。（特許文献１参照）。
【０００３】
特許文献１に開示された技術を応用して、ラジオまたはテレビの視聴者が、放送されるクイズ番組で出された問題に対して答えを投票し、投票システムが、受け付けた投票を集計する投票システムがある。投票システムは、ＮＡＳ（Network Attached Storage）およびサーバを有し、視聴者が使用する情報処理装置とネットワークを介して接続される。
【０００４】
なお、投票対象に対する投票方法は、複数の要素から１つを選択して回答する選択式とする。投票対象がクイズの問題であれば、「要素」は回答選択肢に相当する。以下では、複数の要素のそれぞれを投票要素と称する。
【０００５】
上述の投票システムについての動作を簡単に説明する。
【０００６】
ラジオまたはテレビで出された問題に対して、視聴者が情報処理装置を操作して、その問題についての複数の投票要素から１つを選択すると、情報処理装置は、選択された投票要素の情報を含む投票データを投票システムに送信する。投票システムは、情報処理装置からネットワークを介して受信する投票データをＮＡＳに蓄え、投票の受付が終了すると、ＮＡＳに蓄積された投票データに対してサーバが集計結果を計算し、その結果を情報処理装置に返信していた。
【特許文献１】特開２００２−３４４９２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、視聴者は自分が投票したとき、投票の途中結果を知りたいという要望があった。上述の投票システムでは、短時間に大量の投票データを受け付け、さらに、投票データを受信する度に集計結果を計算しようとすると、計算処理がシステムの能力を超えてしまい、投票データを受け付けることもできなくなってしまう。そのため、上述したように、視聴者は、自分が投票した時点での集計結果ではなく、最終的な集計結果しか知ることができなかった。
【０００８】
本発明は上述したような技術が有する問題点を解決するためになされたものであり、短時間に大量の投票を受け付けても、リアルタイムに現在の集計結果を投票者に返すことが可能な投票システム、サーバ装置、情報処理方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するための本発明の投票システムは、
投票データを集計する複数のサーバと、
情報処理装置とネットワークを介して接続され、かつ、前記複数のサーバと接続され、前記情報処理装置から前記投票データを受信すると、前記複数のサーバから１つを選択し、選択したサーバに前記投票データを転送する転送装置とを有し、
前記複数のサーバのそれぞれは、
前記投票データを保存するための第１の記憶手段と、前記転送装置から受信する投票データを前記第１の記憶手段に格納するとともに、自装置以外のサーバに該投票データを送信し、他のサーバから受信する投票データを前記第１の記憶手段に格納し、前記転送装置から前記投票データを受信したとき、前記第１の記憶手段に保存した投票データの集計結果を前記投票データの送信元の情報処理装置に送信する制御手段とを有する構成である。
【００１０】
また、本発明のサーバ装置は、情報処理装置とネットワークおよび転送装置を介して接続される複数のサーバ装置の１つであって、
投票データを保存するための第１の記憶手段と、
前記転送装置を介して前記情報処理装置から受信する投票データを前記第１の記憶手段に格納するとともに、自装置以外のサーバ装置に該投票データを送信し、他のサーバ装置から受信する投票データを前記第１の記憶手段に格納し、前記情報処理装置から投票データを受信したとき、前記第１の記憶手段に保存した投票データの集計結果を前記投票データの送信元の情報処理装置に送信する制御手段と、
を有する構成である。
【００１１】
また、本発明の情報処理方法は、情報処理装置とネットワークおよび転送装置を介して接続される複数のサーバ装置の１つによる情報処理方法であって、
前記転送装置を介して前記情報処理装置から受信する投票データを自装置内の第１の記憶手段に格納するとともに、自装置以外のサーバ装置に該投票データを送信し、
他のサーバ装置から受信する投票データを前記第１の記憶手段に格納し、
前記情報処理装置から投票データを受信したとき、前記第１の記憶手段に保存した投票データの集計結果を前記投票データの送信元の情報処理装置に送信するものである。
【００１２】
さらに、本発明のプログラムは、情報処理装置とネットワークおよび転送装置を介して接続される複数のコンピュータの１つに実行させるためのプログラムであって、
前記転送装置を介して前記情報処理装置から受信する投票データを自装置内の第１の記憶手段に格納するとともに、自装置以外のコンピュータに該投票データを送信し、
他のコンピュータから受信する投票データを前記第１の記憶手段に格納し、
前記情報処理装置から投票データを受信したとき、前記第１の記憶手段に保存した投票データの集計結果を前記投票データの送信元の情報処理装置に送信する処理を前記コンピュータに実行させるものである。
【発明の効果】
【００１３】
本発明によれば、短時間に大量の投票データを受け付けても、リアルタイムに現在の集計結果を投票データの送信元に返すことができる。
【発明を実施するための最良の形態】
【００１４】
本発明の投票システムの実施形態を説明する。以下に説明する実施形態は、ラジオまたはテレビの視聴者が、放送されるクイズ番組で出された問題に対して回答を投票し、投票システムが、受け付けた投票を集計する場合である。
【００１５】
（第１の実施形態）
本実施形態の投票システムの構成を説明する。図１は本実施形態の投票システムの一構成例を示すブロック図である。
【００１６】
本実施形態の投票システムは、ネットワーク１００を介して、視聴者が使用する情報処理装置１０と接続される。図１に示すように、投票システムは、投票データの送信元の情報処理装置１０に対して投票結果を返信する複数のサーバ３０と、情報処理装置１０からの接続要求を複数のサーバ３０に分散する負荷分散装置２０と、投票データを記憶するＮＡＳ５０と、投票システム内の各装置を制御する管理装置４０とを有する。
【００１７】
負荷分散装置２０は、ネットワーク１００を介して情報処理装置１０と接続される。負荷分散装置２０は、複数のサーバ３０と接続されている。複数のサーバ３０は、ネットワーク１５０を介してＮＡＳ５０および管理装置４０と接続される。ネットワーク１５０はＬＡＮ（Local Area Network）である。
【００１８】
投票対象が複数ある場合、投票対象を特定するための識別子である投票識別子が各投票対象に予め付与されている。クイズ番組で、問題Ａから問題Ｃの３題が出題される場合、問題毎に異なる投票識別子が各問題に付与されている。１つの投票データに複数の投票要素を含ませる場合でも、投票識別子と投票要素をセットにして投票データに書き込むことで、投票データに含まれる複数の投票要素のそれぞれがどの投票対象に対しての回答であるか識別することが可能となる。
【００１９】
図２は情報処理装置の一構成例を示すブロック図である。図２に示すように、情報処理装置１０は、ネットワーク１００の通信機能を備えた携帯電話機、携帯情報端末（Personal Digital Assistant）およびパーソナルコンピュータ（以下、ＰＣと表記する）などの情報機器である。情報処理装置１０は、利用者が投票要素を選択するための入力手段１１と、表示手段１２と、送受信手段１３と、記憶部１５と、投票データ作成手段１４を含む制御部１６とを有する。
【００２０】
制御部１６は、プログラムにしたがって処理を実行するＣＰＵ（Central Processing Unit）（不図示）と、プログラムを格納するためのメモリ（不図示）とを有する。ＣＰＵがプログラムを実行することで、投票データ作成手段１４が情報処理装置１０内に仮想的に構成される。
【００２１】
なお、複数の情報処理装置１０、負荷分散装置２０、複数のサーバ３０、管理装置４０およびＮＡＳ５０のそれぞれには、装置毎に異なる識別子である装置識別子が付与されている。装置間で送受信されるデータおよび信号のそれぞれには、そのデータの送信元を示す装置識別子と送信先を示す装置識別子が添付されているものとする。これらのデータや信号に送信先および送信元の情報を添付する方法は、ＩＰ（Internet Protocol）のパケットのヘッダと同様であり、その詳細な説明を省略する。
【００２２】
情報処理装置１０の装置識別子としては、ユーザＩＤや電子メールアドレスなど、利用者によって決められた識別子に限らず、情報処理装置１０が携帯電話機であれば電話番号やｕｉｄ（個体識別番号）であってもよい。
【００２３】
次に、投票システムの各装置について詳しく説明する。
【００２４】
負荷分散装置２０は、転送装置の一種であり、ロード・バランサとも呼ばれる。負荷分散装置２０は、投票画面を要求する旨の投票画面要求信号等の各種要求を受信すると、複数のサーバ３０の負荷を調べ、負荷の低いサーバ３０を１つ選択し、選択したサーバ３０にその要求の信号を転送する。また、負荷分散装置２０は、情報処理装置１０から投票データ等の各種データを受信したときにも、負荷の低いサーバ３０にデータを転送する。なお、情報処理装置１０からの各種要求や各種データを受信した場合、各種要求や各種データの宛先として指定された装置識別子のサーバ３０に転送する制御や、予めプログラムされた順序でサーバ３０に転送する制御を行ってもよい。
【００２５】
図３はサーバの一構成例を示すブロック図である。図３に示すように、サーバ３０は、情報処理装置１０から投票データを受信し、情報処理装置１０に投票結果を送信する送受信手段３１と、投票データを記憶する記憶部３２と、格納した投票データの集計処理を行う制御部３４とを有する。
【００２６】
記憶部３２には、投票データの他に、投票処理の進捗状態を示す投票状態情報が格納される。投票状態情報には、少なくとも「投票開始」、「投票開始前」、「投票集計」および「投票終了」の４種類がある。投票対象が複数ある場合には、投票対象の投票識別子に対応して投票状態情報が登録されている。
【００２７】
また、記憶部３２には、視聴者が投票するための画面である投票画面データが格納されている。投票画面データには、投票対象を示す投票識別子と、選択可能な要素である投票要素の情報が複数含まれている。投票要素が問題に対する選択肢に相当する。投票画面データに基づいて表示される投票画面には、複数の投票要素の他に、「投票ボタン」および「取り消しボタン」が表示される。
【００２８】
さらに、記憶部３２には、番組開始からどの時刻にどの投票識別子の投票対象を受け付けるか進行状況を示すスケジュール情報が登録されている。
【００２９】
制御部３４は、受け付けた投票データを記憶部３２に格納する自装置投票処理手段３５と、記憶部３２に記憶された投票データを集計計算する集計手段３６と、他のサーバから送られてきた投票データを記憶部３２に格納する他装置投票処理手段３７と、ＮＡＳ５０の投票データを記憶部３２に格納された投票データに反映させる投票終了処理手段３８とを有する。制御部３４は、記憶部３２に記録された投票状態情報を参照して処理を行う。
【００３０】
制御部３４は、プログラムにしたがって処理を実行するＣＰＵ（不図示）と、プログラムを格納するためのメモリ（不図示）とを有する。ＣＰＵがプログラムを実行することで、自装置投票処理手段３５、集計手段３６、他装置投票処理手段３７および投票終了処理手段３８がサーバ３０内に仮想的に構成される。
【００３１】
図４はＮＡＳの一構成例を示すブロック図である。ＮＡＳ５０は、複数のサーバ３０および管理装置４０とネットワーク１５０を介して接続され、複数のサーバ３０が共用するファイルサーバである。ＮＡＳ５０は、投票データを記憶する記憶部５１と、受信する投票データを記憶部５１に格納する制御部５２とを有する。
【００３２】
本実施形態の投票システムにおいて、各サーバ３０の記憶部３２はサーバ毎の第１の記憶手段として機能し、ＮＡＳ５０は複数のサーバ３０が共用する第２の記憶手段として機能する。
【００３３】
図５は管理装置の一構成例を示すブロック図である。図１に示したように、管理装置４０は、複数のサーバ３０およびＮＡＳ５０とネットワーク１５０を介して接続される。図５に示すように、管理装置４０は、記憶部４１と、制御部４２とを有する。制御部４２は、各サーバ３０の投票状態情報を変更する投票状態変更手段４３と、投票締切り後にＮＡＳ５０に蓄積された投票データから所定のデータを抽出し、サーバ３０の記憶部３２に登録するための投票終了後投票データにデータを変換する結果集計手段４４とを有する。
【００３４】
制御部４２は、プログラムにしたがって処理を実行するＣＰＵ（不図示）と、プログラムを格納するためのメモリ（不図示）とを有する。ＣＰＵがプログラムを実行することで、投票状態変更手段４３および結果集計手段４４が管理装置４０内に仮想的に構成される。
【００３５】
次に、本実施形態の投票システムの動作手順を説明する。図６および図７は本実施形態の投票システムの動作手順を示すフローチャートである。
【００３６】
ここでは、説明を簡単にするために、複数の情報処理装置および複数のサーバのうち、１台の情報処理装置および１台のサーバに注目して説明する。投票開始前では、各サーバ３０の記憶部３２の投票状態情報として「投票開始前」が登録されている。
【００３７】
投票開始時刻になると、管理者による投票開始の指示入力、または、プログラムにしたがって、図６に示すように、管理装置４０の投票状態変更手段４３は、投票状態が投票開始になった旨を通知するための投票開始指示信号を各サーバ３０に送信する（ステップ１０１）。ここでは、投票対象が複数あるものとする。
【００３８】
ステップ１０１で、管理装置４０は、どの投票対象が投票開始になったかをサーバ３０に通知するために、開始指示信号に投票識別子の情報を含めて送信している。各サーバ３０は、管理装置４０から投票開始指示信号を受信すると、投票開始指示信号に含まれる投票識別子に対応する投票状態情報を「投票開始前」から「投票開始」に変更する（ステップ１０２）。
【００３９】
視聴者は、テレビやラジオ等で投票が開始されたことを知ると、情報処理装置１０の入力手段１１を操作して投票システムのネットワークアドレスを入力する。ネットワークアドレスは、例えば、ＵＲＬ（Uniform Resource Locator）である。情報処理装置１０は、ネットワークアドレスが入力されると、送受信手段１３を介して、投票画面を要求する旨の投票画面要求信号を投票システムに送信する（ステップ１０３）。
【００４０】
負荷分散装置２０は、情報処理装置１０から投票画面要求信号を受信すると、各サーバ３０の負荷状態の情報を取得する。そして、投票処理全体の負荷を各サーバ３０に均等に振り分けるために、各サーバ３０の負荷状態を比較し、負荷の最も低いサーバ３０に投票画面要求信号を転送する（ステップ１０４）。
【００４１】
サーバ３０が送受信手段３１を介して負荷分散装置２０から投票画面要求信号を受信すると、制御部３４は記憶部３２の投票状態情報を参照し、投票状態情報が「投票開始」であるか否かを判定する（ステップ１０５）。投票状態情報が「投票開始」以外の情報であると、制御部３４は、投票ができない旨の画面データを、負荷分散装置２０を経由して情報処理装置１０に送信する（ステップ１０６）。
【００４２】
ステップ１０２で投票状態情報が「投票開始」になっているので、ステップ１０５で、制御部３４は、投票識別子の情報を含む投票画面データを、負荷分散装置２０を介して情報処理装置１０に送信する（ステップ１０７）。情報処理装置１０は、サーバ３０から投票画面データを受信すると、表示手段１２に投票画面を表示する（ステップ１０８）。
【００４３】
投票対象が複数ある場合、ステップ１０７で、制御部３４は、記憶部３２内のスケジュール情報を参照し、番組開始からの時間経過に合わせて、現在、投票を受け付けている投票対象の投票識別子の情報を投票画面データに含めるようにしている。
【００４４】
視聴者が表示手段１２を見て、表示された複数の投票要素から希望する投票要素を選択し、続けて「投票ボタン」を選択すると、情報処理装置１０の投票データ作成手段１４は、投票対象の投票識別子と選択された投票要素の情報を含む投票データを作成し、投票データを送受信手段１３を介してサーバ３０に送信する（ステップ１０９）。
【００４５】
ここで、情報処理装置１０は、投票データを送信する際、投票画面データの送信元を示していた装置識別子を宛先にする。これにより投票画面データの送信元のサーバ３０に投票データを返送することが可能となる。また、投票データには、上述したように、送信元の情報処理装置１０の装置識別子の情報が含まれていることから、投票データを受け取るサーバ３０は、投票データの送信元を認識することが可能となる。
【００４６】
サーバ３０の送受信手段３１は、情報処理装置１０から投票データを受信すると、投票データを自装置投票処理手段３５に渡すとともに、ＮＡＳ５０に送信する（ステップ１１０）。送受信手段３１は投票データの受信日時を投票データに付加してから転送してもよい。
【００４７】
自装置投票処理手段３５は、送受信手段３１から受け取った投票データを記憶部３２に格納するとともに（ステップ１１１）、自装置を除く他のサーバに対して投票データをネットワーク１５０を介してマルチキャストまたはブロードキャストで送信する（ステップ１１２）。他のサーバは自装置以外のサーバから投票データを受信すると、他装置投票処理手段３７が投票データを記憶部３２に格納する。なお、ステップ１１０から１１２の処理はこの順番に限られない。
【００４８】
一方、ＮＡＳ５０は、サーバ３０から投票データを受信すると、投票データを記憶部５１に格納する（ステップ１１３）。このようにして、情報処理装置１０から送出された投票データのそれぞれは、投票識別子の情報を伴って記憶部５１に蓄積される。記憶部５１内の記憶領域において、これらの投票データが蓄積される領域を全投票蓄積領域と称する。
【００４９】
ステップ１０９でサーバ３０が情報処理装置１０から投票データを受信し、自装置投票処理手段３５が投票データを記憶部３２に格納すると、集計手段３６は、記憶部３２に格納された投票データから、受信した投票データと投票識別子が同じ投票データを抽出する。そして、集計手段３６は、抽出した投票データに対して投票要素毎の投票数を算出し、抽出した投票データ数における投票要素毎の割合を求める。続いて、各投票要素の割合の情報を含む投票結果データを投票データの送信元である情報処理装置１０に返信する（ステップ１１４）。
【００５０】
このようにして集計した投票結果データは、情報処理装置１０から投票データを受信した時点における、投票途中の集計結果を示すものとなる。なお、投票要素毎の割合を求めているが、投票要素毎の投票数を算出し、それらの算出数の情報を投票結果データとしてもよい。
【００５１】
情報処理装置１０は、サーバ３０から投票結果データを受信すると、各投票要素の集計結果を含む投票結果画面を表示手段１２に表示する（ステップ１１５）。
【００５２】
その後、投票終了時刻になると、管理者による投票終了の指示入力、または、プログラムにしたがって、図７に示すように、管理装置４０の投票変更手段４３は、投票状態が投票締め切りになった旨を通知するための投票締切指示信号を各サーバ３０に送信する（ステップ１１６）。なお、ステップ１０１と同様に、投票締切指示信号に投票識別子の情報が含まれているものとする。
【００５３】
サーバ３０は、管理装置４０から投票締切指示信号を受信すると、投票締切指示信号に含まれる投票識別子に対応する投票状態情報を「投票開始」から「投票集計」に変更する（ステップ１１７）。
【００５４】
また、投票終了時刻になると、管理者による投票終了の指示入力、または、プログラムにしたがって、管理装置４０の結果集計手段４４は、ＮＡＳ５０の記憶部５１に格納された投票データから、集計対象となる投票識別子で特定される投票データを抽出して一時的に記憶部４１に格納する（ステップ１１８）。続いて、一時的に記憶部４１に格納した投票データを投票終了後投票データとして、ＮＡＳ５０の記憶部５１内で全投票蓄積領域とは異なる領域に保存する（ステップ１１９）。投票終了後投票データが保存される領域を投票結果領域と称する。
【００５５】
ここで、記憶部５１の全投票蓄積領域に投票データがデータベースアプリケーションのファイル形式で保存され、サーバ３０の記憶部３２に格納された投票データのデータ形式とは異なっている場合を考える。例えば、記憶部３２に投票データがテキスト形式で保存されているとすると、管理装置４０の結果集計手段４４は、ＮＡＳ５０の記憶部５１の全投票蓄積領域に保存された投票データから集計対象となる投票識別子で特定される投票データを抽出し、抽出した投票データをテキスト形式に変換し、変換後の投票データを記憶部５１の投票結果領域に保存する。
【００５６】
管理装置４０の結果集計手段４４は、投票終了後投票データをＮＡＳ５０の記憶部５１に保存すると、最終的な投票結果となる投票データをいつでも取りに来てよいことを通知するための投票終了指示信号を各サーバ３０に送信する（ステップ１２０）。
【００５７】
サーバ３０が管理装置４０から投票終了指示信号を受信すると、投票終了処理手段３８は、記憶部３２に格納された投票データのうち、集計対象の投票識別子の投票データを削除する（ステップ１２１）。続いて、ＮＡＳ５０の記憶部５１の投票結果領域に保存された投票終了後投票データを読み出し（ステップ１２２）、読み出した投票終了後投票データを記憶部３２に保存する（ステップ１２３）。
【００５８】
サーバ３０は、投票終了後投票データを記憶部３２に保存した後、投票状態情報を「投票集計」から「投票終了」に変更し、最終結果を送信可能になった旨を通知するための完了指示信号を管理装置４０に送信する（ステップ１２４）。
【００５９】
管理装置４０は、サーバ３０から完了指示信号を受信すると、投票結果の最終版を提供することが可能になったことを表示手段（不図示）に表示する。または、管理者の情報端末（不図示）と管理装置４０が通信接続され、管理装置４０は、投票結果の最終版を提供することが可能になった旨の情報をその情報端末に送信する。
【００６０】
管理者は、投票結果の最終版を提供することが可能になった旨の情報を管理装置４０から入手すると、テレビやラジオ等、視聴者の情報処理装置１０への通信以外の方法で、投票結果の最終版が入手できることを視聴者に通知する。
【００６１】
その後、視聴者がラジオまたはテレビを通じて投票が終了したことを知り、入力手段１１を操作して投票結果の最終版を要求する旨の指示を入力すると、情報処理装置１０は、投票結果要求信号を負荷分散装置２０を介してサーバ３０に送信する（ステップ１２５）。
【００６２】
サーバ３０の送受信手段３１が情報処理装置１０から投票結果要求信号を受信すると、集計手段３６は記憶部３２に保存した投票終了後投票データを用いて、ステップ１１４の処理と同様にして投票結果データを算出し（ステップ１２６）、投票結果データを情報処理装置１０へ送信する（ステップ１２７）。情報処理装置１０は、サーバ３０から投票結果データを受信すると、投票結果を表示手段１２に表示する（ステップ１２８）。
【００６３】
本実施形態によれば、短時間に大量の投票データを受信しても、複数のサーバで分担して、投票データの送信元に返信するための計算処理が実行されるため、視聴者は投票した際に投票の途中結果が通知される。短時間に大量の投票データを受け付けても、リアルタイムに現在の集計結果を投票データの送信元に返すことができる。
【００６４】
また、１台のサーバが投票データをマルチキャストで他のサーバに送信すると、ネットワーク１５０の問題等で他のサーバが投票データを受信できない場合がある。この場合、サーバの記憶部に蓄積された投票データの投票結果は各サーバで異なってしまうことになる。そのため、投票終了後には、ＮＡＳに蓄積された投票データをサーバの記憶部に蓄積された投票データに上書きすることで、正確な集計結果を視聴者に提供できる。
【００６５】
なお、本実施形態では、投票画面データおよびスケジュール情報を各サーバ３０の記憶部３２に予め登録する場合で説明したが、これらの情報をＮＡＳ５０に予め登録し、各サーバ３０が必要なときにＮＡＳ５０からそれらの情報を読み出すようにしてもよい。
【００６６】
また、ステップ１２６の処理は、投票結果要求信号を受信した後ではなく、ステップ１２３の後に予め算出しておいても構わない。
【００６７】
また、管理装置４０から投票開始指示信号や投票締切指示信号を受信して投票状態情報を変更するように説明したが、スケジュール情報を用いて、予め決められた時刻になると投票状態情報を変更してもよい。
【００６８】
また、図６のステップ１０３からステップ１１４に示した、投票システムが投票データを情報処理装置１０から受信してから投票途中結果を情報処理装置１０に通知するまでの処理においては、ＮＡＳ５０および管理装置４０がなくてもよい。さらに、ＮＡＳ５０に蓄積される投票データのデータ形式がサーバ３０に蓄積される投票データと同じであれば、管理装置４０がデータ形式の変換を行う必要がなく、サーバ３０がＮＡＳ５０の全投票蓄積領域から所望の投票データを抽出すればよい。
【００６９】
さらに、図７のステップ１２６の処理をサーバ３０が情報処理装置１０からの要求とは無関係に実施し、その結果を管理者に通知することで、投票の最終結果がラジオまたはテレビを通して視聴者に通知される場合には、サーバ３０は、情報処理装置１０からの最終結果の要求に返答しなくてよい。
【００７０】
（第２の実施形態）
本実施形態は、ラジオやテレビの視聴者に投票途中結果を送信する際、投票途中結果に含まれる誤差の情報も通知するものである。以下では、第１の実施形態と同様な構成についての詳細な説明を省略し、第１の実施形態に新たに追加された部分について説明する。
【００７１】
本実施形態の管理装置の制御部には、図５に示した投票状態変更手段４３および結果集計手段４４の他に、誤差集計手段が含まれている。誤差集計手段は、一定時間毎に各サーバ３０の記憶部３２に蓄積された投票データ数とＮＡＳ５０の記憶部５１に蓄積された投票データ数とを比較し、その差のうち最も大きい値を求める。そして、求めた値の全体に対する割合を算出し、それを誤差情報として各サーバ３０に送信する。
【００７２】
なお、投票対象が複数ある場合には、投票データに含まれる投票識別子を読み出し、同じ投票識別子の投票データについて上記誤差情報を求める。
【００７３】
本実施形態の投票システムの動作を、図６を参照して説明する。ここでは、投票対象が１つである場合とする。また、サーバ３０として、サーバＡとサーバＢの２台があるものとする。
【００７４】
ステップ１０２の後、投票受付を開始すると、管理装置の誤差集計手段は、一定時間毎にサーバＡ、Ｂのそれぞれの記憶部３２に蓄積された投票データ数とＮＡＳ５０に蓄積された投票データ数とを比較し、その差のうち最も大きい値を求める。例えば、サーバＡの投票データ数が１５２で、サーバＢの投票データ数が１５０で、ＮＡＳ５０の投票データ数が１５４とする。この場合、差の最も大きい値は、１５４−１５０＝４である。そして、誤差集計手段は、（４／１５４）×１００＝２．６％を誤差情報として算出する。
【００７５】
管理装置は、算出した誤差情報をサーバＡ、Ｂに送信する。サーバＡ、Ｂは、管理装置から誤差情報を受信すると、記憶部３２に格納する。そして、サーバＡ、Ｂは、図６のステップ１１４の処理の際、誤差情報を投票結果データに添付して情報処理装置１０に送信する。ステップ１１５で、情報処理装置１０は誤差情報を含む投票結果画面を表示する。
【００７６】
なお、誤差情報は、上述の場合に限らず、上記差の最大値ではなく平均値を用いた割合であってもよく、また、投票結果データが各投票要素の数を示す情報であれば、割合でなく上記差の最大値や平均値であってもよい。
【００７７】
本実施形態によれば、第１の実施形態の効果の他に、視聴者は、投票の途中結果にどのくらいの誤差が含まれているかを知ることができる。
【００７８】
上記第１および第２の実施形態をラジオまたはテレビの視聴者が、放送されるクイズ番組で出された問題に対して回答を投票する投票システムとして説明したが、これに限らない。放送番組等の限られた時間内に投票が集中するシステムに適用することが好ましいが、放送やクイズ番組以外の投票システムにも適用することが可能である。
【図面の簡単な説明】
【００７９】
【図１】第１の実施形態の投票システムの一構成例を示すブロック図である。
【図２】図１に示した情報処理装置の一構成例を示すブロック図である。
【図３】第１の実施形態におけるサーバの一構成例を示すブロック図である。
【図４】図１に示したＮＡＳの一構成例を示すブロック図である。
【図５】図１に示した管理装置の一構成例を示すブロック図である。
【図６】第１の実施形態の投票システムの動作手順を示すフローチャートである。
【図７】第１の実施形態の投票システムの動作手順を示すフローチャートである。
【符号の説明】
【００８０】
１０    情報処理装置
２０    負荷分散装置
３０    サーバ
４０    管理装置
５０    ＮＡＳ
【図１】
2010003050.tif 000003
【図２】
2010003050.tif 000004
【図３】
2010003050.tif 000005
【図４】
2010003050.tif 000006
【図５】
2010003050.tif 000007
【図６】
2010003050.tif 000008
【図７】
2010003050.tif 000009