JP6023599B2 - 情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラム。 - Google Patents

情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラム。 Download PDF

Info

Publication number
JP6023599B2
JP6023599B2 JP2013017826A JP2013017826A JP6023599B2 JP 6023599 B2 JP6023599 B2 JP 6023599B2 JP 2013017826 A JP2013017826 A JP 2013017826A JP 2013017826 A JP2013017826 A JP 2013017826A JP 6023599 B2 JP6023599 B2 JP 6023599B2
Authority
JP
Japan
Prior art keywords
information
golf
participants
participant
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013017826A
Other languages
English (en)
Other versions
JP2014149664A (ja
Inventor
卓也 橋本
卓也 橋本
友里 大門
友里 大門
勇二 恒松
勇二 恒松
恭行 夏目
恭行 夏目
諭 鈴木
諭 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Priority to JP2013017826A priority Critical patent/JP6023599B2/ja
Publication of JP2014149664A publication Critical patent/JP2014149664A/ja
Application granted granted Critical
Publication of JP6023599B2 publication Critical patent/JP6023599B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラムに関する。
従来、ゴルフコンペを開催する場合には、ゴルフコンペの幹事が参加者を集め、ゴルフ場に予約を入れ、更に、参加者を複数の組に割り振っていた。
特許文献1には、このような組割りに係る幹事の労力を削減するため、ハンディキャップに基づいて、参加者を複数の組に割り振るゴルフコンペ支援システムが開示されている。
特開2005−84797号公報
通常、ゴルフコンペでは、組ごとにラウンドする。そのため、参加者が遅刻した場合には、当該参加者と同じ組の他の参加者もラウンドの開始が遅れることになる。さらに、参加者が遅刻すると、当該参加者よりも後にラウンドを開始する組の進行にも影響を及ぼし、ゴルフコンペ全体の進行が遅延するという事態が生じることが多かった。
ゴルフコンペにおいて、遅刻は、参加者の自宅がゴルフ場から遠い等、地理的条件に起因すること多い。そのため、幹事は、参加者の自宅の住所や、ゴルフ場までの距離等の地理的条件を考慮し、ゴルフ場から遠い参加者をできるだけ遅い組に割り振る等、できるだけ遅刻者が出ないように組み割りをすることが望まれている。
しかし、地理的条件を考慮した組み割りを行うことは容易な作業ではなく、幹事にとって大きな負担となっていた。
本発明は、この点に鑑みてなされたものであり、ゴルフなどのアクティビティへの参加者の地理的条件を考慮して、アクティビティを行うための組み割りを適切に定めるサービスを提供すること等を解決課題とする。
以上の課題を解決するために本発明が採用する手段を以下に説明する。なお、本発明の理解を容易にするために以下では図面の参照符号を便宜的に括弧書で付記するが、本発明を図示の形態に限定する趣旨ではない。
上述した課題を解決するため、本発明に係る情報提供装置のプログラムは、コンピュータを、所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得可能な位置情報取得部(11)と、前記参加者の人数を表す人数情報を取得可能な人数情報取得部(12)と、前記参加者の基準地点の位置情報及び前記施設の位置情報に基づいて、前記参加者の基準地点と前記施設との間の移動に係る負荷の大きさの程度を表す移動負荷指標値を演算可能な演算部(41)と、前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定可能な特定部(13)と、前記参加者を、前記複数の組に割り振る割振処理を実行可能な割振部(14)と、して機能させ、前記参加者が前記所定のアクティビティを開始する開始時刻は、前記複数の組のそれぞれで異なり、前記割振部は、前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、ことを特徴とする。
この発明において、所定のアクティビティとは、複数人が同時に実施する行為、例えば、ゴルフ、テニス、サッカー、バスケットボール等のスポーツ、英語もしくは各種資格についての試験の受験、映画もしくはコンサート等の鑑賞等である。所定のアクティビティが行われる施設とは、例えば、所定のアクティビティが「ゴルフ」である場合、ゴルフ場等が該当する。参加者の基準地点とは、当該参加者の自宅、当該参加者の自宅からの最寄駅、または、当該参加者の職場等、当該参加者の行動の拠点または生活の拠点となる場所であればどのようなものであってもよい。位置情報とは、経度及び緯度を表す情報、住所、郵便番号等、位置を一意に特定することが可能な情報であればどのような情報であってもよい。位置情報取得部は、位置情報が記憶されている記憶部から、位置情報を取得可能なものであればよい。この場合、記憶部は、情報提供装置に備えられるものであってもよいし、情報提供装置とは異なる装置に備えられるものであってもよい。移動とは、自動車による移動であってもよいし、鉄道、航空機等の公共交通機関による移動であってもよいし、徒歩であってもよい。移動に係る負荷の大きさの程度とは、例えば、移動に係る所要時間の長さの程度であってもよいし、移動に係る交通費の高さの程度であってもよい。
また、本発明に係る情報提供装置のプログラムは、コンピュータを、所定のアクティビティへの参加者の基準地点と、前記所定のアクティビティが行われる施設と、の間の移動に係る負荷の大きさの程度を表す移動負荷指標値を取得可能な指標取得部(15)と、前記参加者の人数を表す人数情報を取得可能な人数情報取得部(12)と、前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定可能な特定部(13)と、前記参加者を、前記複数の組に割り振る割振処理を実行可能な割振部(14)と、して機能させ、前記参加者が前記所定のアクティビティを開始する開始時刻は、前記複数の組のそれぞれで異なり、前記割振部は、前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、ことを特徴とする。
また、上述した情報提供装置のプログラムは、前記コンピュータを、前記所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得可能な位置情報取得部(11)として更に機能させ、前記指標取得部は、前記移動負荷指標値を演算可能な第1外部装置に対して、前記参加者の基準地点の位置情報と前記施設の位置情報とを送信するとともに、送信された2つの位置情報に基づいて前記第1外部装置が演算した前記移動負荷指標値を取得可能である、ことを特徴とすることが好ましい。
この態様において、前記特定部は、前記組に割り振ることのできる参加者の人数の上限値と前記人数情報とに基づいて、前記組の個数を特定可能である、ことを特徴とするものであってもよい。
また、上述した情報提供装置のプログラムは、前記コンピュータを、前記所定のアクティビティへの参加者の人数を表す情報を含むイベント情報を取得可能なイベント情報取得部として更に機能させ、前記人数情報取得部は、前記参加者の人数を表す情報を前記人数情報として取得可能である、ことを特徴とするものであってもよい。
また、上述した情報提供装置のプログラムは、前記コンピュータを、前記所定のアクティビティへの参加者の人数を表す情報と、当該所定のアクティビティを行う組の個数を表す情報と、を含む、前記施設の予約情報を取得可能な予約情報取得部と、して更に機能させ、前記人数情報取得部は、前記参加者の人数を表す情報を前記人数情報として取得可能であり、前記特定部は、前記組の個数を表す情報に基づいて、前記組の個数を特定可能である、ことを特徴とするものであってもよい。
また、上述した情報提供装置のプログラムにおいて、前記割振部は、前記複数の組の各々に属する参加者の人数の最大値と最小値との差分値を最小化するように、前記割振処理を実行する、ことを特徴とすることが好ましい。
また、本発明に係る情報提供装置の制御方法は、所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得し、前記参加者の人数を表す人数情報を取得し、前記参加者の基準地点の位置情報及び前記施設の位置情報に基づいて、前記参加者の基準地点と前記施設との間の移動に係る負荷の大きさの程度を表す移動負荷指標値を演算し、前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定し、前記参加者を、前記複数の組に割り振る割振処理を実行し、前記参加者が前記所定のアクティビティを開始する開始時刻は、前記複数の組のそれぞれで異なり、前記割振処理において、前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振る、ことを特徴とする。
また、本発明に係る情報提供装置の制御方法は、所定のアクティビティへの参加者の基準地点と、前記所定のアクティビティが行われる施設と、の間の移動に係る負荷の大きさの程度を表す移動負荷指標値を取得し、前記参加者の人数を表す人数情報を取得し、前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定し、前記参加者を、前記複数の組に割り振る割振処理を実行し、前記参加者が前記所定のアクティビティを開始する開始時刻は、前記複数の組のそれぞれで異なり、前記割振処理において、前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振る、ことを特徴とする。
また、上述した情報提供装置の制御方法は、前記所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得し、前記移動負荷指標値を取得する工程において、前記移動負荷指標値を演算可能な第1外部装置に対して、前記参加者の基準地点の位置情報と前記施設の位置情報とを送信するとともに、送信された2つの位置情報に基づいて前記第1外部装置が演算した前記移動負荷指標値を取得する、ことを特徴とすることが好ましい。
また、上述した情報提供装置の制御方法は、前記割振処理において、前記複数の組の各々に属する参加者の人数の最大値と最小値との差分値を最小化するように、前記割振処理を実行する、ことを特徴とすることが好ましい。
また、本発明に係る情報提供装置は、所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得可能な位置情報取得部(11)と、前記参加者の人数を表す人数情報を取得可能な人数情報取得部(12)と、前記参加者の基準地点の位置情報及び前記施設の位置情報に基づいて、前記参加者の基準地点と前記施設との間の移動に係る負荷の大きさの程度を表す移動負荷指標値を演算可能な演算部(41)と、前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定可能な特定部(13)と、前記参加者を、前記複数の組に割り振る割振処理を実行可能な割振部(14)と、を備え、前記参加者が前記所定のアクティビティを開始する開始時刻は、前記複数の組のそれぞれで異なり、前記割振部は、前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、ことを特徴とする。
また、本発明に係る情報提供装置は、所定のアクティビティへの参加者の基準地点と、前記所定のアクティビティが行われる施設と、の間の移動に係る負荷の大きさの程度を表す移動負荷指標値を取得可能な指標取得部(15)と、前記参加者の人数を表す人数情報を取得可能な人数情報取得部(12)と、前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定可能な特定部(13)と、前記参加者を、前記複数の組に割り振る割振処理を実行可能な割振部(14)と、を備え、前記参加者が前記所定のアクティビティを開始する開始時刻は、前記複数の組のそれぞれで異なり、前記割振部は、前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、ことを特徴とする。
また、上述した情報提供装置は、前記所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得可能な位置情報取得部(11)と、を備え、前記指標取得部は、前記移動負荷指標値を演算可能な第1外部装置に対して、前記参加者の基準地点の位置情報と前記施設の位置情報とを送信するとともに、送信された2つの位置情報に基づいて前記第1外部装置が演算した前記移動負荷指標値を取得可能である、ことを特徴とすることが好ましい。
また、上述した情報提供装置において、前記割振部は、前記複数の組の各々に属する参加者の人数の最大値と最小値との差分値を最小化するように、前記割振処理を実行する、ことを特徴とすることが好ましい。
また、本発明に係る情報提供システムは、所定のアクティビティへの参加者のうち所定の参加者の端末装置(6)と、前記端末装置と通信可能な情報提供装置(1)と、を備える情報提供システム(100)であって、前記情報提供システムは、前記端末装置からの要求に応じて、前記所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得する位置情報取得部(11)と、前記参加者の人数を表す人数情報を取得する人数情報取得部(12)と、前記参加者の基準地点の位置情報及び前記施設の位置情報に基づいて、前記参加者の基準地点と前記施設との間の移動に係る負荷の大きさの程度を表す移動負荷指標値を演算する演算部(41)と、前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定する特定部(13)と、前記参加者を、前記複数の組に割り振る割振処理を実行する割振部(14)と、前記割振部による割振処理の結果を前記端末装置に通知する通知部(18)と、を備え、前記端末装置は、前記所定の参加者の要求を入力可能な入力部(64)と、前記通知部により通知される前記割振処理の結果を表示可能な表示部(65)と、を備え、前記参加者が前記所定のアクティビティを開始する開始時刻は、
前記複数の組のそれぞれで異なり、前記割振部は、前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、ことを特徴とする。
本発明の実施形態に係る情報提供システムの構成を表すブロック図である。 SNS利用者とゴルフ利用者の関係を示す説明図である。 情報提供サーバが提供するサービスの概要を説明する説明図である。 情報提供サーバの構成を示すブロック図である。 端末装置の構成を示すブロック図である。 地図情報サーバの構成を示すブロック図である。 ログイン処理に関する情報提供システムの動作シーケンスを示すシーケンス図である。 ログイン処理に関する情報提供システムの動作シーケンスを示すシーケンス図である。 SNS利用者情報テーブルのデータ構造の一例を示す説明図である。 SNS友達情報テーブルのデータ構造の一例を示す説明図である。 本人と友達関係にあるSNS友達を特定する処理を示す説明図である。 SNS友達のSNS友達を特定する処理を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 ゴルフ利用者情報テーブルのデータ構造の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 ゴルフ場情報テーブルのデータ構造の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 ゴルフイベントしおり作成処理に関する情報提供システムの動作シーケンスを示すシーケンス図である。 ゴルフイベントしおり作成処理に関する情報提供システムの動作シーケンスを示すシーケンス図である。 イベント管理テーブルのデータ構造の一例を示す説明図である。 参加者管理テーブルのデータ構造の一例を示す説明図である。 位置情報管理テーブルのデータ構造の一例を示す説明図である。 割振情報を説明するための説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 予約情報テーブルのデータ構造の一例を示す説明図である。 予約情報テーブルのデータ構造の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 端末装置の表示画面の一例を示す説明図である。 本発明の変形例3に係る情報提供システムの構成を表すブロック図である。 本発明の変形例4に係る情報提供システムの構成を表すブロック図である。 ゴルフ友達情報テーブルのデータ構造の一例を示す説明図である。 ゴルフ友達のゴルフ友達を特定する処理を示す説明図である。 本発明の変形例5に係る情報提供システムの構成を表すブロック図である。 本発明の変形例6に係る情報提供システムの構成を表すブロック図である。
以下、実施形態として、本発明に係る情報提供サーバを用いた情報提供システムについて、図面を参照しつつ説明する。
<A.実施形態>
<1.情報提供システムの概要>
図1は、本発明の実施形態に係る情報提供システム100のブロック図である。
情報提供システム100は、インターネット等の通信網NET、情報提供サーバ1(「情報提供装置」の一例)、利用者の端末装置6、地図情報サーバ4(「第1外部装置」の一例)、SNSサイトを提供する外部管理サーバ3(「第2外部装置」の一例)、及び、ゴルフ場の運営主体により管理されゴルフ場の予約を受け付けるゴルフ場サーバ5を備える。
情報提供サーバ1は、ゴルフ(「所定のアクティビティ」の一例)に関する情報サービスやコミュニティサービス等のゴルフ情報アプリケーションサービスを、ゴルフ利用者U1に対して提供する。
また、情報提供サーバ1は、ゴルフ場サーバ5と連携して、ゴルフ場(「(所定のアクティビティが行われる)施設」の一例)の予約に関するゴルフ場予約アプリケーションサービスを、ゴルフ利用者U1に対して提供する。
なお、本実施形態では、所定のアクティビティの一例としてゴルフを取り上げて説明するが、所定のアクティビティはゴルフに限られるものではなく、複数人が同時に実施する行為、例えば、テニス、サッカー、バスケットボール等のスポーツ、英語もしくは各種資格についての試験の受験、映画やコンサート等の鑑賞等であってもよい。
すなわち、情報提供サーバ1が提供するサービスとして、本実施形態では、ゴルフ情報アプリケーションサービス及びゴルフ場予約アプリケーションサービスを例示して説明するが、情報提供サーバ1は、これら以外のアプリケーションサービスを提供するものであってもよい。例えば、情報提供サーバ1は、旅行情報の提供及びホテル等の旅行において使用する施設の予約に係るアプリケーションサービス、ゴルフ以外のスポーツに係る情報の提供及び当該スポーツを行うための施設の予約に係るアプリケーションサービス、または、コンサート情報の提供及びコンサートの予約に係るアプリケーションサービス、等を提供するものであってもよい。
外部管理サーバ3は、SNS(social networking service)に係るウェブサイト(以下、「SNSサイト」と称する場合がある)を、SNS利用者U2に対して提供する。SNSサイトでは、SNS利用者U2に対して、SNS利用者U2同士がコミュニケーションを行うためのツール(例えば、掲示板、メール、チャット等)が提供される。また、SNSサイトにおいて、アクション元のSNS利用者U2が友達申請を行い、これをアクション先のSNS利用者U2が承認することによって、SNS利用者U2同士の特定の関係であるSNS友達関係が構築される。外部管理サーバ3は、SNS利用者U2同士の特定の関係であるSNS友達関係を示す友達情報を管理する。
外部管理サーバ3が提供するSNSにおいては、掲示板、メール、チャット等を利用することができるだけでなく、ゲームや実用的なツール等のソーシャルアプリケーションを利用することができる。このソーシャルアプリケーションは、前記SNSの提供者以外の提供者によっても提供されることがあり、ソーシャルアプリケーションを利用するか否か、あるいは、どのソーシャルアプリケーションを利用するかは、SNS利用者U2が任意に決定できるようになっている。SNS利用者U2がソーシャルアプリケーションの利用を希望する場合には、当該ソーシャルアプリケーションが当該SNS利用者U2の個人情報やSNS上の友達情報にアクセスする機能や、当該ソーシャルアプリケーションが当該SNS利用者U2の代わりに掲示板等に投稿する機能等についての許可を求める場合がある。ソーシャルアプリケーションによっては、SNS利用者U2がこれらの機能について許可したことを以って、当該SNS利用者U2が当該ソーシャルアプリケーションの利用者になる場合がある。このようなソーシャルアプリケーションは、一般に、SNSサイト内に当該ソーシャルアプリケーションの画面が表示されるため、SNS利用者U2にとっては、あたかもSNSが提供するサービスの一つを利用しているような感覚で、ソーシャルアプリケーションを利用することになる。
本実施形態の情報提供サーバ1によって提供されるゴルフ情報アプリケーションサービスは、一例として、上述のようなソーシャルアプリケーションにより提供されるサービスである。本実施形態においては、SNS利用者U2がゴルフ情報アプリケーションの利用者であるゴルフ利用者U1になるためには、ゴルフ情報アプリケーションが当該SNS利用者U2の個人情報やSNS上の友達情報にアクセスする機能や、ゴルフ情報サービスが当該SNS利用者U2の代わりに掲示板等に投稿する機能等についての承認を行うようになっている。SNS利用者U2がこの承認を行うことにより、当該SNS利用者U2はゴルフ利用者U1となる。
つまり、ゴルフ利用者U1は、図2に示すようにSNS利用者U2に含まれる。換言すれば、外部管理サーバ3が提供するSNSの利用者であるSNS利用者U2に限って、情報提供サーバ1からゴルフ情報アプリケーションサービス及びゴルフ場予約アプリケーションサービスの提供を受けることができる。すなわち、情報提供サーバ1は、SNS利用者U2に限って、ゴルフ利用者U1として登録する。
ゴルフ利用者U1はSNS利用者U2に含まれるため、実施形態の情報提供サーバ1は、ゴルフ利用者U1同士の特定の関係であるゴルフ友達関係を、SNS友達関係を示す友達情報を用いて管理する。即ち、図2に示すように、情報提供サーバ1は、ゴルフ利用者U1のうち所定のゴルフ利用者U1aとSNS友達関係を有する「所定のゴルフ利用者U1aのSNS友達Uf」であり、且つ、ゴルフ利用者U1に該当するものを、「所定のゴルフ利用者U1aのゴルフ友達Ug」として管理する。また、情報提供サーバ1は、所定のゴルフ利用者U1aとSNS友達関係を有するSNS友達Ufと更にSNS友達関係を有する「所定のゴルフ利用者U1aのSNS友達のSNS友達Uff」に該当し、且つ、ゴルフ利用者U1に該当するものを「所定のゴルフ利用者U1aのゴルフ友達のゴルフ友達Ugg」として管理する。
なお、以下では、ゴルフ利用者U1のうちのある1人のゴルフ利用者U1を表す場合に、「U1a」のように、「U1」に「a」等の添え字を付して表現する場合がある。
また、以下では、図2に示すように、所定のゴルフ利用者U1aのゴルフ友達Ug、及び、所定のゴルフ利用者U1aのゴルフ友達のゴルフ友達Uggを、所定のゴルフ利用者U1aの関係ゴルフ利用者Ucn(「関係利用者」の一例)と称する。
情報提供サーバ1が提供するゴルフ情報アプリケーションサービスには、ゴルフイベントのしおりを作成するサービス(以下、「ゴルフイベントしおり作成サービス」と称する)が含まれる。
ゴルフコンペのように複数人が1のゴルフ場に集まりゴルフを行うゴルフイベントを開催する場合において、当該ゴルフイベントの幹事は、ゴルフイベントが行われるゴルフ場、ゴルフイベントの賞品、ゴルフイベントへの参加者を複数の組に割り振るときの組み割りを示す情報、ゴルフイベントの開催予定日時、及び、ゴルフイベントに参加するための料金等を記載した、ゴルフイベントのしおりを作成し、これを、当該ゴルフイベントの参加者に対して配布することがある。
ゴルフイベントしおり作成サービスとは、このようなゴルフイベントのしおりを作成し、作成したしおりをゴルフイベントの参加者に対して配布するサービスである。
ゴルフイベントへの参加者の人数が、1つの組に割り当て可能な所定数よりも多い場合(例えば、参加者が5人以上の場合)には、参加者を複数の組に割り振り、複数の組のそれぞれが互いに異なる時刻にゴルフを開始することが通常である。各組ごとに、ゴルフの開始時刻を異なる時刻とすることにより、1つのホールに多くの人(例えば5人以上の人)が集中することを避け、ゴルフイベントの円滑な実施を実現することができるからである。この場合、ゴルフイベントの幹事は、参加者をどのように組み割りするかについて検討する必要がある。
参加者を複数の組に割り振る際に検討すべき項目の1つとして、参加者の自宅等(「基準地点」の一例)からゴルフ場までの移動距離または当該移動にかかる所要時間(「移動負荷指標値」の一例)がある。
ゴルフイベントは朝方に開始されることが多いため、自宅等がゴルフ場から遠い参加者(ゴルフ場までの移動に係る所要時間が長い参加者)のゴルフの開始時刻を、ゴルフ場から近い参加者に比べて遅くすることにより、他の参加者に比べて極端な早起きを強いられる参加者が生じることをなるべく防止し、ゴルフイベントに参加することに伴う参加者の肉体的な負担が過大になることをなるべく防止することが好ましい。すなわち、参加者を複数の組に割り振る際に、ゴルフ場までの所要時間を考慮することで、特定の参加者に極端な早起きを強いることをなるべく防止し、参加者がゴルフイベントに参加することに伴う肉体的な負担が過大になることをなるべく防ぐことが望まれる。
また、ゴルフイベントへの参加者のうち、ある参加者が、予定されているゴルフの開始時刻に遅刻する場合、他の参加者も当該ある参加者の到着を待ってゴルフを開始することになるため、ゴルフイベントの円滑な実施が妨げられる。よって、ゴルフイベントの円滑な実施のためには、参加者が、ゴルフの開始時刻に遅刻することが無いようにすることが好ましい。遅刻は、一般的に、自宅等がゴルフ場から遠い参加者において生じやすい。特に、ゴルフ場から遠い参加者のゴルフの開始時刻が早い時刻である場合、遅い時刻である場合と比較して、当該参加者が遅刻する可能性が高くなる。このため、参加者を複数の組に割り振る際に、ゴルフ場までの所要時間を考慮し、自宅等がゴルフ場から遠い参加者の開始時刻を、ゴルフ場から近い参加者に比べて遅くすることで、遅刻が発生する可能性を小さく抑えることが望まれる。
なお、参加者の自宅等とは、参加者の自宅、参加者の自宅からの最寄駅、参加者の職場等のような、参加者の行動若しくは生活の起点となる場所である。
情報提供サーバ1は、ゴルフイベントのしおりを作成する際に、参加者の自宅等からゴルフイベントが開催されるゴルフ場までの移動にかかる所要時間に基づいて、参加者を複数の組に割り振る処理(以下では「割振処理」と称する場合がある)を実行する。具体的には、情報提供サーバ1は、この割振処理において、ゴルフイベントへの参加者を、ゴルフイベントが開催されるゴルフ場までの所要時間が短い順番に、ゴルフの開始時刻が早い組から遅い組へと割り振る。
この割振処理の概要を、図3に示す地図に表されるゴルフ場Xにおいて開催されるゴルフイベントに、Aさん〜Jさんの10名が参加する場合を例示して説明する。この図では、「Aさんのゴルフ場Xまでの所要時間」<「Bさんのゴルフ場Xまでの所要時間」<…<「Jさんのゴルフ場Xまでの所要時間」である場合を想定している。
この図に示す場合、情報提供サーバ1は、割振処理を実行することにより、Aさん〜Jさんの10名の参加者のうち、自宅等からゴルフ場Xまでの所要時間が短いAさん〜Dさんを、ゴルフの開始時刻が最も早い第1組に割り振り、所要時間がDさんよりも長いEさん〜Gさんを、第1組の後にゴルフを開始する第2組に割り振り、所要時間がGさんよりも長いHさん〜Jさんを、ゴルフの開始時刻が最も遅い第3組へと割り振る。
これにより、自宅等からゴルフ場Xまでの所要時間が他の参加者に比べて長いHさん〜Jさんのゴルフの開始時刻を他の参加者よりも遅くすることができ、Hさん〜Jさんに過度な早起きを強いることをなるべく防止するとともに、Hさん〜Jさんが遅刻する可能性を低減させることができる。
このように、情報提供サーバ1は、ゴルフイベントしおり作成サービスにおいて、割振処理を実行することで、参加者の組み割りを自動で実行するため、当該ゴルフイベントの幹事は、ゴルフイベントへの参加者の自宅等及びゴルフイベントを開催するゴルフ場の地理的条件を考慮して組み割りする作業から解放され、ゴルフイベントを開催する幹事の負担を軽減することが可能となる。
説明を図1に戻す。図1に示すように、外部管理サーバ3は、SNS利用者U2を一意に識別する識別情報UIDとSNS利用者U2が外部管理サーバ3に登録した個人情報とを記憶しているSNS利用者情報テーブルTBL31、及び、SNS利用者U2同士の特定の関係であるSNS友達関係を示す友達情報を記憶しているSNS友達情報テーブルTBL32、を備える。また、外部管理サーバ3は各種のAPI(Application Program Interface)を実行可能であり、情報提供サーバ1からのパラメータを含む要求を受信すると、SNS利用者情報テーブルTBL31又はSNS友達情報テーブルTBL32から所定の情報を抽出して情報提供サーバ1に返信する。
利用者の端末装置6は、テンキーやマウス等を含む入力部64、及び、画面を表示するディスプレイ65を含む。端末装置6は、通信網NETを介した通信が可能であり、例えば、パーソナルコンピュータ、携帯電話機、スマートフォン、タブレット端末等が該当する。情報提供サーバ1が提供するゴルフ情報アプリケーションサービス及びゴルフ場予約アプリケーションサービスは、端末装置6を介してゴルフ利用者U1に提供され、外部管理サーバ3が提供するSNSは、端末装置6を介してSNS利用者U2に提供される。
地図情報サーバ4は、2つの地点の位置をそれぞれ表す2つの位置情報に基づいて、当該2つの地点の間の経路及び当該経路を移動するのに要する所要時間を、例えば、ダイクストラ法(Dijkstra's Algorithm)、Aスター法等の、公知の演算方法を用いて演算可能な演算部41を備える。
ここで、ある地点の位置情報とは、当該ある地点の住所を表す住所情報、並びに、当該ある地点の住所の経度及び緯度を表す経緯度情報の総称である。但し、位置情報は、経緯度情報のみであってもよいし、住所情報のみであってもよい。また、住所情報とは、住所を表すための情報であり、都道府県、市区町村、町名番地、及び、郵便番号等の総称である。但し、住所情報は、郵便番号のみであってもよい。
また、地図情報サーバ4は、全国の住所情報と経緯度情報とを関連付けて記憶している位置情報管理テーブルTBL41を格納した地図情報記憶部42を備えている。
情報提供サーバ1は、情報提供サーバ1を制御する制御プログラムと各種テーブルとが格納された記憶部19を備える。
制御プログラムは、ゴルフ情報アプリケーションのプログラムと、ゴルフ場予約アプリケーションのプログラムと、を含む。
記憶部19が格納する各種テーブルには、ゴルフ利用者U1を一意に識別する識別情報UID及びゴルフ利用者U1の自宅等の住所情報等、ゴルフ利用者U1についての情報を記憶しているゴルフ利用者情報テーブルTBL11と、ゴルフ場を一意に識別するゴルフ場ID及びゴルフ場の名称等、ゴルフ場についての情報を記憶しているゴルフ場情報テーブルTBL12と、ゴルフ利用者U1が企画したゴルフイベントを一意に識別するイベントID及びゴルフイベントのタイトル等、ゴルフイベントについての情報であるイベント情報を記憶しているイベント管理テーブルTBL13と、ゴルフイベントへの参加者についての情報を記憶している参加者管理テーブルTBL14と、ゴルフ利用者U1がゴルフ場を予約した場合に、当該予約内容を表す予約情報を記憶している予約情報テーブルTBL15と、が含まれる。
なお、記憶部19は、これらのテーブル以外に、ゴルフ情報アプリケーションサービスまたはゴルフ場予約アプリケーションサービスにおいて、ゴルフ利用者U1の端末装置6のディスプレイ65に表示される各種画面を生成するために必要となる設定値及び画像等が記録されたテーブルを格納している。
情報提供サーバ1は、ゴルフイベントへの参加者の自宅等の経緯度情報を、記憶部19または地図情報サーバ4から取得可能な位置情報取得部11と、ゴルフイベントへの参加者の人数を表す人数情報を取得可能な人数情報取得部12と、ゴルフイベントへの参加者を複数の組みに割り振る場合に、組の個数を特定可能な特定部13と、ゴルフイベントへの参加者を、特定部13が特定した個数の組に割り振る割振処理を実行する割振部14と、ゴルフイベントへの参加者の自宅等からゴルフイベントが開催されるゴルフ場との間を移動するための所要時間を、地図情報サーバ4から取得可能な所要時間取得部15(「指標取得部」の一例)と、を備える。
また、情報提供サーバ1は、割振処理の結果を利用者の端末装置6に対して通知するための制御を実行する通知部18を備える。
<2.ハードウェア構成>
図4に情報提供サーバ1の構成を示す。この図に示すように、情報提供サーバ1は、装置全体を制御するCPU(Central Processing Unit)70、CPU70の作業領域として機能するRAM(Random Access Memory)71、ブートプログラム等を記憶したROM(Read Only Memory)72、各種のプログラムやデータを記憶するハードディスクドライブ73、通信網NETを介して外部の装置と通信を行う通信インターフェース74、及び、コンパクトディスク等の情報記録媒体を読み取る読取装置75を備える。ハードディスクドライブ73は、上述した記憶部19に相当し、情報提供サーバ1を制御する制御プログラムと、ゴルフ利用者情報テーブルTBL11、ゴルフ場情報テーブルTBL12、イベント管理テーブルTBL13、参加者管理テーブルTBL14、及び、予約情報テーブルTBL15等の各種テーブルと、を格納する。なお、情報提供サーバ1は、これら以外に、キーボードやマウス等を含む入力部、画像を表示するディスプレイを備えるものであってもよい。
上述した位置情報取得部11、人数情報取得部12、特定部13、割振部14、及び、所要時間取得部15は、CPU70が制御プログラムを実行し、CPU70が制御プログラムに従って機能することにより実現される機能ブロックである。すなわち、CPU70が制御プログラムに従って機能することで、ゴルフ情報アプリケーションサービス及びゴルフ場予約アプリケーションサービスが、情報提供サーバ1により提供されることになる。
図示省略するが、外部管理サーバ3は、情報提供サーバ1と同様に構成されている。但し、ハードディスクドライブには、SNS利用者情報テーブルTBL31と、SNS友達情報テーブルTBL32とが格納される。
図5に端末装置6の構成を示す。端末装置6は、装置全体を制御するCPU60、CPU60の作業領域として機能するRAM61、ブートプログラム等を記憶したROM62、各種のプログラムやデータを記憶する記憶装置63、マウス及びキーボード等の入力部64、画像を表示するディスプレイ65、及び通信網NETを介して外部の装置と通信を行う通信インターフェース66を備える。
図6に地図情報サーバ4の構成を示す。地図情報サーバ4は、装置全体を制御するCPU400、CPU400の作業領域として機能するRAM401、地図情報サーバ4を制御する地図情報サーバ制御プログラム、及び、ブートプログラム等を記憶したROM402、各種のプログラムやデータを記憶する記憶装置(ハードディスクドライブ)403、通信網NETを介して外部の装置と通信を行う通信インターフェース404、並びに、コンパクトディスク等の情報記録媒体を読み取る読取装置405を備える。
上述した演算部41は、CPU400が地図情報サーバ制御プログラムを実行し、CPU400がその地図情報サーバ制御プログラムに従って機能することにより実現される機能ブロックである。
また、記憶装置403には、位置情報管理テーブルTBL41が記憶されている。位置情報管理テーブルTBL41については後述する。
<3.情報提供システムの動作>
図7乃至図36を参照しつつ、情報提供サーバ1が提供するゴルフ情報アプリケーションサービス及びゴルフ場予約アプリケーションサービスの概要、及び、情報提供システム100の動作ついて説明する。
情報提供サーバ1は、ゴルフ利用者U1の各々に対して、各種ゴルフに関する情報が掲載されたマイページを提供する。
本実施形態において、マイページは、マイページのトップ画面G1、プロフィール設定変更画面G2、ゴルフイベント設定画面G3、メンバー情報入力画面G4、メンバー選択画面G5、メンバー確認画面G6、ゴルフ場選択画面G7及びG8、ゴルフイベント設定内容確認画面G9、ゴルフイベントしおり画面G10、サービスプラン選択画面G11、予約内容設定画面G12、及び、ゴルフ予約しおり画面G13を含む。
このうち、トップ画面G1〜ゴルフイベントしおり画面G10は、ゴルフ情報アプリケーションサービスに係る画面であり、ゴルフ場サービスプラン選択画面G11〜ゴルフ予約しおり画面G13は、ゴルフ場予約アプリケーションサービスに係る画面である。
以下、上記各画面の概要、及び、上記各画面を表示させる処理について説明する。
<3.1.ゴルフ情報アプリケーションサービスへのログイン>
図7及び図8に、ゴルフ利用者U1をゴルフ情報アプリケーションサービスにログインさせるログイン処理に関する情報提供システム100の動作シーケンスを示す。このログイン処理は、ゴルフ利用者U1がゴルフ情報アプリケーションサービスにログインする毎に実行される。
所定のゴルフ利用者U1a(SNS利用者U2でもある)が、所定のゴルフ利用者U1aの端末装置6において、入力部64を用いてウェブブラウザ上で操作し、または、端末装置6にインストールされて動作するアプリケーションを起動して、SNSサイトにアクセスすると、端末装置6のディスプレイ65には、ログイン画面が表示される。このログイン画面には、識別情報UIDとパスワードとを入力する入力ボックス、及び、送信ボタンが表示される。所定のゴルフ利用者U1aが、入力ボックスに入力して送信ボタンをクリックすると、端末装置6は、入力した識別情報UID及びパスワードを含むログイン要求を外部管理サーバ3に送信する。
ログイン要求を外部管理サーバ3が受信すると、外部管理サーバ3は認証処理を実行する(S300)。具体的には、外部管理サーバ3のCPUは、識別情報UIDとパスワードとの組みが記憶されているか否かを判定し、判定条件を充足する場合にはログインを許可し、判定条件が充足されない場合にはログインを拒絶する。そして、外部管理サーバ3のCPUは判定結果を示すログイン応答を端末装置6に送信させる。なお、図7に示す例では、ログインが許可されたものとする。一度、端末装置6で入力された識別情報UIDとパスワードとの組みは、端末装置6に所定期間記憶されて、当該所定期間内であればログインを省略可能としてもよい。
この後、所定のゴルフ利用者U1aがメニューの中からゴルフ情報アプリケーションサービスを選択すると(S600)、端末装置6は、マイページ閲覧要求を情報提供サーバ1に送信する。情報提供サーバ1はマイページ閲覧要求を受信すると、情報提供サーバ1のCPU70は、マイページ閲覧要求に含まれる所定のゴルフ利用者U1aの識別情報UIDを取得する(S100)。
その後、情報提供サーバ1のCPU70は、所定のゴルフ利用者U1aの識別情報UIDを外部管理サーバ3に送信する制御を行う(S101)。
外部管理サーバ3が、所定のゴルフ利用者U1aの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS友達情報テーブルTBL32にアクセスしてSNSの友達情報を取得するとともに、SNS利用者情報テーブルTBL31にアクセスして、所定のゴルフ利用者U1aがSNSに登録した個人情報を取得する(S301)。
図9にSNS利用者情報テーブルTBL31のデータ構造を示す。SNS利用者情報テーブルTBL31には複数のレコードが記録されている。1つのレコードは、SNS利用者U2を一意に識別する識別情報UID、及び、SNS利用者U2が外部管理サーバ3に登録した個人情報を含む。個人情報は、例えば、SNS利用者U2の氏名、性別、勤務先を表す情報(例えば、勤務先名称)、年齢(または生年月日)、メールアドレス、及び、プロフィール画像Pgのリンク先、等を含む。
図10にSNS友達情報テーブルTBL32のデータ構造を示す。SNS友達情報テーブルTBL32には複数のレコードが記録されている。1つのレコードは、SNSの友達情報、すなわち、アクション元の識別情報UID、アクション先の識別情報UID、ステータス、及び、申請日時を含む。アクション元は、友達申請を行ったSNS利用者U2であり、アクション先は、友達申請されたSNS利用者U2である。ステータスは、友達申請の状態を示し、申請中が「0」、承諾が「1」で表される。
外部管理サーバ3のCPUは、SNS友達情報テーブルTBL32にアクセスして、所定のゴルフ利用者U1aの識別情報UIDがアクション元又はアクション先として記録され、且つ、ステータスに「1」が記録されているレコード(SNSの友達情報)を抽出する。さらに、外部管理サーバ3のCPUは、これらのレコードにアクション元又はアクション先として記録されている識別情報UIDをキーとしてSNS利用者情報テーブルTBL31から個人情報を抽出する。この後、外部管理サーバ3は、抽出したSNSの友達情報及び個人情報を含む情報を情報提供サーバ1に送信する。
情報提供サーバ1がSNSの友達情報及び個人情報を受信すると、情報提供サーバ1のCPU70は、受信した情報から、SNSの友達情報及び所定のゴルフ利用者U1aの個人情報を取得する(S102)。
次に、情報提供サーバ1のCPU70は、所定のゴルフ利用者U1aのSNS友達Ufの識別情報UIDを特定する(S103)。具体的には、SNSの友達情報のレコードにおいてアクション元又はアクション先として記録されている識別情報UIDのうち、所定のゴルフ利用者U1aの識別情報UID及び重複する識別情報UIDを除いた識別情報UIDを、所定のゴルフ利用者U1aのSNS友達Ufの識別情報UIDとして特定する。この結果、図11に示すように、所定のゴルフ利用者U1aと友達関係にあるSNS友達Ufを特定することができる。なお、所定のゴルフ利用者U1aのSNS友達Ufが存在しない場合には、処理をステップS110に進める。
この後、情報提供サーバ1のCPU70は、所定のゴルフ利用者U1aのSNS友達Ufの識別情報UIDを外部管理サーバ3に送信する制御を行う(S104)。
外部管理サーバ3が、所定のゴルフ利用者U1aのSNS友達Ufの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS友達情報テーブルTBL32にアクセスし、当該識別情報UIDがアクション元又はアクション先として記録されているレコード(SNSの友達情報)を抽出するとともに、SNS利用者情報テーブルTBL31にアクセスし、SNS友達Ufの識別情報UIDが記録されているレコードからSNS友達Ufの個人情報を取得する(S302)。この後、外部管理サーバ3は、抽出したSNSの友達情報及びSNS友達Ufの個人情報を含む情報を情報提供サーバ1に送信する。
情報提供サーバ1が、SNSの友達情報及びSNS友達Ufの個人情報を含む情報を受信すると、情報提供サーバ1のCPU70は、受信したSNSの友達情報及びSNS友達Ufの個人情報を取得する(S105)。
次に、情報提供サーバ1のCPU70は、ステップS103と同様にして、所定のゴルフ利用者U1aのSNS友達のSNS友達Uffについて識別情報UIDを特定する(S106)。この結果、図12に示すように所定のゴルフ利用者U1aのSNS友達のSNS友達Uffを特定することができる。
この後、情報提供サーバ1のCPU70は、所定のゴルフ利用者U1aのSNS友達のSNS友達Uffの識別情報UIDを外部管理サーバ3に送信する制御を行う(S107)。
外部管理サーバ3が、所定のゴルフ利用者U1aのSNS友達のSNS友達Uffの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS利用者情報テーブルTBL31にアクセスし、当該識別情報UIDが記録されているレコードからSNS友達のSNS友達Uffの個人情報を抽出する(S303)。この後、外部管理サーバ3は、抽出したレコードに記録されているSNS友達のSNS友達Uffの個人情報を含む情報を情報提供サーバ1に送信する。
情報提供サーバ1がSNS友達のSNS友達Uffの個人情報を含む情報を受信すると、情報提供サーバ1のCPU70は当該個人情報を取得する(S108)。
次に、情報提供サーバ1のCPU70は、図2に示すように、所定のゴルフ利用者U1aのSNS友達Uf及び所定のゴルフ利用者U1aのSNS友達のSNS友達Uffの識別情報UIDと、ゴルフ利用者情報テーブルTBL11に記録されているゴルフ利用者U1の識別情報UIDと、に基づいて所定のゴルフ利用者U1aのゴルフ友達Ug及び所定のゴルフ利用者U1aのゴルフ友達のゴルフ友達Uggを特定し、特定したゴルフ友達Ug及びゴルフ友達のゴルフ友達Uggを、所定のゴルフ利用者U1aの関係ゴルフ利用者Ucnとして特定する(S109)。
具体的には、ステップS103で特定した所定のゴルフ利用者U1aのSNS友達Ufの識別情報UIDのうち、ゴルフ利用者U1の識別情報UIDと一致するものを、所定のゴルフ利用者U1aのゴルフ友達Ugの識別情報UIDとして特定する。また、ステップS106で特定した所定のゴルフ利用者U1aのSNS友達のSNS友達Uffの識別情報UIDのうち、ゴルフ利用者U1の識別情報UIDと一致するものを、所定のゴルフ利用者U1aのゴルフ友達のゴルフ友達Uggの識別情報UIDとして特定する。これにより、図2に示すように所定のゴルフ利用者U1aの関係ゴルフ利用者Ucn(つまり、所定のゴルフ利用者U1aのゴルフ友達Ug、及び、所定のゴルフ利用者U1aのゴルフ友達のゴルフ友達Ugg)が特定される。
次に、情報提供サーバ1のCPU70は、ステップS102、ステップS105、及び、ステップS108で取得した個人情報に基づいて、トップ画面G1を表示させるための表示情報を生成する(S110)。
次に、情報提供サーバ1のCPU70は、ステップS110で生成した表示情報を含むマイページ閲覧応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う(S111)。
所定のゴルフ利用者U1aの端末装置6がマイページ閲覧応答を受信すると、端末装置6のCPU60はディスプレイ65に、トップ画面G1を表示させる(S601)。
図13は、所定のゴルフ利用者U1aの端末装置6のディスプレイ65に表示されるマイページのうち、トップ画面G1の一例である。
この図に例示するように、トップ画面G1には、ゴルフイベントを設定する画面に遷移するためのイベント作成ボタンB11、設定したゴルフイベントを管理する画面に遷移するためのイベント管理ボタンB12、ゴルフ場の予約を行う画面に遷移するためのゴルフ場予約ボタンB13、ゴルフ場の予約状況を確認する画面に遷移するためのゴルフ場予約状況確認ボタンB14、所定のゴルフ利用者U1aのプロフィールを設定または変更する画面に遷移するためのプロフィール設定変更ボタンB15、及び、ゴルフ情報アプリケーションサービスからログアウトするためのログアウトボタンB16が設けられている。
また、トップ画面G1の表示エリアA11には、ゴルフ情報アプリケーションサービスの提供に関するお知らせ、ゴルフ場についての情報、並びに、所定のゴルフ利用者U1aの関係ゴルフ利用者Ucnの活動状況等の情報が表示されている。
<3.2.プロフィールの設定または変更>
所定のゴルフ利用者U1aは、プロフィール設定変更画面G2において、自分のプロフィールの設定または変更ができる。以下、プロフィールの設定を例に挙げて説明する。
図13に示すトップ画面G1においてプロフィール設定変更ボタンB15がクリックされた場合、端末装置6は、情報提供サーバ1に対して、プロフィール設定変更画面G2の閲覧要求を送信する。情報提供サーバ1がプロフィール設定変更画面G2の閲覧要求を受信すると、情報提供サーバ1のCPU70は、プロフィール設定変更画面G2を表示させるための表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。所定のゴルフ利用者U1aの端末装置6がプロフィール設定変更画面G2を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図14に例示するプロフィール設定変更画面G2を、例えばポップアップで表示させる。なお、本実施形態は、プロフィール設定変更画面G2を、ポップアップで表示するが、トップ画面G1をプロフィール設定変更画面G2に切り替えることで表示させてもよいし、トップ画面G1の表示エリアA11等にプロフィール設定変更画面G2を表示させてもよい。
図14に例示するように、プロフィール設定変更画面G2には、入力エリアA21、プルダウンPD21〜PD23、地図表示ボタンB21、ラジオボタンRB21及びRB22、決定ボタンB22、並びに、プロフィール設定変更画面G2を閉じるための閉じるボタンB23が設けられている。
所定のゴルフ利用者U1aは、このプロフィール設定変更画面G2から、所定のゴルフ利用者U1aの自宅等の住所情報を入力することができる。具体的には、所定のゴルフ利用者U1aは、プルダウンPD21〜PD23を用いて、所定のゴルフ利用者U1aの自宅等の住所を入力することができる。
なお、入力エリアA21に、郵便番号が入力されると、当該郵便番号に対応する住所が、プルダウンPD21〜PD23により表される住所に反映される。
また、地図表示ボタンB21がクリックされた場合、ディスプレイ65には、地図を表した画面(図示省略)が表示される。所定のゴルフ利用者U1aは、当該地図を表した画面を用いて、所定のゴルフ利用者U1aの自宅等の住所を入力することもできる。
また、所定のゴルフ利用者U1aは、ラジオボタンRB21及びRB22を用いて、所定のゴルフ利用者U1aが車を所有しているか否かを入力することができる。なお、以下では、ゴルフ利用者U1が車を所有しているか否かを表す情報を、「車所有情報」と称する場合がある。
所定のゴルフ利用者U1aの自宅等の住所情報及び車所有情報が入力された状態で、決定ボタンB22がクリックされると、所定のゴルフ利用者U1aの端末装置6は、これらプロフィール設定変更画面G2で入力された情報を、情報提供サーバ1に送信する。
情報提供サーバ1が、所定のゴルフ利用者U1aの自宅等の住所情報及び車所有情報を受信すると、情報提供サーバ1のCPU70は、ゴルフ利用者情報テーブルTBL11にアクセスし、所定のゴルフ利用者U1aの識別情報UIDが記録されているレコードに、受信した住所情報及び車所有情報を記録する。
図15に、ゴルフ利用者情報テーブルTBL11のデータ構造を示す。ゴルフ利用者情報テーブルTBL11には複数のレコードが記録されている。1つのレコードは、ゴルフ利用者U1を一意に識別する識別情報UID、ゴルフ利用者U1が情報提供サーバ1に登録された日付を表す登録日、ゴルフ利用者U1の自宅等の住所を表す住所情報、及び、ゴルフ利用者U1の車所有情報を含む。車所有情報は、ゴルフ利用者U1が車を所有している場合には「1」に設定され、所有していない場合には「0」に設定される。レコードは、これら以外の項目を含んでいるものであってもよい。
本実施形態において、ゴルフ利用者U1の識別情報UIDは、SNS利用者U2の識別情報UIDと一致する。但し、SNS利用者U2の識別情報UIDとゴルフ利用者U1の識別情報UIDとは必ずしも一致する必要はなく、相違していてもよい。この場合は、ゴルフ利用者情報テーブルTBL11のレコードにSNS利用者U2の識別情報とゴルフ利用者U1の識別情報とを対応づけて記録すればよい。
また、ゴルフ利用者情報テーブルTBL11は、上述した情報以外の情報を記録するものであってもよい。例えば、ゴルフ利用者U1のプロフィール画像のリンク先を含んでいてもよいし、ゴルフ利用者U1の勤務先を含んでいてもよい。また、ゴルフ利用者情報テーブルTBL11に記憶すべき情報として、ゴルフ利用者U1の識別情報UIDは必須であるが、その他の情報は省略してもよい。さらに、ゴルフ利用者情報テーブルTBL11をキーとなる情報(例えば、識別情報UID)で紐づけた複数のテーブルで構成し、リレーショナルデータベースとしてもよい。
<3.3.ゴルフイベントの設定について>
所定のゴルフ利用者U1aは、ゴルフイベント設定画面G3〜ゴルフイベントしおり画面G10により、ゴルフイベントを企画し、ゴルフイベントのしおりを作成するとともに、当該ゴルフイベントへの参加者に対して作成したゴルフイベントのしおりを送信することができる。
以下では、これら、ゴルフイベントを設定してゴルフイベントのしおりを作成する処理、及び、ゴルフイベント設定画面G3〜ゴルフイベントしおり画面G10の概要について説明する。
所定のゴルフ利用者U1aのマイページのトップ画面G1においてイベント作成ボタンB11がクリックされると、端末装置6は、情報提供サーバ1に対して、ゴルフイベント設定画面G3の閲覧要求を送信する。
情報提供サーバ1がゴルフイベント設定画面G3の閲覧要求を受信すると、情報提供サーバ1のCPU70は、ゴルフイベント設定画面G3を表示させるための表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。
所定のゴルフ利用者U1aの端末装置6が、ゴルフイベント設定画面G3を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図16に例示するゴルフイベント設定画面G3を、例えばポップアップで表示させる。なお、本実施形態は、ゴルフイベント設定画面G3を、ポップアップで表示させるが、トップ画面G1をゴルフイベント設定画面G3に画面遷移させることでゴルフイベント設定画面G3を表示するものであってもよいし、トップ画面G1の表示エリアA11等にゴルフイベント設定画面G3を表示させてもよい。
い。
図16に例示するように、ゴルフイベント設定画面G3には、ゴルフイベントのタイトルを入力するための入力エリアA31、ゴルフイベントへの参加者についての情報を入力する画面に遷移するためのメンバーを選択するボタンB31、ゴルフイベントの開催予定日を入力するためのプルダウンPD31及びカレンダーボタンB32、ゴルフイベントの開始予定時刻を入力するためのプルダウンPD32、次に進むボタンB33、並びに、ゴルフイベント設定画面G3を閉じるためのキャンセルボタンB34及び閉じるボタンB35が設けられている。
所定のゴルフ利用者U1aは、ゴルフイベント設定画面G3より、企画しようとしているゴルフイベントのタイトル、開催予定日、及び、開始予定時刻を設定することができる。
なお、カレンダーボタンB32がクリックされた場合、所定のゴルフ利用者U1aのディスプレイ65にはカレンダー(図示省略)が表示される。所定のゴルフ利用者U1aは、当該カレンダーを用いて、ゴルフイベントの開催予定日を設定することもできる。なお、本実施形態に係るゴルフイベント設定画面G3は、1の開催予定日のみを設定することができる画面であるが、複数の開催候補日を設定できる画面であっても良い。
図16に示すゴルフイベント設定画面G3において、メンバーを選択するボタンB31がクリックされると、端末装置6は、情報提供サーバ1に対して、メンバー情報入力画面G4の閲覧要求を送信する。なお、当該閲覧要求には、ゴルフイベント設定画面G3で入力されたゴルフイベントのタイトル、開催予定日、及び、開始予定時刻が含まれている。
情報提供サーバ1がメンバー情報入力画面G4の閲覧要求を受信すると、情報提供サーバ1のCPU70は、メンバー情報入力画面G4を表示させるための表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。所定のゴルフ利用者U1aの端末装置6がメンバー情報入力画面G4を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図17に例示するメンバー情報入力画面G4を表示させる。
図17に例示するように、メンバー情報入力画面G4には、ゴルフ友達から選択するボタンB42、同じ勤務先から選択するボタンB43、メンバー決定ボタンB45、ゴルフイベント設定画面G3に画面遷移させるための戻るボタンB46、メンバー情報入力画面G4を閉じるための閉じるボタンB47等が設けられている。
また、メンバー情報入力画面G4の表示エリアA4には、ゴルフイベントへの参加者各々のプロフィール情報を入力するための入力領域A41が複数設けられている。ここで、プロフィール情報とは、氏名、メールアドレス、住所情報(住所及び郵便番号)、車所有情報を含む情報である。
入力領域A41の各々には、ゴルフイベントへの参加者の氏名を入力するための入力エリアA42、当該参加者のメールアドレスを入力するための入力エリアA43、当該参加者の車の所有の有無を表す情報を入力するためのチェックボックスCB41が設けられている。
また、入力領域A41の各々には、当該参加者の自宅等の郵便番号を入力するための入力エリアA44、当該参加者の自宅等の住所を入力するためのプルダウンPD41、及び、地図表示ボタンB41が設けられている。
これにより、所定のゴルフ利用者U1aは、入力領域A41より、ゴルフイベントへの参加者のプロフィール情報を入力することができる。
なお、入力領域A41に入力される参加者は、ゴルフ利用者U1以外の者であってもよいし、SNS利用者U2以外の者であってもよい。つまり、ゴルフイベントへの参加者は、ゴルフ利用者情報テーブルTBL11に記録されているゴルフ利用者U1またはSNS利用者情報テーブルTBL31に記録されているSNS利用者U2に限定されるものではない。
図17に示すメンバー情報入力画面G4において、ゴルフ友達から選択するボタンB42がクリックされると、端末装置6は情報提供サーバ1に対して、メンバー選択画面G5の閲覧要求を送信する。
情報提供サーバ1がメンバー選択画面G5の閲覧要求を受信すると、情報提供サーバ1のCPU70は、ゴルフ利用者情報テーブルTBL11にアクセスし、ステップS109で特定した関係ゴルフ利用者Ucnの識別情報UIDが記録されているレコードから、当該関係ゴルフ利用者Ucnの車所有情報を取得する。次に、情報提供サーバ1のCPU70は、ステップS105及びステップS108で取得した関係ゴルフ利用者Ucnの個人情報と、ゴルフ利用者情報テーブルTBL11から取得した関係ゴルフ利用者Ucnの車所有情報と、に基づいて、メンバー選択画面G5を表示させるための表示情報を生成する。その後、情報提供サーバ1のCPU70は、生成した表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。
所定のゴルフ利用者U1aの端末装置6がメンバー選択画面G5を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図18に例示するメンバー選択画面G5を、例えばポップアップで表示させる。なお、本実施形態は、メンバー選択画面G5は、メンバー情報入力画面G4をメンバー選択画面G5に遷移させることで表示されるものであってもよい。
図18に例示するように、メンバー選択画面G5には、選択したメンバーをリストに追加するボタンB51、メンバー情報入力画面G4に画面遷移させるための戻るボタンB52、及び、メンバー選択画面G5を閉じるための閉じるボタンB53が設けられている。
また、メンバー選択画面G5の表示エリアA5には、所定のゴルフ利用者U1aの関係ゴルフ利用者Ucnを表す情報が一覧表示されているとともに、ゴルフイベントに誘う関係ゴルフ利用者Ucnを選択するためのチェックボックスCB51が関係ゴルフ利用者Ucnと1対1に対応するように設けられている。ここで、関係ゴルフ利用者Ucnを表す情報とは、関係ゴルフ利用者Ucnのプロフィール画像、氏名、及び、住所情報の一部または全部(例えば、住所情報のうち、都道府県)、及び、車所有情報である。なお、メンバー選択画面G5においては、関係ゴルフ利用者Ucnの車所有情報が、車画像Imgにより表される。具体的には、関係ゴルフ利用者Ucnが車を所有している場合には、当該関係ゴルフ利用者Ucnに対応して、車画像Imgが表示される。
所定のゴルフ利用者U1aは、メンバー選択画面G5においてチェックボックスCB51を選択することで、関係ゴルフ利用者Ucnの中からゴルフイベントへの参加者を選択することができる。図18に示す例では、関係ゴルフ利用者Ucnの中で、「山田洋子」、「永井謙祐」、「中田浩志」、及び、「田中裕子」の4名が、ゴルフイベントへの参加者として選択されている場合を例示している。
チェックボックスCB51が選択されている状態で、選択したメンバーをリストに追加するボタンB51がクリックされると、メンバー選択画面G5で選択された関係ゴルフ利用者Ucnが、メンバー情報入力画面G4の入力領域A41に転記される。
なお、図17に示すメンバー情報入力画面G4において、同じ勤務先から選択するボタンB43がクリックされた場合にも、ゴルフ友達から選択するボタンB42がクリックされたときと同様に、ディスプレイ65にはメンバー選択画面G5が表示されるが、この場合には、図18に例示するメンバー選択画面G5において、所定のゴルフ利用者U1aの関係ゴルフ利用者Ucnを表す情報が一覧表示される代わりに、所定のゴルフ利用者U1aと勤務先が同一のゴルフ利用者U1を表す情報が一覧表示される。
以下では、同じ勤務先から選択するボタンB43がクリックされた場合の、メンバー選択画面G5を表示させるための表示情報を生成する処理の一例について説明する。
まず、メンバー情報入力画面G4において同じ勤務先から選択するボタンB43がクリックされると、端末装置6は、情報提供サーバ1に対して、メンバー選択画面G5の閲覧要求が送信する。なお、当該閲覧要求には、メンバー情報入力画面G4において、同じ勤務先から選択するボタンB43がクリックされた旨の情報が含まれるものとする。
情報提供サーバ1が、メンバー選択画面G5の閲覧要求を受信すると、情報提供サーバ1のCPU70は、ステップS102で取得した所定のゴルフ利用者U1aの個人情報から、所定のゴルフ利用者U1aの勤務先名称を取得する。次に、情報提供サーバ1のCPU70は、所定のゴルフ利用者U1aの勤務先名称を含む情報を、外部管理サーバ3に送信する。
外部管理サーバ3が、所定のゴルフ利用者U1aの勤務先名称を含む情報を受信すると、外部管理サーバ3のCPUは、SNS利用者情報テーブルTBL31にアクセスし、受信した所定のゴルフ利用者U1aの勤務先名称と同一の勤務先名称が記録されているレコードを抽出する。次に、外部管理サーバ3は、抽出したレコードに記録されている識別情報UID及び個人情報を含む情報を、情報提供サーバ1に送信する。
情報提供サーバ1が、外部管理サーバ3から送信された情報を受信すると、情報提供サーバ1のCPU70は、当該情報に含まれる識別情報UIDのうち、ゴルフ利用者情報テーブルTBL11に記録されているゴルフ利用者U1の識別情報UIDに含まれる識別情報UIDを特定する。これにより、所定のゴルフ利用者U1aと勤務先が同一のゴルフ利用者U1が特定される。その後、情報提供サーバ1のCPU70は、所定のゴルフ利用者U1aと勤務先が同一のゴルフ利用者U1の個人情報に基づいて、メンバー選択画面G5を表示させるための表示情報を生成する。
なお、本実施形態において、メンバー選択画面G5には、所定のゴルフ利用者U1aの関係ゴルフ利用者Ucnを表す情報、または、所定のゴルフ利用者U1aと勤務先が同一のゴルフ利用者U1を表す情報が、一覧表示されるが、本発明はこのような形態に限定されるものではなく、本実施形態とは異なる検索条件で抽出されたゴルフ利用者U1またはSNS利用者U2を表す情報が一覧表示されるものであってもよい。
例えば、メンバー選択画面G5には、所定のゴルフ利用者U1aのSNS友達Ufを表す情報と、所定のゴルフ利用者U1aのSNS友達のSNS友達Uffを表す情報とが、一覧表示されるものであってもよい。また、所定のゴルフ利用者U1aと勤務先が同一のSNS利用者U2を表す情報が一覧表示されるものであってもよい。
図17に示すメンバー情報入力画面G4において、少なくとも1つの入力領域A41に参加者のプロフィール情報が入力された状態でメンバー決定ボタンB45がクリックされると、端末装置6は、情報提供サーバ1に対して、メンバー確認画面G6の閲覧要求を送信する。なお、当該閲覧要求には、メンバー情報入力画面G4またはメンバー選択画面G5で入力されたゴルフイベントへの参加者のプロフィール情報が含まれている。
情報提供サーバ1がメンバー確認画面G6の閲覧要求を受信すると、情報提供サーバ1のCPU70は、メンバー確認画面G6を表示させるための表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。なお、当該表示情報には、メンバー情報入力画面G4及びメンバー選択画面G5で入力されたゴルフイベントへの参加者のプロフィール情報が含まれている。
所定のゴルフ利用者U1aの端末装置6がメンバー確認画面G6を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図19に例示するメンバー確認画面G6を表示させる。
図19に例示するように、メンバー確認画面G6には、ゴルフ友達から選択するボタンB61、同じ勤務先から選択するボタンB62、直接入力ボタンB63、メンバー決定ボタンB64、メンバー情報入力画面G4に戻るための戻るボタンB65、メンバー確認画面G6を閉じるための閉じるボタンB66が設けられている。
また、メンバー確認画面G6の表示エリアA6には、メンバー情報入力画面G4またはメンバー選択画面G5で入力または選択された、ゴルフイベントへの参加者を表す情報が一覧表示されているとともに、当該参加者と1対1に対応するようにチェックボックスCB61が設けられている。なお、表示エリアA6に設けられるチェックボックスCB61は、全て選択されている状態で表示されている。
所定のゴルフ利用者U1aは、メンバー確認画面G6においてチェックボックスCB61の選択を解除する(チェックを外す)ことで、ゴルフイベントへの参加者を絞り込むことができる。つまり、チェックボックスCB61のチェックを外すことで、メンバー確認画面G6に表示されている参加者のうち、チェックボックスCB61のチェックが外された参加者を、ゴルフイベントへの参加者から外すことができる。
また、ゴルフ友達から選択するボタンB61または同じ勤務先から選択するボタンB62がクリックされると、ディスプレイ65には、メンバー選択画面G5が再び表示され、ゴルフイベントへの参加者を更に追加することができる。同様に、直接入力ボタンB63がクリックされると、ディスプレイ65には、メンバー情報入力画面G4が再び表示され、ゴルフイベントへの参加者を更に追加することができる。
図19に示すメンバー確認画面G6において、少なくとも1つのチェックボックスCB61が選択された状態で、メンバー決定ボタンB64がクリックされると、端末装置6は、情報提供サーバ1に対して、ゴルフ場選択画面G7の閲覧要求を送信する。なお、当該閲覧要求には、メンバー確認画面G6で選択された(チェックボックスCB61にチェックがされた)ゴルフイベントへの参加者のプロフィール情報が含まれている。
情報提供サーバ1がゴルフ場選択画面G7の閲覧要求を受信すると、情報提供サーバ1のCPU70は、ゴルフ場選択画面G7を表示させるための表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。
所定のゴルフ利用者U1aの端末装置6がゴルフ場選択画面G7を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図20に例示するゴルフ場選択画面G7を表示させる。
図20に例示するように、ゴルフ場選択画面G7には、都道府県を選択するためのプルダウンPD71、「あ行」「か行」…「わ行」等の50音の行の名称を選択するためのプルダウンPD72、ゴルフ場一覧表示ボタンB71、メンバー確認画面G6に戻るための戻るボタンB72、及び、ゴルフ場選択画面G7を閉じるための閉じるボタンB73が設けられている。
所定のゴルフ利用者U1aは、プルダウンPD71を用いて、ゴルフイベントが開催されるゴルフ場が位置する都道府県を選択し、プルダウンPD72を用いて、当該ゴルフ場の名称の最初の一文字が位置する50音の行を選択することができる。
図20に示すゴルフ場選択画面G7において、プルダウンPD71及びプルダウンPD72が選択された状態で、ゴルフ場一覧表示ボタンB71がクリックされると、端末装置6は、情報提供サーバ1に対して、ゴルフ場選択画面G8の閲覧要求を送信する。
情報提供サーバ1がゴルフ場選択画面G8の閲覧要求を受信すると、情報提供サーバ1のCPU70は、ゴルフ場選択画面G8を表示させるための表示情報を生成する。具体的には、情報提供サーバ1のCPU70は、まず、ゴルフ場情報テーブルTBL12にアクセスし、ゴルフ場選択画面G7のプルダウンPD71及びプルダウンPD72で選択された条件に合致するゴルフ場を特定する。
図22にゴルフ場情報テーブルTBL12のデータ構造を示す。ゴルフ場情報テーブルTBL12には、複数のレコードが記録されている。1つのレコードには、ゴルフ場を一意に識別するゴルフ場ID、ゴルフ場の名称を表すゴルフ場名称、ゴルフ場名称のうち最初の一文字が50音のいずれの行に該当するかを表す50音行名称、ゴルフ場の住所及び郵便番号を表す住所情報、及び、ゴルフ場のホームページのリンク先を表すリンク先等が記録されている。
情報提供サーバ1のCPU70は、ゴルフ場情報テーブルTBL12にアクセスし、プルダウンPD71で選択された都道府県が住所情報に記録されているレコードで、且つ、プルダウンPD72で選択された50音の行の名称が記録されているレコードを抽出する。次に、情報提供サーバ1のCPU70は、抽出したレコードに記録されている情報に基づいて、ゴルフ場選択画面G8を表示させるための表示情報を生成する。その後、情報提供サーバ1は、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する。
所定のゴルフ利用者U1aの端末装置6がゴルフ場選択画面G8を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図21に例示するゴルフ場選択画面G8を表示させる。
図21に例示するように、ゴルフ場選択画面G8には、1または複数のゴルフ場選択ボタンB81、ゴルフ場選択画面G7に戻るための戻るボタンB82、及び、ゴルフ場選択画面G8を閉じるための閉じるボタンB83が設けられている。
1または複数のゴルフ場選択ボタンB81の各々には、ゴルフ場選択画面G7においてプルダウンPD71及びプルダウンPD72により指定された条件に合致するゴルフ場の名称等が表示されている。
例えば、ゴルフ場選択画面G7において、プルダウンPD71で「東京都」を選択し、プルダウンPD72で「あ行」を選択した場合、ゴルフ場選択画面G8には、東京都に位置し、且つ、あ行から始まるゴルフ場名称を有するゴルフ場(この図に示す例では、「青山カントリークラブ」、「赤坂ゴルフクラブ」、及び、「秋葉原カントリークラブ」の3つのゴルフ場)のそれぞれの名称及び住所を表示した、ゴルフ場選択ボタンB81a、B81a、及び、B81cが設けられている。
所定のゴルフ利用者U1aは、ゴルフ場選択ボタンB81をクリックすることにより、ゴルフイベントが開催される予定のゴルフ場を選択することができる。
図21に示すゴルフ場選択画面G8において、1または複数のゴルフ場選択ボタンB81のうちいずれか1つがクリックされると、端末装置6は、情報提供サーバ1に対して、ゴルフイベント設定内容確認画面G9の閲覧要求を送信する。なお、当該閲覧要求には、ゴルフ場選択画面G8で選択されたゴルフ場を示す情報が含まれている。ここで、ゴルフ場を示す情報とは、当該ゴルフ場のゴルフ場ID、及び、ゴルフ場名称を含む情報である。
情報提供サーバ1がゴルフイベント設定内容確認画面G9の閲覧要求を受信すると、情報提供サーバ1のCPU70は、ゴルフイベント設定内容確認画面G9を表示させるための表示情報を生成する。
この表示情報には、ゴルフイベントに関する設定情報が含まれている。ここで、ゴルフイベントに関する設定情報とは、所定のゴルフ利用者U1aのプロフィール情報と、ゴルフイベント設定画面G3〜ゴルフ場選択画面G8において設定されたゴルフイベントのタイトル、開催予定日、開始予定時刻、参加者のプロフィール情報、及び、ゴルフ場を示す情報と、を含む情報である。
なお、ゴルフイベント設定画面G3乃至ゴルフ場選択画面G8において設定された情報は、これら各画面の閲覧要求及び各画面を表示させるための表示情報を含む応答に含まれているものであってもよいし、または、RAM71若しくはハードディスクドライブ73に一時的に記憶させられているものであってもよい。
情報提供サーバ1のCPU70は、ゴルフイベント設定内容確認画面G9を表示させるための表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。所定のゴルフ利用者U1aの端末装置6がゴルフイベント設定内容確認画面G9を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図23に例示するゴルフイベント設定内容確認画面G9を表示させる。
図23に例示するように、ゴルフイベント設定内容確認画面G9には、ゴルフイベント設定画面G3乃至ゴルフ場選択画面G8で設定した内容を修正する画面(例えば、ゴルフイベント設定画面G3乃至ゴルフ場選択画面G8)に遷移するための修正ボタンB91〜B94、しおり作成ボタンB95、前の画面であるゴルフ場選択画面G8に戻るための戻るボタンB96、並びに、ゴルフイベントの作成を中止してゴルフイベント設定内容確認画面G9を閉じるためのキャンセルボタンB97及び閉じるボタンB98が設けられている。
また、ゴルフイベント設定内容確認画面G9の表示エリアA91には、ゴルフイベント設定画面G3で入力されたゴルフイベントのタイトルが表示され、表示エリアA92には、ゴルフイベント設定画面G3で設定されたゴルフイベントの開催予定日時及び開始予定時刻が表示され、表示エリアA93には、ゴルフ場選択画面G8で選択されたゴルフイベントが開催される予定のゴルフ場の名称が表示され、表示エリアA94には、メンバー情報入力画面G4〜メンバー確認画面G6で設定されたゴルフイベントへの参加者の氏名が表示されている。
図23に例示するゴルフイベント設定内容確認画面G9において、しおり作成ボタンB95がクリックされると、所定のゴルフ利用者U1aの端末装置6は、情報提供サーバ1に対して、ゴルフイベントしおり画面G10の閲覧要求を送信する。当該閲覧要求には、ゴルフイベント設定内容確認画面G9を表示させるための表示情報に含まれるゴルフイベントに関する設定情報が含まれている。なお、ゴルフイベント設定内容確認画面G9において修正ボタンB91〜B94がクリックされてゴルフイベントに関する設定内容の修正がなされた場合には、当該修正後の設定内容がゴルフイベントに関する設定情報とされる。
情報提供サーバ1がゴルフイベントしおり画面G10の閲覧要求を受信すると、情報提供サーバ1のCPU70は、ゴルフイベントへの参加者を複数の組みに割り振る割振処理を含む、ゴルフイベントのしおりを作成する処理を実行する。以下では、当該ゴルフイベントのしおりを作成する処理について説明する。
<3.4.ゴルフイベントのしおりを作成する処理について>
図24及び図25に、ゴルフイベントのしおりを作成する処理に関する情報提供システム100の動作シーケンスを示す。
上述のとおり、ゴルフイベント設定内容確認画面G9において、しおり作成ボタンB95がクリックされると、所定のゴルフ利用者U1aの端末装置6は、情報提供サーバ1に対して、ゴルフイベントに関する設定情報を含むゴルフイベントしおり画面G10の閲覧要求を送信する(S620)。
情報提供サーバ1が、ゴルフイベントしおり画面G10の閲覧要求を受信すると、情報提供サーバ1のCPU70は、当該閲覧要求に含まれるゴルフイベントに関する設定情報を取得する(S120)。
次に、情報提供サーバ1のCPU70は、ゴルフイベントに関する設定情報に含まれるゴルフイベントへの参加者をカウントし、当該カウント結果を、ゴルフイベントへの参加者の人数を表す人数情報として取得する(S121)。
なお、ステップS121でカウントされる参加者は、メンバー情報入力画面G4またはメンバー選択画面G5で入力された参加者と、所定のゴルフ利用者U1aと、を含む、ゴルフイベントへの参加者全員である。
その後、情報提供サーバ1のCPU70は、ゴルフイベントへの参加者を複数の組に割り振るときの組の個数を特定する(S122)。
具体的には、情報提供サーバ1のCPU70は、人数情報の示す参加者の人数を、各組に割り振ることのできる参加者の人数の上限値で除算した値について、小数点以下を切り上げた値を、組の個数として特定する。
例えば、人数情報の示す参加者の人数が「10人」で、各組に割り振ることのできる参加者の人数の上限値が「4人」である場合、除算した値は、「2.5」となり、除算した値の小数点以下を切り上げた値は「3」となるため、組の個数は「3」となる。
その後、情報提供サーバ1のCPU70は、ステップS120で取得したゴルフイベントに関する設定情報、ステップS121で取得した人数情報、及び、ステップS122で特定した組の個数を、イベント管理テーブルTBL13または参加者管理テーブルTBL14に記録する(S123)。
図26に、イベント管理テーブルTBL13のデータ構造を示す。
イベント管理テーブルTBL13には複数のレコードが記録されている。1つのレコードは、ゴルフ利用者U1が企画したゴルフイベントを一意に識別するイベントID、イベントを企画したゴルフ利用者U1の識別情報UIDを表すイベント登録者UID、レコードがイベント管理テーブルTBL13に追加された日時を表すイベント登録日時、ゴルフイベントのタイトルを表すイベントタイトル、ゴルフイベントの開催予定日を表すイベント開催予定日、ゴルフイベントの開始予定時刻を表すイベント開始予定時刻、ゴルフイベントが開催される予定のゴルフ場のゴルフ場IDを表すイベント開始予定ゴルフ場ID、ゴルフイベントへの参加者の人数を表すイベント参加者人数、及び、ゴルフイベントへの参加者を複数の組に割り振るときの組の個数を表す組数を含む。
図27に、参加者管理テーブルTBL14のデータ構造を示す。
参加者管理テーブルTBL14には複数のレコードが記録されている。1つのレコードは、イベントID、予約ID、ゴルフイベントへの参加者がゴルフ利用者U1である場合に当該ゴルフ利用者U1の識別情報UIDを表すイベント参加者UID、ゴルフイベントへの参加者の氏名を表すイベント参加者氏名、ゴルフイベントへの参加者のメールアドレスを表すイベント参加者メールアドレス、ゴルフイベントへの参加者の自宅等の住所情報を表すイベント参加者住所情報、所要時間、及び、ゴルフイベントへの参加者の車所有情報を含む。
予約ID、及び、所要時間については後述する。
情報提供サーバ1のCPU70は、ステップS123において、まず、イベント管理テーブルTBL13にアクセスし、イベント管理テーブルTBL13に1つのレコードを追加するとともに、所定のゴルフ利用者U1aが設定したゴルフイベントを識別するためのイベントIDを新たに採番し、これを、当該追加したレコードのイベントIDに記録する。
次に、情報提供サーバ1のCPU70は、ステップS120で取得したゴルフイベントに関する設定情報に含まれる、ゴルフイベントのタイトル、開催予定日、開始予定時刻、及び、ゴルフ場IDを、それぞれ、イベント管理テーブルTBL13に追加したレコードの、イベントタイトル、イベント開催予定日、イベント開始予定時刻、及び、イベント開始予定ゴルフ場IDに記録する。
また、情報提供サーバ1のCPU70は、ステップS121で取得した人数情報の示すゴルフイベントへの参加者の人数を、イベント管理テーブルTBL13に追加したレコードのイベント参加者人数に記録する。
また、情報提供サーバ1のCPU70は、ステップS122で特定した組の個数を、イベント管理テーブルTBL13に追加したレコードの組数に記録する。
なお、本実施形態において、情報提供サーバ1のCPU70は、ステップS123において、ゴルフイベントに関する設定情報、人数情報、及び、組の個数を、イベント管理テーブルTBL13に記録するが、ステップS120においてゴルフイベントに関する設定情報を記録し、ステップS121において人数情報を記録し、また、ステップS122において組の個数を記録するものであってもよい。
また、ゴルフイベント設定画面G3〜ゴルフ場選択画面G8において設定された情報を、情報提供サーバ1が受信したときに、都度、記録するものであってもよい。
次に、情報提供サーバ1のCPU70は、ステップS123において、参加者管理テーブルTBL14にアクセスし、参加者管理テーブルTBL14に、ステップS121で取得した人数情報の示す参加者の人数と等しい数のレコードを追加する。
その後、情報提供サーバ1のCPU70は、イベント管理テーブルTBL13にレコードを追加する際に採番したイベントID(つまり、所定のゴルフ利用者U1aが設定したゴルフイベントを識別するためのイベントID)を、参加者管理テーブルTBL14に追加した各レコードのイベントIDに記録する。
また、情報提供サーバ1のCPU70は、ステップS120で取得したゴルフイベントに関する設定情報に含まれる、ゴルフイベントへの参加者の氏名、メールアドレス、住所情報、及び、車所有情報を、参加者管理テーブルTBL14に追加したレコードのイベント参加者氏名、イベント参加者メールアドレス、イベント参加者住所情報、及び、車所有情報に記録する。
また、情報提供サーバ1のCPU70は、ステップS120で取得したゴルフイベントに関する設定情報に含まれるゴルフイベントへの参加者のうち、ゴルフ利用者U1であるものについて、当該ゴルフ利用者U1の識別情報UIDを、参加者管理テーブルTBL14に追加したレコードのイベント参加者UIDに記録する。
なお、本実施形態において、情報提供サーバ1のCPU70は、ステップS123において、ゴルフイベントへの参加者のプロフィール情報を、参加者管理テーブルTBL14に記録するが、ステップS120またはステップS121において記録するものであってもよい。また、メンバー確認画面G6のメンバー決定ボタンB64がクリックされ、ゴルフイベントへの参加者のプロフィール情報を含むゴルフ場選択画面G7の閲覧要求を情報提供サーバ1が取得したときに、記録するものであってもよい。
次に、情報提供サーバ1のCPU70は、当該ゴルフイベントが開催される予定のゴルフ場の住所情報と、当該ゴルフイベントへの参加者の自宅等の住所情報とを取得し、これらを、地図情報サーバ4に対して送信する(S124)。
具体的には、情報提供サーバ1のCPU70は、まず、ゴルフ場情報テーブルTBL12にアクセスし、ステップS120で取得したゴルフイベントに関する設定情報に含まれるゴルフ場IDが記録されているレコードを特定し、特定したレコードに記録されているゴルフ場の住所情報を取得する。次に、情報提供サーバ1のCPU70は、取得したゴルフ場の住所情報と、ステップS120で取得したゴルフイベントに関する設定情報に含まれる、ゴルフイベントへの参加者の自宅等の住所情報と、を地図情報サーバ4に対して送信する。
地図情報サーバ4が、ゴルフ場の住所情報と、参加者の自宅等の住所情報と、を受信すると、地図情報サーバ4のCPU400は、位置情報管理テーブルTBL41にアクセスし、受信した住所情報に対応する経緯度情報を取得する(S420)。
図28に位置情報管理テーブルTBL41のデータ構造を示す。位置情報管理テーブルTBL41には複数のレコードが記録されている。1つのレコードは、住所情報及び経緯度情報を含む。
地図情報サーバ4のCPU400は、位置情報管理テーブルTBL41にアクセスし、受信したゴルフ場の住所情報が記録されているレコードを特定する。そして、特定したレコードに記録されている経緯度情報を、当該ゴルフ場の経緯度情報として取得する。
また、地図情報サーバ4のCPU400は、位置情報管理テーブルTBL41にアクセスし、受信した参加者の自宅等の住所情報が記録されているレコードを特定する。そして、特定したレコードに記録されている経緯度情報を、当該参加者の自宅等の経緯度情報として取得する。
次に、地図情報サーバ4のCPU400は、ステップS420で取得したゴルフ場の経緯度情報と参加者の自宅等の経緯度情報とを、情報提供サーバ1に送信する制御を実行する(S421)。
情報提供サーバ1が、地図情報サーバ4から送信されたゴルフ場の経緯度情報と参加者の自宅等の経緯度情報とを受信すると、情報提供サーバ1のCPU70は、これらゴルフ場の経緯度情報と参加者の自宅等の経緯度情報とを取得する(S125)。
その後、ステップS125で取得したゴルフ場の経緯度情報及び参加者の自宅等の経緯度情報と、参加者の車所有情報とを、地図情報サーバ4に対して送信する(S126)。
地図情報サーバ4が、情報提供サーバ1から送信されたゴルフ場の経緯度情報と参加者の自宅等の経緯度情報とを受信すると、地図情報サーバ4のCPU400は、受信した2つの経緯度情報に基づいて、当該2つの経緯度情報に対応する2つの地点間の移動に係る所要時間を演算する(S422)。この所要時間の演算は、公知の経路探索手法を適宜適用して実行される。
なお、ゴルフイベントへの参加者が複数名存在する場合には、参加者毎に、ステップS422の処理が実行される。
また、参加者が車を所有している場合には、車で移動することを前提として所要時間が演算される。一方、参加者が車を所有していない場合には、鉄道またはバス等の公共交通機関やタクシー等を用いて移動することを前提として所要時間が演算される。なお、参加者が車を所有していない場合の所要時間の演算には、上述のほかに、参加者の自宅等から最寄駅やバス停までの所要時間を含めることとしてもよい。この場合、予め徒歩や自転車等が設定され、これらに対応する所定時間当たりの進行距離を設定しておく。具体的には、徒歩であれば1分当たり80メートル、自転車であれば1分あたり240メートル、等である。
その後、地図情報サーバ4のCPU400は、ステップS422で実行された演算の結果として得られた所要時間を含む情報を、情報提供サーバ1に送信する(S423)。
情報提供サーバ1が地図情報サーバ4から、所要時間を含む情報を受信すると、情報提供サーバ1のCPU70は、当該情報に含まれる所要時間を取得する(S127)。
また、ステップS127において、情報提供サーバ1のCPU70は、取得した所要時間を、参加者管理テーブルTBL14に記録されている複数のレコードのうち、当該ゴルフイベントのイベントIDが記録されているレコードであって、取得した所要時間に対応する参加者の識別情報UIDがイベント参加者UIDとして記録されているレコードに記録する。
その後、情報提供サーバ1のCPU70は、割振処理を実行する(S128)。以下、割振処理について具体的に説明する。
まず、情報提供サーバ1のCPU70は、ステップS121で取得した人数情報と、ステップS122で特定した組の個数とに基づいて、ゴルフイベントへの参加者を、ステップS122で特定した個数の組に割り振る場合の、各組への割り振り人数を決定する。
本実施形態では、各組に属する参加者の人数の最大値と最小値との差分値を最小化するように、各組への割り振り人数を決定する。
具体的には、以下のようにして、各組への割り振り人数を決定してもよい。
まず、人数情報の示す参加者の人数を、ステップS122で特定した組の個数で除算する。そして、この除算により得られる商を、各組に属する参加者の人数の最小値とする。また、この除算により剰余が生じる場合には、当該最小値に「1」を加えた値を各組に属する参加者の人数の最大値とする。他方、この除算により剰余が生じない場合(割り切れる場合)には、最大値と最小値とを等しい値とする。例えば、参加者の人数が「10人」で、組の個数が「3組」である場合、参加者の人数を組の個数で除算すると、「10÷3=3余り1」となるため、各組に属する参加者の人数の最小値は「3」となり、最大値は「4」となる。
上述のとおり、参加者を複数の組に割り振る場合、複数の組のゴルフの開始時刻は互いに異なる。以下では、複数の組に対して、開始時刻が早い順番に、「第1組」、「第2組」、…、「第M組」等のように、組に番号を付けて表現する場合がある。
本実施形態では、ゴルフの開始時刻の早い組に属する参加者の人数が、遅い組に属する参加者の人数以上となるように、各組への割り振り人数を決定する。例えば、図29に示すように、参加者の人数が「10人」で、組の個数が「3組」である場合、第1組に4人の参加者が属し、第2組に3人の参加者が属し、第3組に3人の参加者が属することになる。
各組への割り振り人数を決定した後、情報提供サーバ1のCPU70は、ステップS127で取得した所要時間に基づいて、ゴルフイベントへの参加者を、ゴルフ場までの所要時間が短い順番に、ゴルフの開始時刻の早い組から遅い組へと割り振る。
具体的には、以下のように割り振ってもよい。
まず、情報提供サーバ1のCPU70は、ゴルフイベントへの参加者を、ゴルフ場までの所要時間が短い順番に並べ変える。そして、並べ替えた参加者を、ゴルフの開始時刻が早い組から順番に、各組への割り振り人数ずつ割り振っていく。例えば、図3に示すように、ゴルフイベントへの参加者が、Aさん〜Jさんの10名であり、ゴルフ場までの所要時間が、「Aさん」<「Bさん」<…<「Jさん」である場合には、図29に示すように、第1組に、Aさん〜Dさんの4人を割り振り(割振1)、第2組に、Eさん〜Gさんの3人を割り振り(割振2)、第3組に、Hさん〜Jさんの3人を割り振ればよい(割振3)。
以下では、図29に示すような、ゴルフイベントへの参加者が複数の組にどのように割り振られるかを示す情報を、割振情報と称する場合がある。
この割振情報には、少なくとも、組の個数、各組のゴルフを開始する順番、各組に属する参加者の人数、及び、各組に属する参加者の氏名が含まれる。
なお、割振情報は、図29に示すように、参加者の自宅等からゴルフ場までの所要時間を含むものであってもよい。
また、割振情報は、各組のゴルフを開始する具体的な時刻を表す情報(例えば、後述する各組の開始時間・コースを表す情報)を更に含むものであってもよい。
次に、情報提供サーバ1のCPU70は、ゴルフイベントしおり画面G10を表示させるためのしおり表示情報を生成する(S129)。
このしおり表示情報には、ゴルフイベントに関する設定情報(つまり、ゴルフイベントのタイトル、開催予定日、開始予定時刻、参加者のプロフィール情報、及び、ゴルフ場を示す情報)と、割振情報とが含まれる。
そして、情報提供サーバ1のCPU70は、しおり表示情報を含む、ゴルフイベントしおり画面G10の閲覧応答を、所定のゴルフ利用者U1aの端末装置6に送信する(S130)。
所定のゴルフ利用者U1aの端末装置6が、ゴルフイベントしおり画面G10の閲覧応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図30に例示するゴルフイベントしおり画面G10を表示させる(S621)。
このように、情報提供サーバ1のCPU70は、ステップS121を実行することにより人数情報取得部12として機能し、ステップS122を実行することにより特定部13として機能し、ステップS124及びS125を実行することにより位置情報取得部11として機能し、ステップS126及びS127を実行することにより所要時間取得部15として機能し、ステップS128を実行することにより割振部14として機能し、ステップS129及びS130を実行することにより通知部18として機能する。
また、地図情報サーバ4のCPU400は、ステップS422を実行することにより演算部41として機能する。
図30に例示するように、ゴルフイベントしおり画面G10には、ゴルフイベントに関する設定情報及びしおり表示情報を修正することのできる修正画面に遷移するための修正ボタンBa1〜Ba4、ゴルフイベントしおり画面G10に表示されている内容にてゴルフ場の予約を行うことのできる画面に遷移するための予約ボタンBa5、通知送信ボタンBa6、前の画面であるゴルフイベント設定内容確認画面G9に戻るための戻るボタンBa7、ゴルフイベントを中止する場合に、設定したゴルフイベントのしおりを削除するためのイベント中止ボタンBa8、及び、ゴルフイベントしおり画面G10を閉じるための閉じるボタンBa9が設けられている。
ゴルフイベントしおり画面G10の表示エリアAa1には、ゴルフイベントに関する設定情報が表示され、表示エリアAa2には、割振情報が表示されている。また、表示エリアAa3には、当該ゴルフイベントを開催する予定のゴルフ場の予約を行ったか否かを示す情報が表示されている。
通知送信ボタンBa6がクリックされると、ゴルフイベントしおり画面G10に表示されているしおり表示情報が、メール等で、当該ゴルフイベントの参加者(厳密には、所定のゴルフ利用者U1aを除く参加者)に通知される。
なお、一度、ゴルフイベントのしおりを作成する処理が実行された後は、図13に示すトップ画面G1において、イベント管理ボタンB12をクリックすることで、ゴルフイベントしおり画面G10を表示させることができる。
この場合、情報提供サーバ1のCPU70は、人数情報、組の個数、及び、参加者のゴルフ場までの所要時間を、イベント管理テーブルTBL13及び参加者管理テーブルTBL14から取得する。そして、情報提供サーバ1のCPU70は、取得した人数情報、組の個数、及び、参加者のゴルフ場までの所要時間に基づいてステップS128の割振処理を実行することで、しおり表示情報を生成する。
すなわち、情報提供サーバ1のCPU70は、参加者管理テーブルTBL14に記憶されているイベント情報より、人数情報を取得することによっても、人数情報取得部12として機能する。
また、情報提供サーバ1のCPU70は、参加者管理テーブルTBL14に記憶されているイベント情報より、組の個数を取得することによっても、特定部13として機能する。
<3.5.ゴルフ場予約アプリケーションサービスについて>
上述のとおり、ゴルフ場予約アプリケーションサービスにおいては、サービスプラン選択画面G11、予約内容設定画面G12、及び、ゴルフ予約しおり画面G13が提供される。
以下、ゴルフ場予約アプリケーションサービスの概要、及び、ゴルフ情報アプリケーションサービスで提供される画面について説明する。
所定のゴルフ利用者U1aの端末装置6のディスプレイ65に表示されているトップ画面G1において、ゴルフ場予約ボタンB13がクリックされると、端末装置6のディスプレイ65には、ゴルフ場選択画面G7が表示される。
ゴルフ場選択画面G7において、都道府県と、ゴルフ場の最初の一文字の50音の行の名称と、が選択された状態でゴルフ場一覧表示ボタンB71がクリックされると、所定のゴルフ利用者U1aの端末装置6のディスプレイ65には、ゴルフ場選択画面G8が表示される。
ゴルフ場選択画面G8において、ゴルフ場選択ボタンB81がクリックされ、ゴルフ場が選択されると、所定のゴルフ利用者U1aの端末装置6は、情報提供サーバ1に対して、サービスプラン選択画面G11の閲覧要求を送信する。
情報提供サーバ1は、端末装置6から送信されたサービスプラン選択画面G11の閲覧要求を受信すると、ゴルフ場選択画面G8で選択されたゴルフ場の運営主体により管理されているゴルフ場サーバ5から、当該ゴルフ場が提供するサービスプラン、及び、当該ゴルフ場の予約状況(空き状況)等、所定のゴルフ利用者U1aが当該ゴルフ場の予約操作を行うために必要な情報を取得する。そして、情報提供サーバ1のCPU70は、当該ゴルフ場の予約操作を行うために必要な情報に基づいて、サービスプラン選択画面G11を表示させるための表示情報を生成する。
その後、情報提供サーバ1のCPU70は、サービスプラン選択画面G11を表示させるための表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。所定のゴルフ利用者U1aの端末装置6がサービスプラン選択画面G11を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図31に例示するサービスプラン選択画面G11を表示させる。
図31に例示するように、サービスプラン選択画面G11には、前の画面であるゴルフ場選択画面G8に戻るための戻るボタンBb4、並びに、サービスプラン選択画面G11を閉じるためのキャンセルボタンBb5及び閉じるボタンBb6が設けられている。
また、サービスプラン選択画面G11の表示エリアAb1には、所定のゴルフ利用者U1aがゴルフ場選択画面G8において選択したゴルフ場の名称が表示され、表示エリアAb1の下部には、当該ゴルフ場の予約状況を表す表Ab2が表示されている。表Ab2には、当該ゴルフ場が提供する各種プランの名称(プラン名)及び各種プランの料金が表示されるとともに、各種プランの日付毎の予約状況(空き状況)がリンクBb1の形状により表されている。また、ボタンBb2またはBb3をクリックすることにより、表Ab2に表示される日付を変更することができる。
所定のゴルフ利用者U1aは、リンクBb1をクリックすることにより、所定のゴルフ利用者U1aが開催するゴルフイベントの開催予定日、及び、利用するプランを選択することができる。
リンクBb1がクリックされると、所定のゴルフ利用者U1aの端末装置6は、情報提供サーバ1に対して、予約内容設定画面G12を表示させる旨の閲覧要求を送信する。当該閲覧要求には、クリックされたリンクBb1に対応する日付及びプランを示す情報が含まれている。
情報提供サーバ1が、予約内容設定画面G12の閲覧要求を受信すると、情報提供サーバ1のCPU70は、予約内容設定画面G12を表示させるための表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。
所定のゴルフ利用者U1aの端末装置6が予約内容設定画面G12を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図32に例示する予約内容設定画面G12を表示させる。
図32に例示するように、予約内容設定画面G12には、予約時間を指定するためのプルダウンPDc1、予約する組数(予約組数)を設定するためのプルダウンPDc2、ゴルフイベントへの参加者の人数(プレー予定人数)を設定するためのプルダウンPDc3、メンバーを選択するボタンBc1、サービスプラン選択画面G11に戻るための戻るボタンBc2、予約ボタンBc3、並びに、予約操作を中断して予約内容設定画面G12を閉じるためのキャンセルボタンBc4及びBc5が設けられている。
また、予約内容設定画面G12の表示エリアAc1には、ゴルフ場選択画面G8において選択されたゴルフ場(予約ゴルフ場)の名称、サービスプラン選択画面G11で選択された日付及びプランを表す情報が表示されている。
メンバーを選択するボタンBc1がクリックされると、メンバー情報入力画面G4乃至メンバー確認画面G6に画面が遷移し、ゴルフイベントへの参加者のプロフィール情報を入力することができる。
予約内容設定画面G12、並びに、サービスプラン選択画面G11、及び、メンバー情報入力画面G4乃至メンバー確認画面G6においてゴルフ場の予約に係る情報が入力されたときに、予約内容設定画面G12の予約ボタンBc3がクリックされると、ディスプレイ65には、当該ゴルフ場の予約に係る情報が表示された確認画面(図示省略)が表示される。そして、当該確認画面において予約実行ボタン(図示省略)がクリックされると、所定のゴルフ利用者U1aの端末装置6は、情報提供サーバ1に対して、ゴルフ予約しおり画面G13の閲覧要求を送信する。なお、当該閲覧要求には、予約内容設定画面G12等で入力されたゴルフ場の予約に係る情報が含まれている。
ここで、ゴルフ場の予約に係る情報とは、所定のゴルフ利用者U1aのプロフィール情報と、ゴルフ場選択画面G8において選択したゴルフ場(予約ゴルフ場)を示す情報と、サービスプラン選択画面G11及び予約内容設定画面G12において設定した、プレー予定日、プレー開始予定時刻、プレー予定人数、プレー料金、及び、予約プラン名、予約組数と、メンバー情報入力画面G4乃至メンバー確認画面G6で設定したゴルフイベントへの参加者のプロフィール情報と、を含む情報である。
情報提供サーバ1は、所定のゴルフ利用者U1aの端末装置6から送信されたゴルフ場の予約に係る情報を受信すると、当該ゴルフ場の予約に係る情報を、ゴルフ場サーバ5に送信する。
ゴルフ場サーバ5は、情報提供サーバ1から送信されたゴルフ場の予約に係る情報に基づいて、ゴルフ場の予約処理を実行し、予約処理の完了通知を情報提供サーバ1に送信する。なお、当該予約処理の完了通知には、各組の開始時間・コースを表す情報と、当該ゴルフ場において予約処理が完了する際に付与されるゴルフ場予約番号と、が含まれている。
ここで、各組の開始時間・コースを表す情報とは、各組がゴルフを開始する時刻と、各組がゴルフを開始するコースとを指定する情報である。
また、情報提供サーバ1が、ゴルフ場サーバ5から送信された予約処理の完了通知を受信すると、情報提供サーバ1のCPU70は、端末装置6から送信されたゴルフ場の予約に係る情報と、ゴルフ場サーバ5から送信された各組の開始時間・コースを表す情報及びゴルフ場予約番号と、に基づいて、ゴルフ予約しおり画面G13を表示させるためのゴルフ予約しおり表示情報を生成し、当該ゴルフ予約しおり表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置6に送信する制御を行う。
ここで、ゴルフ予約しおり表示情報とは、ゴルフ場の予約に係る情報、各組の開始時間・コースを表す情報、及び、ゴルフ場予約番号を含む情報である。
また、情報提供サーバ1が、ゴルフ場サーバ5から送信された予約処理の完了通知を受信すると、情報提供サーバ1のCPU70は、以下に説明するように、ゴルフ場の予約に係る情報、各組の開始時間・コースを表す情報、及び、ゴルフ場予約番号を、予約情報テーブルTBL15に記録する。
図33及び図34に、予約情報テーブルTBL15のデータ構造を示す。
予約情報テーブルTBL15には複数のレコードが記録されている。1つのレコードは、ゴルフ利用者U1が行った予約を一意に識別する予約ID、当該予約を行ったゴルフ利用者U1の識別情報UIDを表す予約者UID、レコードが予約情報テーブルTBL15に追加された日時を表す予約日時、予約したゴルフ場のゴルフ場IDを表す予約ゴルフ場ID、プレー予定日、予約プラン名、ゴルフ場サーバ5において予約処理が完了する際に付与されるゴルフ場予約番号、プレー料金、プレー予定人数、予約組数、及び、各組の開始時間・コースを含む。
各組の開始時間・コースは、各組ごとのゴルフの開始時刻と、各組ごとのゴルフを行うコース名とを含む。
情報提供サーバ1が、ゴルフ場サーバ5から送信された予約処理の完了通知を受信すると、情報提供サーバ1のCPU70は、予約情報テーブルTBL15にアクセスし、予約情報テーブルTBL15に1つのレコードを追加するとともに、所定のゴルフ利用者U1aの行った予約を識別するための予約IDを新たに採番し、これを、当該追加したレコードの予約IDに記録する。
次に、情報提供サーバ1のCPU70は、端末装置6から受信したゴルフ場の予約に係る情報に含まれる、所定のゴルフ利用者U1aの識別情報UID、ゴルフ場ID、プレー予定日、予約プラン名、プレー料金、プレー予定人数、及び、予約組数を、それぞれ、追加したレコードの予約者UID、予約ゴルフ場ID、プレー予定日、予約プラン名、プレー料金、プレー予定人数、及び、予約組数に記録する。
また、情報提供サーバ1のCPU70は、ゴルフ場サーバ5から受信した予約処理の完了通知に含まれる、ゴルフ場予約番号、及び、各組の開始時間・コースを表す情報を、それぞれ、追加したレコードの、ゴルフ場予約番号、及び、各組の開始時間・コースに記録する。
また、情報提供サーバ1が、ゴルフ場サーバ5から送信された予約処理の完了通知を受信すると、情報提供サーバ1のCPU70は、参加者管理テーブルTBL14にアクセスし、参加者管理テーブルTBL14に、端末装置6から受信したゴルフ場の予約に係る情報に含まれるプレー予定人数と等しい数のレコードを追加する。
その後、情報提供サーバ1のCPU70は、予約情報テーブルTBL15にレコードを追加する際に採番した予約IDを、参加者管理テーブルTBL14に追加した各レコードの予約IDに記録する。
また、情報提供サーバ1のCPU70は、端末装置6から受信したゴルフ場の予約に係る情報に含まれる、ゴルフイベントへの参加者のプロフィール情報を、参加者管理テーブルTBL14に追加したレコードのイベント参加者氏名、イベント参加者メールアドレス、イベント参加者住所情報、及び、車所有情報に記録する。
また、情報提供サーバ1のCPU70は、ゴルフ場の予約に係る情報にプロフィール情報が含まれる参加者のうち、ゴルフ利用者U1であるものについて、当該ゴルフ利用者U1の識別情報UIDを、参加者管理テーブルTBL14に追加したレコードのイベント参加者UIDに記録する。
所定のゴルフ利用者U1aの端末装置6がゴルフ予約しおり画面G13を表示させるための表示情報を含む応答を受信すると、端末装置6のCPU60は、ディスプレイ65に、図35に例示するゴルフ予約しおり画面G13を表示させる。
図35に例示するように、ゴルフ予約しおり画面G13には、所要時間による割振ボタンBd1、ゴルフイベントへの参加者を変更することのできる画面(図示省略)に遷移するためのメンバー変更ボタンBd2、ゴルフ予約しおり画面G13に表示されている情報を、ゴルフイベントへの参加者に通知するための通知・送信ボタンBd3、予約内容を修正しまたは予約を取り消す手続きを行うことのできる画面(図示省略)に遷移するための予約の修正・取消ボタンBd4、及び、ゴルフ予約しおり画面G13を閉じるための閉じるボタンBd5が設けられている。
ゴルフ予約しおり画面G13の表示エリアAd1には、ゴルフ場の予約に係る情報及びゴルフ場予約番号が表示され、表示エリアAd2には、図において符号「Info」で示される各組の開始時間・コースを表す情報が表示されている。
なお、図35に例示するゴルフ予約しおり画面G13には、図30に例示するゴルフイベントしおり画面G10とは異なり、ゴルフイベントへの参加者が複数の組にどのように割り振られるかを示す割振情報は表示されていない。
所定のゴルフ利用者U1aは、所要時間による割振ボタンBd1をクリックすることで、図36に例示するように、ゴルフ予約しおり画面G13の表示エリアAd2に各組の開始時間・コースを表す情報を含む割振情報を表示させることができる。
具体的には、所要時間による割振ボタンBd1がクリックされた場合、情報提供サーバ1のCPU70は、人数情報、及び、組の個数を、予約情報テーブルTBL15から取得する。そして、情報提供サーバ1のCPU70は、図36に示すステップS124〜S128を実行することにより、各組の開始時間・コースを表す情報を含む割振情報を生成する。
すなわち、情報提供サーバ1のCPU70は、予約情報テーブルTBL15に記憶されている予約情報より、人数情報を取得することによっても、人数情報取得部12として機能する。
また、情報提供サーバ1のCPU70は、予約情報テーブルTBL15に記憶されている予約情報より、組の個数を取得することによっても、特定部13として機能する。
なお、ゴルフイベントしおり画面G10において予約ボタンBa5がクリックされた場合、当該しおり表示情報に基づいて、ゴルフ場の予約が実行される。
具体的には、予約ボタンBa5がクリックされると、サービスプランを選択する画面(図示省略)が表示され、当該画面においてサービスプランを選択して予約を実行すると、ゴルフ予約しおり画面G13が表示される。
この場合、ゴルフ場の予約に用いられる、ゴルフ場の予約に係る情報のうち、プレー予定日、プレー開始予定時刻、プレー予定人数、予約組数、ゴルフイベントへの参加者のプロフィール情報、及び、ゴルフ場を示す情報は、ゴルフイベントに関する設定情報に含まれる、ゴルフイベントの開催予定日、開始予定時刻、参加者のプロフィール情報、及び、ゴルフ場を示す情報に基づいて生成される。
<4.実施形態のまとめ>
本実施形態では、ゴルフイベントへの参加者の自宅等からゴルフ場に移動するための所要時間に基づいて、ゴルフの開始時刻が互いに異なる複数の組に参加者を割り振る。このため、自宅等からゴルフ場までの所要時間が長い1の参加者のゴルフの開始時刻を、他の参加者よりも遅くすることができ、当該1の参加者に過度な早起きを強いることをなるべく防止するとともに、当該1の参加者が遅刻する可能性を低減させることができ、円滑なゴルフイベントの遂行が可能となる。
また、情報提供サーバ1は、ゴルフイベントしおり作成サービスにおいて、割振処理を実行することで、参加者の組み割りを自動で実行するため、当該ゴルフイベントの幹事は、ゴルフイベントへの参加者の自宅等及びゴルフイベントを開催するゴルフ場の地理的条件を考慮して組み割りする作業から解放され、ゴルフイベントを開催する幹事の負担を軽減することが可能となる。
<B.変形例>
本発明は、上述した各実施形態に限定されるものではなく、以下に述べる各種の変形が可能である。また、各変形例及び各実施形態は、適宜、組み合わせてもよいことは勿論である。
<変形例1>
上述した実施形態において、ゴルフ利用者情報テーブルTBL11は、位置情報として住所情報のみを記憶するものであるが、住所情報に加えて経緯度情報を記憶するものであってもよい。この場合、プロフィール設定変更画面G2を用いて、ゴルフ利用者U1の住所情報を情報提供サーバ1に登録するときに、情報提供サーバ1は、当該登録される住所情報に対応する経緯度情報を地図情報サーバ4から取得し、当該取得した経緯度情報を、ゴルフ利用者情報テーブルTBL11に記録させるものであればよい。
同様に、ゴルフ場情報テーブルTBL12も、住所情報に加えて経緯度情報を記憶するものであってもよい。
ゴルフ利用者情報テーブルTBL11及びゴルフ場情報テーブルTBL12が、経緯度情報を記憶している場合、ゴルフイベントのしおりを作成する処理のうち、住所情報に基づいて経緯度情報を取得する処理(ステップS124、S420、S421、S125)は、ゴルフイベントの参加者のうち、ゴルフ利用者U1以外についてのみ行えばよい。
この場合、ステップS125において取得する、ゴルフ利用者U1以外のゴルフイベントへの参加者の自宅等の経緯度情報を、参加者管理テーブルTBL14に記憶させるものであってもよい。
<変形例2>
上述した実施形態及び変形例において、地図情報サーバ4は、2つの地点の位置を表す2つの経緯度情報に基づいて、当該2つの地点の間を移動するための所要時間を演算するが、本発明はこのような態様に限定されるものではなく、地図情報サーバ4は、2つの地点の位置を表す2つの住所情報に基づいて、当該2つの地点の間を移動するための所要時間を演算するものであってもよい。
この場合、情報提供システム100は、ゴルフイベントのしおりを作成する処理において、ステップS420、S421、S125、S126を省略することができる。すなわち、この場合、情報提供サーバ1は、位置情報取得部11を備えないものであってもよい。
<変形例3>
上述した実施形態及び変形例において、情報提供システム100は地図情報サーバ4を備えるが、本発明はこのような構成に限定されるものではなく、情報提供システム100は地図情報サーバ4を備えず、情報提供サーバ1が地図情報サーバ4により実現される機能を備えるものであってもよい。
図37は、本変形例に係る情報提供システム100Aのブロック図である。情報提供システム100Aは、地図情報サーバ4を備えない点、及び、情報提供サーバ1の代わりに情報提供サーバ1Aを備える点を除き、上述した情報提供システム100と同様に構成されている。情報提供サーバ1Aは、演算部41を備える点、及び、記憶部19に位置情報管理テーブルTBL41を格納している点、を除き、情報提供サーバ1と同様に構成されている。
<変形例4>
上述した実施形態及び変形例に係る情報提供システム(情報提供システム100、または、情報提供システム100A)では、外部管理サーバ3において友達情報を管理し、情報提供サーバ(情報提供サーバ1、または、情報提供サーバ1A)は、友達情報を独自に管理していないが、本発明はこのような態様に限定されるものではなく、情報提供サーバで友達情報を独自に管理するものであってもよい。
図38に、本変形例に係る情報提供システム100Bを示す。情報提供システム100Bは、外部管理サーバ3を備えない点、及び、情報提供サーバ1の代わりに情報提供サーバ1Bを備える点を除いて、実施形態に係る情報提供システム100と同様である。情報提供サーバ1Bは、記憶部19にゴルフ友達情報テーブルTBL16が記憶されている点で、情報提供サーバ1と相違する。
図39に、ゴルフ友達情報テーブルTBL16のデータ構造を示す。ゴルフ友達情報テーブルTBL16には複数のレコードが記録されている。1つのレコードは、ゴルフの友達情報、すなわち、アクション元の識別情報、アクション先の識別情報、ステータス、及び申請日時を含む。アクション元は、ゴルフ友達申請を行ったゴルフ利用者U1であり、アクション先は、ゴルフ友達申請されたSNS利用者U2である。ステータスは、ゴルフ友達申請の状態を示し、申請中が「0」、承諾が「1」で表される。
この情報提供システム100Bでは、上述した実施形態及び変形例のようにゴルフ利用者U1がSNS利用者U2に含まれるといった関係はない。すなわち、図40に示すように、情報提供サーバ1Bは、所定のゴルフ利用者U1aと友達関係を有するゴルフ利用者U1を「所定のゴルフ利用者U1aのゴルフ友達Ug」として管理する。また、情報提供サーバ1Bは、所定のゴルフ利用者U1aと友達関係を有するゴルフ友達Ugと更に友達関係を有するゴルフ利用者U1を「所定のゴルフ利用者U1aのゴルフ友達のゴルフ友達Ugg」として管理する。すなわち、情報提供サーバ1Bは、記憶部19に記憶されている友達情報及び所定のゴルフ利用者U1aの識別情報UIDに基づいて、所定のゴルフ利用者U1aと友達関係を有するゴルフ利用者U1であるゴルフ友達Ug、及び、当該ゴルフ友達Ugと友達関係を有するゴルフ利用者U1であるゴルフ友達のゴルフ友達Uggを関係ゴルフ利用者Ucnとして特定可能である。
なお、この場合、記憶部19には、ゴルフ利用者U1の個人情報(つまり、氏名、年齢、勤務先、プロフィール画像Pgの格納先、等)が記憶されていることが好ましい。また、本変形例において、友達情報は、記憶部19から取得されるものであればよい。
<変形例5>
上述した実施形態及び変形例に係る情報提供システムでは、情報提供サーバ(情報提供サーバ1、1A、または、1B)は、記憶部19を備えるが、本発明はこのような構成に限定されるものではなく、情報提供サーバは記憶部19を備えないものであってもよい。
図41に、本変形例に係る情報提供システム100Cを示す。情報提供システム100Cは、データベースサーバ9を備える点、及び、情報提供サーバ1の代わりに情報提供サーバ1Cを備える点を除いて、実施形態に係る情報提供システム100と同様である。情報提供サーバ1Cは、イベント情報取得部16及び予約情報取得部17を備える点、並びに、記憶部19を備えない点を除き、情報提供サーバ1と同様に構成される。
データベースサーバ9は、ゴルフ利用者情報テーブルTBL11、ゴルフ場情報テーブルTBL12、イベント管理テーブルTBL13、参加者管理テーブルTBL14、及び、予約情報テーブルTBL15を格納した記憶部を備える。
情報提供サーバ1Cが備えるイベント情報取得部16は、データベースサーバ9に格納されているイベント管理テーブルTBL13が記憶するイベント情報を取得可能である。
情報提供サーバ1Cが備える人数情報取得部12は、イベント情報取得部16が取得するイベント情報から人数情報を取得する。
また、情報提供サーバ1Cが備える特定部13は、イベント情報取得部16が取得するイベント情報に基づいて組の個数を特定する。
<変形例6>
上述した実施形態及び変形例に係る情報提供システムでは、情報提供サーバ(情報提供サーバ1、1A、1B、または、1C)は、ゴルフ情報アプリケーションサービス、及び、ゴルフ場予約アプリケーションサービスを提供するが、本発明はこのような態様に限定されるものではなく、情報提供サーバはゴルフ情報アプリケーションサービスのみを提供するものであってもよい。
図42に、本変形例に係る情報提供システム100Dを示す。情報提供システム100Dは、情報提供サーバ1の代わりに情報提供サーバ1Dを備える点を除いて、実施形態に係る情報提供システム100と同様である。情報提供サーバ1Dは、記憶部19が予約情報テーブルTBL15を格納していない点を除き、情報提供サーバ1と同様に構成される。
情報提供サーバ1Dは、ゴルフ情報アプリケーションサービスに係るトップ画面G1〜ゴルフイベントしおり画面G10を提供するが、ゴルフ場予約アプリケーションサービスに係るサービスプラン選択画面G11〜ゴルフ予約しおり画面G13は提供しない点で、実施形態に係る情報提供サーバ1と相違する。
<変形例7>
上述した実施形態及び変形例に係る情報提供サーバ(情報提供サーバ1、1A、1B、1C、または、1D)は、端末装置6と通信が可能であるが、本発明はこれに限定されるものではなく、情報提供サーバは、端末装置6と通信を行わないものであってもよい。
例えば、端末装置6と通信を行うことのできるWebサーバが存在する場合、情報提供サーバは、当該Webサーバとの間で通信を行うことのできるものであってもよい。
<変形例8>
上述した実施形態及び変形例に係る情報提供システムは、ゴルフ利用者U1にプロフィール設定変更画面G2を含むマイページを提供し、ゴルフ利用者U1は当該プロフィール設定変更画面G2から自宅等の住所を登録することができるが、本発明はこれに限定されるものではなく、ゴルフ利用者U1の端末装置6が例えば、携帯電話機、スマートフォン、等の場合、端末装置6の備えるGPS機能を用いて自宅等の住所または経緯度を登録できるものであってもよい。
<変形例9>
上述した実施形態及び変形例に係る情報提供システムでは、経緯度情報を用いて説明を行ったが、これに限られるものではなく、経緯度情報を所定の座標系に変換した値を用いても良い。すなわち、経緯度情報と同等の機能を果たし得る値であれば本発明に含まれるものである。
<変形例10>
上述した実施形態及び変形例では、ゴルフを一例として説明したが、本発明はこれに限定されるものではなく、参加者を複数の組に割り振り、組ごとの開始順序が異なるのであれば、どのようなアクティビティにも適用できる。ここで、アクティビティとは人の行動を意味し、例えば、テニス、卓球、サッカーなどのスポーツへの組割り、所定の作業を行うための作業者のグループ分けにも適用することができる。
すなわち、振分処理は、所定のアクティビティが行われる施設までの所要時間に基づいて行う物であればよい。
<変形例11>
上述した実施形態及び変形例では、演算部41は、2つの地点の移動に要する所要時間を演算するものであるが、本発明はこれに限定されるものではなく、移動に係る負荷の大きさの程度を表す指標値、すなわち、移動負荷指標値を演算するものであればよい。移動に係る負荷とは、所要時間の他に、移動に係る費用(交通費)、移動距離、移動の始点(例えば、参加者の自宅等)及び終点(例えば、ゴルフ場)の間の直線距離や道程、(鉄道などの交通機関で移動する場合の)乗換の回数、(自動車で移動する場合の)渋滞の程度、または、これらの組合せ等でもよい。
<変形例12>
上述した実施形態及び変形例では、利用者同士の階層的な特定の関係を表示させる装置として、情報提供サーバ1(または、1A、1B、1C、1D)及び端末装置6を一例として説明したが、本発明はこれに限定されるもではなく、パーソナルコンピュータ等の情報処理装置であってもよい。
なお、本発明における機能を実現するためのプログラムをコンピュータで読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することとしてもよい。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスクドライブ等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。また、本発明における機能またはその一部を実現するためのプログラムを配信する配信サーバ及び当該配信サーバに備えられた記憶媒体、及び当該配信サーバの外部に存在し、当該プログラムを前記配信サーバにより配信するために記憶している記憶媒体も、本発明の範囲に含むものとする。
1……情報提供サーバ、3……外部管理サーバ、4……地図情報サーバ、5……ゴルフ場サーバ、6……端末装置、11……位置情報取得部、12……人数情報取得部、13……特定部、14……割振部、15……所要時間取得部、19……記憶部、41……演算部。

Claims (13)

  1. コンピュータを、
    所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得可能な位置情報取得部と、
    前記参加者の人数を表す人数情報を取得可能な人数情報取得部と、
    前記参加者の基準地点の位置情報及び前記施設の位置情報に基づいて、
    前記参加者の基準地点と前記施設との間の移動に係る負荷の大きさの程度を表す移動負荷指標値を演算可能な演算部と、
    前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定可能な特定部と、
    前記参加者を、前記複数の組に割り振る割振処理を実行可能な割振部と、
    して機能させ、
    前記参加者が前記所定のアクティビティを開始する開始時刻は、
    前記複数の組のそれぞれで異なり、
    前記割振部は、
    前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、
    前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、
    ことを特徴とする、情報提供装置のプログラム。
  2. コンピュータを、
    所定のアクティビティへの参加者の基準地点と、前記所定のアクティビティが行われる施設と、の間の移動に係る負荷の大きさの程度を表す移動負荷指標値を取得可能な指標取得部と、
    前記参加者の人数を表す人数情報を取得可能な人数情報取得部と、
    前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定可能な特定部と、
    前記参加者を、前記複数の組に割り振る割振処理を実行可能な割振部と、
    して機能させ、
    前記参加者が前記所定のアクティビティを開始する開始時刻は、
    前記複数の組のそれぞれで異なり、
    前記割振部は、
    前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、
    前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、
    ことを特徴とする、情報提供装置のプログラム。
  3. 前記コンピュータを、
    前記所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得可能な位置情報取得部として更に機能させ、
    前記指標取得部は、
    前記移動負荷指標値を演算可能な第1外部装置に対して、前記参加者の基準地点の位置情報と前記施設の位置情報とを送信するとともに、送信された2つの位置情報に基づいて前記第1外部装置が演算した前記移動負荷指標値を取得可能である、
    ことを特徴とする、
    請求項2に記載の情報提供装置のプログラム。
  4. 前記割振部は、
    前記複数の組の各々に属する参加者の人数の最大値と最小値との差分値を最小化するように、前記割振処理を実行する、
    ことを特徴とする、
    請求項1乃至3のうちいずれか1項に記載の情報提供装置のプログラム。
  5. 所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得し、
    前記参加者の人数を表す人数情報を取得し、
    前記参加者の基準地点の位置情報及び前記施設の位置情報に基づいて、前記参加者の基準地点と前記施設との間の移動に係る負荷の大きさの程度を表す移動負荷指標値を演算し、
    前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定し、
    前記参加者を、前記複数の組に割り振る割振処理を実行し、
    前記参加者が前記所定のアクティビティを開始する開始時刻は、前記複数の組のそれぞれで異なり、
    前記割振処理において、
    前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、
    前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振る、
    ことを特徴とする、情報提供装置の制御方法。
  6. 所定のアクティビティへの参加者の基準地点と、前記所定のアクティビティが行われる施設と、の間の移動に係る負荷の大きさの程度を表す移動負荷指標値を取得し、
    前記参加者の人数を表す人数情報を取得し、
    前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定し、
    前記参加者を、前記複数の組に割り振る割振処理を実行し、
    前記参加者が前記所定のアクティビティを開始する開始時刻は、前記複数の組のそれぞれで異なり、
    前記割振処理において、
    前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、
    前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振る、
    ことを特徴とする、情報提供装置の制御方法。
  7. 前記所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得し、
    前記移動負荷指標値を取得する工程において、
    前記移動負荷指標値を演算可能な第1外部装置に対して、前記参加者の基準地点の位置情報と前記施設の位置情報とを送信するとともに、送信された2つの位置情報に基づいて前記第1外部装置が演算した前記移動負荷指標値を取得する、
    ことを特徴とする、
    請求項6に記載の情報提供装置の制御方法。
  8. 前記割振処理において、
    前記複数の組の各々に属する参加者の人数の最大値と最小値との差分値を最小化するように、前記割振処理を実行する、
    ことを特徴とする、
    請求項5乃至7のうちいずれか1項に記載の情報提供装置の制御方法。
  9. 所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得可能な位置情報取得部と、
    前記参加者の人数を表す人数情報を取得可能な人数情報取得部と、
    前記参加者の基準地点の位置情報及び前記施設の位置情報に基づいて、
    前記参加者の基準地点と前記施設との間の移動に係る負荷の大きさの程度を表す移動負荷指標値を演算可能な演算部と、
    前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定可能な特定部と、
    前記参加者を、前記複数の組に割り振る割振処理を実行可能な割振部と、
    を備え、
    前記参加者が前記所定のアクティビティを開始する開始時刻は、
    前記複数の組のそれぞれで異なり、
    前記割振部は、
    前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、
    前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、
    ことを特徴とする、情報提供装置。
  10. 所定のアクティビティへの参加者の基準地点と、前記所定のアクティビティが行われる施設と、の間の移動に係る負荷の大きさの程度を表す移動負荷指標値を取得可能な指標取得部と、
    前記参加者の人数を表す人数情報を取得可能な人数情報取得部と、
    前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定可能な特定部と、
    前記参加者を、前記複数の組に割り振る割振処理を実行可能な割振部と、
    を備え、
    前記参加者が前記所定のアクティビティを開始する開始時刻は、
    前記複数の組のそれぞれで異なり、
    前記割振部は、
    前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、
    前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、
    ことを特徴とする、情報提供装置。
  11. 前記所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得可能な位置情報取得部と、
    を備え、
    前記指標取得部は、
    前記移動負荷指標値を演算可能な第1外部装置に対して、前記参加者の基準地点の位置情報と前記施設の位置情報とを送信するとともに、送信された2つの位置情報に基づいて前記第1外部装置が演算した前記移動負荷指標値を取得可能である、
    ことを特徴とする、
    請求項10に記載の情報提供装置。
  12. 前記割振部は、
    前記複数の組の各々に属する参加者の人数の最大値と最小値との差分値を最小化するように、前記割振処理を実行する、
    ことを特徴とする、
    請求項9乃至11のうちいずれか1項に記載の情報提供装置。
  13. 所定のアクティビティへの参加者のうち所定の参加者の端末装置と、
    前記端末装置と通信可能な情報提供装置と、
    を備える情報提供システムであって、
    前記情報提供システムは、
    前記端末装置からの要求に応じて、
    前記所定のアクティビティへの参加者の基準地点の位置情報と、前記所定のアクティビティが行われる施設の位置情報と、を取得する位置情報取得部と、
    前記参加者の人数を表す人数情報を取得する人数情報取得部と、
    前記参加者の基準地点の位置情報及び前記施設の位置情報に基づいて、
    前記参加者の基準地点と前記施設との間の移動に係る負荷の大きさの程度を表す移動負荷指標値を演算する演算部と、
    前記参加者を、前記所定のアクティビティを行うための複数の組に割り振るときの、当該組の個数を特定する特定部と、
    前記参加者を、前記複数の組に割り振る割振処理を実行する割振部と、
    前記割振部による割振処理の結果を前記端末装置に通知する通知部と、
    を備え、
    前記端末装置は、
    前記所定の参加者の要求を入力可能な入力部と、
    前記通知部により通知される前記割振処理の結果を表示可能な表示部と、
    を備え、
    前記参加者が前記所定のアクティビティを開始する開始時刻は、
    前記複数の組のそれぞれで異なり、
    前記割振部は、
    前記人数情報、前記組の個数、及び、前記移動負荷指標値に基づいて、
    前記複数の組の各々に割り振られる参加者の人数が、各組に割り振ることのできる参加者の人数の上限値以下となり、且つ、前記移動負荷指標値が小さい順に、前記参加者を、前記開始時刻が早い組から遅い組へと割り振るように、前記割振処理を実行する、
    ことを特徴とする、情報提供システム。
JP2013017826A 2013-01-31 2013-01-31 情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラム。 Active JP6023599B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013017826A JP6023599B2 (ja) 2013-01-31 2013-01-31 情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラム。

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013017826A JP6023599B2 (ja) 2013-01-31 2013-01-31 情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラム。

Publications (2)

Publication Number Publication Date
JP2014149664A JP2014149664A (ja) 2014-08-21
JP6023599B2 true JP6023599B2 (ja) 2016-11-09

Family

ID=51572595

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013017826A Active JP6023599B2 (ja) 2013-01-31 2013-01-31 情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラム。

Country Status (1)

Country Link
JP (1) JP6023599B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6133518B2 (ja) * 2014-11-14 2017-05-24 楽天株式会社 レコメンドシステム、レコメンド方法及びレコメンドプログラム
JP2021006949A (ja) * 2019-06-28 2021-01-21 株式会社コロプラ 予約管理装置、方法及びプログラム
JP6833955B1 (ja) * 2019-11-26 2021-02-24 楽天株式会社 ゴルフ予定処理装置、ゴルフ予定処理方法、及びゴルフ予定処理プログラム
JP7048715B1 (ja) * 2020-12-28 2022-04-05 楽天グループ株式会社 予約管理システム、予約管理方法及びプログラム
JP7392930B2 (ja) * 2022-02-04 2023-12-06 株式会社球 検索サーバ、検索方法およびプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3593511B2 (ja) * 2001-07-26 2004-11-24 株式会社ウッドワン 所在位置管理方法および装置
JP2004348297A (ja) * 2003-05-20 2004-12-09 Sun Vending Kitakami:Kk ゴルフコンペ支援システム、ゴルフコンペ支援方法およびゴルフコンペ支援プログラム
JP2006180409A (ja) * 2004-12-24 2006-07-06 Nec Corp 無線ナビゲーションシステム、無線制御装置、無線ナビゲーション方法及び無線ナビゲーションプログラム
JP2006243827A (ja) * 2005-02-28 2006-09-14 Fujitsu Ltd 待ち合わせシステム
JP2008015891A (ja) * 2006-07-07 2008-01-24 Nec Corp 呼び出し案内システム及び呼び出し案内方法
JP2008192056A (ja) * 2007-02-07 2008-08-21 Nec Corp ゴルフコンペ支援システム及び支援方法
JP2010033484A (ja) * 2008-07-31 2010-02-12 Fujitsu Ltd 宴会場所推薦装置および宴会場所推薦プログラム
JP5526286B2 (ja) * 2010-05-27 2014-06-18 ノキア コーポレイション 拡張されたコンテンツタグ共有のための方法及び装置

Also Published As

Publication number Publication date
JP2014149664A (ja) 2014-08-21

Similar Documents

Publication Publication Date Title
US11263618B2 (en) Information processing method and apparatus
JP6023599B2 (ja) 情報提供装置、情報提供システム、情報提供装置の制御方法、及び、情報提供装置のプログラム。
CN104205152B (zh) 媒体内容投票、排序以及播放系统
US9087320B2 (en) Sports collaboration and communication platform
US20140278834A1 (en) Voting on actions for an event
US20150006209A1 (en) Method and system for building event based travel
CN110119822A (zh) 景区管理、行程规划方法、客户端和服务器
CN104813144B (zh) 管理装置、服务提供系统、管理装置的控制方法以及计算机可读取的记录介质
US20130274905A1 (en) Golf scoring and tracking system
JP6529469B2 (ja) サーバ、その制御方法及びその制御プログラム
JP6124000B2 (ja) 管理装置、サービス提供システム、管理装置の制御方法、及び、管理装置のプログラム。
JP6719186B2 (ja) サーバ、その制御方法及びその制御プログラム
JP2008140125A (ja) サービス予約システム、予約登録装置、参加者募集方法及び参加者募集処理プログラム
US20120289344A1 (en) Organization, management, and execution of tournament competition with geographically diverse participants
JP6643809B2 (ja) サーバにおけるイベント開催予定施設決定方法
JP5911788B2 (ja) 情報提供装置のプログラム、情報提供装置の制御方法、情報提供装置、及び、情報提供システム
JP2005084797A (ja) ゴルフ場予約システム、ゴルフ場予約方法及びそのプログラム
WO2013118349A1 (ja) サーバ、サーバの制御方法および記録媒体
JP2014146188A (ja) 情報提供装置のプログラム、情報提供装置の制御方法、情報提供装置、及び、情報提供システム
KR20150117209A (ko) 여행 계획 시스템
JP5820360B2 (ja) 管理装置、サービス提供システム、管理装置の制御方法、及び、管理装置のプログラム。
JP5964257B2 (ja) 予約管理装置のプログラム、予約管理装置の制御方法、予約管理装置、及び、予約管理システム
KR102301025B1 (ko) 데이터 관리 시스템에서의 비-표준 데이터 관리
JP5900404B2 (ja) マッチング予約システム
JP5961131B2 (ja) 予約管理装置のプログラム、予約管理装置の制御方法、予約管理装置、及び、予約管理システム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150414

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151021

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160915

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160927

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161007

R150 Certificate of patent or registration of utility model

Ref document number: 6023599

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250