(58)【調査した分野】(Int.Cl.,DB名)
前記ユーザ抽出部は、前記着目ユーザの前記プロフィール情報における都道府県の項目に登録された都道府県と一致または隣接関係にある都道府県が前記プロフィール情報に含まれるユーザであることを第2条件として、前記第3関係ユーザを抽出することを特徴とする請求項1に記載の情報提供装置のプログラム。
前記ユーザ抽出部は、前記着目ユーザの前記プロフィール情報における性別の項目に登録された性別と一致または異なる性別が前記プロフィール情報に含まれるユーザであることを第2条件として、前記第3関係ユーザを抽出することを特徴とする請求項1または請求項2に記載の情報提供装置のプログラム。
前記ユーザ抽出部は、前記プロフィール情報における項目から任意の項目を選択し、選択した項目において前記着目ユーザが登録している内容が、前記プロフィール情報に含まれるユーザであることを第2条件として、前記第3関係ユーザを抽出することを特徴とする請求項1ないし請求項3のいずれか一に記載の情報提供装置のプログラム。
前記ユーザ抽出部は、前記表示対象ユーザとして確定された回数が所定回数に満たないことを第3条件とし、前記第1条件及び前記第2条件に加えて、前記第3条件を満たすユーザを第3関係ユーザとして抽出することを特徴とする請求項1ないし請求項4のいずれか一に記載の情報提供装置のプログラム。
前記ユーザ抽出部は、前記着目ユーザの前記プロフィール情報における都道府県の項目に登録された都道府県と一致または隣接関係にある都道府県が前記プロフィール情報に含まれるユーザであることを第2条件として、前記第3関係ユーザを抽出することを特徴とする請求項7に記載の情報提供装置。
前記ユーザ抽出部は、前記着目ユーザの前記プロフィール情報における性別の項目に登録された性別と一致または異なる性別が前記プロフィール情報に含まれるユーザであることを第2条件として、前記第3関係ユーザを抽出することを特徴とする請求項7または請求項8に記載の情報提供装置。
前記ユーザ抽出部は、前記プロフィール情報における項目から任意の項目を選択し、選択した項目において前記着目ユーザが登録している内容が、前記プロフィール情報に含まれるユーザであることを第2条件として、前記第3関係ユーザを抽出することを特徴とする請求項7ないし請求9のいずれか一に記載の情報提供装置。
前記ユーザ抽出部は、前記表示対象ユーザとして確定された回数が所定回数に満たないことを第3条件とし、前記第1条件及び前記第2条件に加えて、前記第3条件を満たすユーザを第3関係ユーザとして抽出することを特徴とする請求項7ないし請求項10のいずれか一に記載の情報提供装置。
【発明を実施するための形態】
【0021】
以下、実施形態として、本発明に係る情報提供サーバを用いた情報提供システムについて、所定のアクティビティとしてゴルフを例に挙げて、図面を参照しつつ説明する。
<1:情報提供システムの構成>
図1は、本発明の実施形態に係る情報提供システム100のブロック図である。この情報提供システム100は、インターネットなどの通信網NETを介して、ゴルフ情報サービスを提供する情報提供装置の一例としての情報提供サーバ1と、ゴルフを行うユーザの端末装置2とを備える。
【0022】
ユーザの端末装置2は、通信網NETを介した通信が可能であり、例えば、パーソナルコンピュータ、携帯電話機、スマートフォン、タブレット端末などが該当する。
情報提供サーバ1は、特定のサービスを提供する。本実施形態の情報提供サーバ1は、ゴルフ情報サービス、例えば、各ユーザのゴルフについての好みやスタイルとマッチした他のユーザを紹介するゴルファーマッチングサービスをユーザに提供する。
本実施形態では、ゴルフ情報アプリケーションのプログラムを情報提供サーバ1で実行することによりゴルフ情報サービスが提供される。但し、これらのサービスの提供は一例であり、情報提供サーバ1は、ゲームなどのアプリケーションの提供、ホテルの予約などを含む旅行情報の提供、コンサート情報の提供、サービスや物品の販売に関する情報の提供を含んでいてもよい。
【0023】
図1を参照して、情報提供サーバ1の機能を説明する。情報提供サーバ1は、ユーザ情報テーブルTBL11、都道府県テーブルTBL12、条件テーブルTBL13、隣接県テーブルTBL14、設定値管理マスタテーブルTBL15、表示対象ユーザテーブルTBL16を記憶した記憶部15を備える。また、記憶部15には、情報提供サーバ1を制御するプログラムが記憶されている。ユーザ情報テーブルTBL11には、ユーザを一意に識別する識別情報UIDなどが格納されている。都道府県テーブルTBL12には、都道府県を一意に識別する都道府県IDが格納されている。条件テーブルTBL13には、ゴルファーマッチング処理の際に用いる条件情報が格納されている。隣接県テーブルTBL14には、各都道府県と隣接する都道府県についての隣接都道府県情報が格納されている。設定値管理マスタテーブルTBL15(TBL15a〜TBL15p)には、各種設定値が記憶されている。表示対象ユーザテーブルTBL16には、ゴルフ情報アプリケーションへの直近7回のログイン時に、後述する各ユーザのマイページのお勧めユーザ表示領域に表示されたユーザのUIDが、ユーザごとに記憶されている。詳しくは後述する。
【0024】
情報提供サーバ1は、プロフィール情報管理部10と、ユーザ抽出部11と、表示対象ユーザ確定部12と、通知部13と、上述した記憶部15とを備える。
プロフィール情報管理部10は、ゴルフ情報サービス及びゴルファーマッチングサービスに関するユーザのプロフィール情報を管理する。プロフィール情報には、性別、ゴルファータイプ、普段のスコア、ゴルフスタイル、ゴルフ仲間志向等が含まれる。詳しくは後述する。
ユーザ抽出部11は、全てのユーザのうち、第1条件及び第2条件を少なくとも満たすユーザ(第3関係ユーザ)を抽出する。本実施形態では、第1条件及び第2条件は以下の通りである。
第1条件:全てのユーザのうちの少なくとも一のユーザを着目ユーザとし、着目ユーザに対して友達関係にあるユーザ(第1関係ユーザ:以下、「直接ゴルフ友達」と称する)と、直接ゴルフ友達のゴルフ友達(第2関係ユーザ:以下、「間接ゴルフ友達」と称する)とを、全てのユーザから除いたユーザであること。
第2条件:着目ユーザのプロフィール情報のうち、少なくとも一の項目の内容と所定の関係にある内容がプロフィール情報に含まれるユーザであること。
例えば、「都道府県」を第2条件における「項目」とすると、着目ユーザがプロフィール情報として登録した都道府県と一致または隣接する都道府県を、自己のプロフィール情報に登録しているユーザは、第2条件を満たすことになる。詳しくは後述する。
表示対象ユーザ確定部12は、ユーザ抽出部11によって抽出されたユーザのうち、着目ユーザの端末装置2に表示させる所定数の表示対象ユーザを確定する。
通知部13は、表示対象ユーザ確定部12によって確定された表示対象ユーザを、着目ユーザの端末装置2に表示可能に通知する。
【0025】
図1を参照して、ユーザの端末装置2の機能を説明する。端末装置2は、入力部21と、表示部22とを備える。入力部21は、ユーザのプロフィール情報を入力すると共に、ゴルフ情報サービスを利用するための種々の情報を入力する。表示部22は、プロフィール情報を入力するための画面、及びゴルフ情報サービスにおける種々の画面等を表示する。
【0026】
図2乃至
図4にユーザ情報テーブルTBL11のデータ構造を示す。ユーザ情報テーブルTBL11は、一つのテーブルであるが、多数のフィールドを備えているため、便宜上、
図2乃至
図4に分けて記載する。ユーザ情報テーブルTBL11には登録情報として複数のレコードが記憶されている。1つのレコードは、ゴルフユーザを一意に識別する識別情報UID、性別、都道府県ID、市町村以下のテキストデータ、年齢、車所持の有無、ゴルフ場への移動手段、活動エリア、ゴルフ歴、ラウンド頻度、普段のスコア、自己ベストスコア、ハンディキャップ、ゴルファータイプ、ゴルフスタイル、ゴルフ仲間志向、プランスタイル、日程・予算プラン、ゴルフ場の選定基準、難易度の好み、コースレイアウトの好み、コース起伏の好み、フェアウェイの広さの好み、距離の好み、OBエリアの多寡、マッチング等のフィールドが含まれる。
【0027】
本実施形態では、「識別情報UID」のフィールドには、ゴルフ情報サービスの利用登録を行った際に、各ゴルフユーザに割り当てられ、ゴルフユーザを一意に識別する識別情報UIDが記録される。「性別」のフィールドには、ゴルフユーザが男性であるか、あるいは女性であるかを示す情報が記録される。
【0028】
「都道府県ID」のフィールドには、都道府県名を一意に識別する都道府県IDが記録される。
図6に示す都道府県テーブルTBL12を参照することにより、各都道府県IDに対応する都道府県名を取得可能になっている。
【0029】
「市町村以下のテキストデータ」のフィールドには、市町村以下の名称がテキストデータで記録される。但し、市町村以下の名称は入力が任意であり、未入力の場合には「null」が記録される。
【0030】
「年齢」のフィールドには、ゴルフユーザの年齢が記録される。「車所持」のフィールドには、ゴルフユーザが車を所持しているか否かの情報が記録される。ゴルフユーザが車を所持している場合には「有」が記録され、所持していない場合には「無」が記録される。
【0031】
「ゴルフ場への移動手段」のフィールドには、ゴルフ場への移動手段を示す番号が記録される。ゴルフ場への移動手段を示す番号の内容は、
図7の設定値管理マスタテーブルTBL15aに示される。番号が「0」の場合には「マイカーが多い」、「1」の場合には「人を乗せることが多い」、「2」の場合には「乗せてもらうことが多い」、「3」の場合には「レンタカーが多い」、「4」の場合には「電車が多い」、「5」の場合には「その他」をそれぞれ示す。
【0032】
「活動エリア」のフィールドには、ゴルフユーザがゴルフ場を利用する地域がテキストデータで記録される。但し、地域名称は入力が任意であり、未入力の場合には「null」が記録される。
【0033】
「ゴルフ歴」のフィールドには、ゴルフユーザのゴルフ歴を示す番号が記録される。ゴルフ歴を示す番号の内容は、
図8の設定値管理マスタテーブルTBL15bに示される。番号が「0」の場合には「これから(練習のみ)」、「1」の場合には「1年未満」、「2」の場合には「1年以上〜5年未満」、「3」の場合には「5年以上〜10年未満」、「4」の場合には「10年以上〜20年未満」、「5」の場合には「20年以上」をそれぞれ示す。
【0034】
「ラウンド頻度」のフィールドには、ゴルフユーザのラウンド頻度を示す番号が記録される。ラウンド頻度を示す番号の内容は、
図9の設定値管理マスタテーブルTBL15cに示される。番号が「0」の場合には「ラウンド未経験」、「1」の場合には「1回以下」、「2」の場合には「2〜5回」、「3」の場合には「6〜10回」、「4」の場合には「11〜15回」、「5」の場合には「16〜20回」、「6」の場合には「21〜40回」、「7」の場合には「41回以上」をそれぞれ示す。
【0035】
「普段のスコア」のフィールドには、ゴルフユーザの普段のスコアを示す番号が記録される。普段のスコアを示す番号の内容は、
図10の設定値管理マスタテーブルTBL15dに示される。番号が「0」の場合には「79以下」、「1」の場合には「80〜89」、「2」の場合には「90〜99」、「3」の場合には「100〜109」、「4」の場合には「110〜119」、「5」の場合には「120〜129」、「6」の場合には「130以上」、「7」の場合には「ラウンドしたことがない」をそれぞれ示す。
【0036】
「HDCP(ハンディキャップ)」のフィールドには、ゴルフユーザのハンディキャップがテキストデータで記録される。但し、ハンディキャップは入力が任意であり、未入力の場合には「null」が記録される。
【0037】
「ゴルファータイプ」のフィールドには、ゴルフユーザのゴルファータイプを示す番号が記録される。ゴルファータイプを示す番号の内容は、
図11の設定値管理マスタテーブルTBL15eに示される。番号が「0」の場合には「エンジョイゴルファー」、「1」の場合には「アスリートゴルファー」をそれぞれ示す。「エンジョイゴルファー」とは、スコアの良し悪しよりも、ゴルフを楽しむことを重視するタイプのゴルファーの意である。また、「アスリートゴルファー」とは、プロゴルファーのように、スコアの良し悪しを重視するタイプのゴルファーの意である。
【0038】
「ゴルフスタイル」のフィールドには、ゴルフユーザのゴルフスタイルを示す番号が記録される。ゴルフスタイルを示す番号の内容は、
図12の設定値管理マスタテーブルTBL15fに示される。番号が「0」の場合には「初心者も大歓迎 ラウンドサポートします」、「1」の場合には「初心者とでも楽しめる人とプレーしたい」、「2」の場合には「自分より上手な人と一緒にプレーしたい」、「3」の場合には「自分と同じレベルの人とプレーしたい」、「4」の場合には「日程調整やゴルフ場予約は自分でやるタイプ」、「5」の場合には「日程調整やゴルフ場予約は苦手なタイプ」をそれぞれ示す。
【0039】
「ゴルフ仲間志向」のフィールドには、ゴルフユーザのゴルフ仲間に対する志向を示す番号が記録される。ゴルフ仲間に対する志向を示す番号の内容は、
図13の設定値管理マスタテーブルTBL15gに示される。番号が「0」の場合には「教えてもらえたら嬉しい」、「1」の場合には「教えることがある」、「2」の場合には「教えるのは苦手」をそれぞれ示す。
【0040】
「プランスタイル」のフィールドには、ゴルフユーザのプランスタイルを示す番号が記録される。プランスタイルを示す番号の内容は、
図14の設定値管理マスタテーブルTBL15hに示される。番号が「0」の場合には「キャディは付けたい」、「1」の場合には「セルフプレーが多い」、「2」の場合には「乗用カートでプレーしたい」、「3」の場合には「スループレーもOK」、「4」の場合には「ハーフプレーもOK」、「5」の場合には「早めの時間」、「6」の場合には「普通の時間」、「7」の場合には「遅めの時間」をそれぞれ示す。
【0041】
「日程・予算プラン」のフィールドには、ゴルフユーザがよく利用する日程と予算のプランを示す番号が記録される。日程と予算のプランを示す番号の内容は、
図15の設定値管理マスタテーブルTBL15iに示される。番号が「0」の場合には「平日プレーが多い、値段は気にしない」、「1」の場合には「平日プレーが多い、7,000円以下」、「2」の場合には「平日プレーが多い、7,000〜10,000円」、「3」の場合には「平日プレーが多い、10,000〜15,000円」、「4」の場合には「平日プレーが多い、15,000円以上」、「5」の場合には「休日プレーが多い、値段は気にしない」、「6」の場合には「休日プレーが多い、10,000円以下」、「7」の場合には「休日プレーが多い、10,000〜15,000円」、「8」の場合には「休日プレーが多い、15,000〜20,000円」、「9」の場合には「休日プレーが多い、20,000円以上」をそれぞれ示す。
【0042】
「ゴルフ場の選定基準」のフィールドには、ゴルフユーザのゴルフ場の選定基準を示す番号が記録される。ゴルフ場の選定基準を示す番号の内容は、
図16の設定値管理マスタテーブルTBL15jに示される。番号が「0」の場合には「自宅からの距離 1時間以内」、「1」の場合には「自宅からの距離 2時間以内」、「2」の場合には「自宅からの距離 2時間以上」、「3」の場合には「コースの質」、「4」の場合には「施設の豪華さ」、「5」の場合には「施設の充実(温泉など)」、「6」の場合には「ランチの美味しさ」、「7」の場合には「あまり混んでいない」、「8」の場合には「スタッフのおもてなし」、「9」の場合には「名門コース」、「10」の場合には「料金」、「11」の場合には「その他」をそれぞれ示す。
【0043】
「難易度」のフィールドには、ゴルフユーザのコースの難易度についての好みを示す番号が記録される。難易度についての好みを示す番号の内容は、
図17の設定値管理マスタテーブルTBL15kに示される。番号が「0」の場合には「戦略性の高いコース」、「1」の場合には「やさしめのコース」をそれぞれ示す。
【0044】
「コースレイアウト」のフィールドには、ゴルフユーザのコースレイアウトについての好みを示す番号が記録される。コースレイアウトについての好みを示す番号の内容は、
図18の設定値管理マスタテーブルTBL15lに示される。番号が「0」の場合には「トリッキーなコース」、「1」の場合には「オーソドックスなコース」をそれぞれ示す。
【0045】
「コース起伏」のフィールドには、ゴルフユーザのコースの起伏についての好みを示す番号が記録される。コースの起伏についての好みを示す番号の内容は、
図19の設定値管理マスタテーブルTBL15mに示される。番号が「0」の場合には「激しい」、「1」の場合には「普通」、「2」の場合には「緩やか」をそれぞれ示す。
【0046】
「フェアウェイの広さ」のフィールドには、ゴルフユーザのフェアウェイの広さについての好みを示す番号が記録される。フェアウェイの広さについての好みを示す番号の内容は、
図20の設定値管理マスタテーブルTBL15nに示される。番号が「0」の場合には「広い」、「1」の場合には「普通」、「2」の場合には「狭い」をそれぞれ示す。
【0047】
「距離」のフィールドには、ゴルフユーザのコースの距離についての好みを示す番号が記録される。コースの距離についての好みを示す番号の内容は、
図21の設定値管理マスタテーブルTBL15oに示される。番号が「0」の場合には「長い」、「1」の場合には「普通」、「2」の場合には「短い」をそれぞれ示す。
【0048】
「OB」のフィールドには、ゴルフユーザのコースのOBの多寡についての好みを示す番号が記録される。OBの多寡についての好みを示す番号の内容は、
図22の設定値管理マスタテーブルTBL15pに示される。番号が「0」の場合には「多い」、「1」の場合には「普通」、「2」の場合には「少ない」をそれぞれ示す。
【0049】
「マッチング」のフィールドには、後述するゴルファーマッチング処理を行うか否かを選択するためのONまたはOFFの情報が記憶される。ONが記憶されている場合には、ゴルファーマッチング処理が行われ、OFFが記憶されている場合には、ゴルファーマッチング処理が行われる。詳しくは後述する。
【0050】
なお、ユーザ情報テーブルTBL11のレコードには、その他の情報を記憶してもよい。また、ユーザ情報テーブルTBL11に記憶すべき情報として、ユーザの識別情報UIDは必須であるが、その他の情報は省略してもよい。上述の例では、ユーザ情報テーブルTBL11へのテキストデータの直接記録と、キーとなる情報(例えば、識別情報UID)で紐づけた複数のテーブルを使用したリレーショナルデータベースとを混在させた。しかし、全てのデータをユーザ情報テーブルTBL11に記録してもよいし、全てのデータについてリレーショナルデータベースとしもよい。
【0051】
図23に情報提供サーバ1の構成を示す。この図に示すように、情報提供サーバ1は、装置全体を制御するCPU(Central Processing Unit)30、CPU30の作業領域として機能するRAM(Random Access Memory)31、ブートプログラムなどを記憶したROM(Read Only Memory)32、各種のプログラムやデータを記憶するハードディスクドライブ33、キーボードやマウスなどを含む入力部34、画像を表示するディスプレイ35、通信網NETを介して外部の装置と通信を行う通信インターフェース36、及びコンパクトディスクなどの情報記憶媒体を読み取る読取装置37を備える。ハードディスクドライブ33は、上述した記憶部15に相当し、ユーザ情報テーブルTBL11、都道府県テーブルTBL12、条件テーブルTBL13、設定値管理マスタテーブルTBL15を格納する。
なお、情報提供サーバ1においては、CPU30は、プロフィール情報管理部10、ユーザ抽出部11、及び表示対象ユーザ確定部12として機能する。また、CPU30及び通信インターフェース36は、通知部13として機能する。
【0052】
図24に端末装置2の構成を示す。端末装置2は、装置全体を制御するCPU40、CPU40の作業領域として機能するRAM41、ブートプログラムなどを記憶したROM42、各種のプログラムやデータを記憶する記憶装置43、テンキーなどを含む入力部44、画像を表示するディスプレイ45、及び通信網NETを介して外部の装置と通信を行う通信インターフェース46を備える。なお、入力部がタッチパネルである場合は、ディスプレイ45がタッチパネルである入力部44を兼ねることとなる。入力部44は単一のデバイスで構成しても、複数のデバイスを組み合わせて構成しても良い。
【0053】
<2:情報提供システムの動作>
本実施形態の情報提供システム100では、ユーザの端末装置2において、直接ゴルフ友達や間接ゴルフ友達をゴルフに誘う、あるいは、ゴルフ場を探す等のアクティビティを行うことが可能なゴルフ用のSNS(Social Networking Service)の画面を表示させることができる。
【0054】
<2−1:端末装置2におけるマイページの表示処理>
端末装置2のユーザが、ウェブブラウザ上で動作したり、端末装置2にインストールされて動作するアプリケーションを起動して、SNSサイトにアクセスすると、端末装置2のディスプレイ45には、ログイン画面が表示される。このログイン画面には、識別情報UIDとパスワードとを入力する入力ボックスが表示される。ユーザが、入力ボックスに入力して送信ボタンを押すと、端末装置2のCPU40は、入力した識別情報UID及びパスワードを含むログイン要求を情報提供サーバ1に送信する。
【0055】
ログイン要求を情報提供サーバ1のCPU30が受信すると、情報提供サーバ1は認証処理を実行する。具体的には、情報提供サーバ1のCPU30は、識別情報UIDとパスワードとの組みが記憶されているか否かを判定し、判定条件を充足する場合にはログインを許可し、判定条件が充足されない場合にはログインを拒絶する。なお、パスワードは、上述したユーザ情報テーブルTBL11に記録するようにしてもよいし、ユーザ情報テーブルTBL11とは別のテーブルを用意し、識別情報UIDとパスワードとを関連付けて記録するようにしてもよい。
そして、CPU30は判定結果を示すログイン応答を端末装置2に送信する。一度、端末装置2で入力された識別情報UIDとパスワードとの組みは、端末装置2に所定期間記憶されて、当該所定期間内であればログインを省略可能としてもよい。
【0056】
この後、ユーザがメニューの中からゴルフ情報アプリケーションを選択すると、端末装置2のCPU40は、マイページ閲覧要求を情報提供サーバ1に送信する。情報提供サーバ1のCPU30は、マイページ閲覧要求を受信すると、
図25に示すマイページP1の表示情報を作成し、端末装置2のディスプレイ45に表示させる。
【0057】
マイページP1は、
図25に示すように、メニュー表示領域A1、ボタン表示領域A3、お勧めユーザ表示領域A7、お知らせ表示領域A8、日付表示領域A9、広告表示領域A10、新加入者表示領域A11、及び友達情報ボタンA12を備えている。
【0058】
メニュー表示領域A1には、「TOP」アイコンA2の他、「ゴルフに行く」、「スケジュール」、「友達招待」、及び「ユーザ設定」アイコンA13が表示されており、各アイコンが押下されることにより、各種の機能を実行させることができる。
図25はトップページ、即ちログイン後に表示される最初の状態、または「TOP」アイコンA2が押下された状態を示している。
【0059】
ボタン表示領域A3には、「友達と行く」ボタン、「仕事仲間と行く」ボタン、「日程を設定して行く」ボタン、及び「ゴルフ場を探す」ボタンが表示されている。これらのボタンは、いずれも、直接ゴルフ友達や間接ゴルフ友達をゴルフに誘うための機能を実行させるためのボタンである。
【0060】
お勧めユーザ表示領域A7には、ゴルファーマッチング処理によって抽出された、各ユーザのゴルフについての好みやスタイル等とマッチするユーザが表示される。お知らせ表示領域A8には、SNSの運営会社側からのお知らせが表示される。日付表示領域A9には、当該ページを表示している日の日付と曜日が表示される。広告表示領域A10には、ゴルフ場等の広告が表示される。新加入者表示領域A11には、新たにSNSに加入したユーザが表示される。友達情報ボタンA12が押下された場合には、直接ゴルフ友達や間接ゴルフ友達についての情報が表示されるようになっている。
【0061】
<2−2:端末装置2におけるプロフィール情報の入力処理>
図25に示すメニュー表示領域A1において、「ユーザ設定」アイコンA13が押下されると、
図26に示すユーザ設定ページP2が表示される。
ユーザ設定ページP2は、マイページP1と同様のメニュー表示領域A1と、本人表示領域B1と、友達リスト表示領域B5とを備えている。
本人表示領域B1には、本人のプロフィールアイコンB2と、本人の名前B3が表示される。なお、本人のプロフィールアイコン画像の格納先、及び本人の名前は、上述したユーザ情報テーブルTBL11に記録するようにしてもよいし、識別情報UIDと関連付けた別のテーブルに記録するようにしてもよい。
ユーザ設定ページP2の初期状態においては、友達リストタブB4が選択されており、友達リストタブB4が選択された状態においては、友達リスト表示領域B5に直接ゴルフ友達のプロフィールアイコンと当該直接ゴルフ友達の名前がリスト状に表示される。また、画面を下にスクロールさせると、間接ゴルフ友達のプロフィールアイコン及び名前がリスト状に表示される。即ち本実施形態では、直接ゴルフ友達は間接ゴルフ友達よりリスト状表示の上方側に表示されるようになっている。
【0062】
ユーザ設定ページP2のプロフィールタブB6が押下されると、
図27及び
図28に示すプロフィールページP3が表示される。プロフィールページP3は、
図27に示すように、編集ボタンC1とプロフィール表示領域C2を備えている。プロフィール表示領域C2に表示される項目が多いため、プロフィール表示領域C2の後半部分は
図28に示している。プロフィール表示領域C2には、性別、年齢、勤務先、住所、車所持、ゴルフ場への移動手段、活動エリア、ゴルフ歴、ラウンド頻度、普段のスコア、自己ベスト、HDCP(ハンディキャップ)、ゴルファータイプ、ゴルフスタイル、ゴルフ仲間志向、プランスタイル、日程・予算タイプ、ゴルフ場選定基準、及びコースの好みが表示される。
【0063】
ユーザ設定ページP2において、編集ボタンC1が押下されると、
図29に示すプロフィール編集ページP4が表示される。プロフィール編集ページP4は、決定ボタンD1、戻るボタンD2、性別選択領域D3、住所(都道府県)選択領域D4、車所持選択領域D5、任意項目表示ボタンD6を備えている。
【0064】
ユーザ設定ページP2において、編集ボタンC1が押下されて表示されるプロフィール編集ページP4の初期状態においては、プロフィール情報として必須の項目である、性別、住所(都道府県)、及び車所持の項目を編集させるために、性別選択領域D3、住所(都道府県)選択領域D4、及び車所持選択領域D5だけが表示されるようになっている。
【0065】
性別選択領域D3には、「男性」と「女性」のそれぞれに対応するラジオボタンが表示されており、いずれかを選択するようになっている。住所(都道府県)選択領域D4には、プルダウンメニューで都道府県名が表示され、いずれかの都道府県名を選択するようになっている。車所持選択領域D5には、「無」と「有」のそれぞれに対応するラジオボタンが表示されており、いずれかを選択するようになっている。
【0066】
性別選択領域D3、住所(都道府県)選択領域D4、及び車所持選択領域D5のそれぞれにおいて、選択対象項目の選択を行い、決定ボタンD1が押下されると、選択された内容がユーザ情報テーブルTBL11に記録される。なお、戻るボタンD2が押下されると、
図27に示すユーザ設定ページP2が表示される。
【0067】
任意項目表示ボタンD6が押下されると、
図30乃至
図34に示すように、上述した必須の項目以外のプロフィール情報の選択項目が表示される。具体的には、
図30に示す住所(市区町村)選択領域D7、年齢選択領域D8、及びゴルフ場への移動手段選択領域D9が表示される。また、
図31に示すゴルフ活動エリア選択領域D10、ゴルフ歴選択領域D13、及びラウンド頻度選択領域D14が表示される。また、
図32に示す普段のスコア選択領域D15、自己ベスト記入領域D16、ハンディキャップ記入領域D17、ゴルファータイプ選択領域D18、及びゴルフスタイル選択領域D19が表示される。また、
図33に示すゴルフ仲間志向選択領域D20、プランスタイル選択領域D21、及び日程・予算タイプ選択領域D22が表示される。そして、
図34に示すように、ゴルフ場選定基準選択領域D23、ゴルフコースの好み選択領域D24、及びマッチングに関するチェックボックス領域D25が表示される。なお、決定ボタンD1と戻るボタンD2はプロフィール編集ページP4の最下部においても表示される。また、プロフィール編集ページP4に表示される各項目の選択領域は、端末装置2のディスプレイ45において、画面をスクロールすることにより全体を表示させることができる。
【0068】
住所(市区町村)選択領域D7には、テキスト入力欄D7aが表示されており、住所のうち、市区町村以下の内容を全角で入力するようになっている。年齢選択領域D8においては、プルダウンメニューにより年齢を選択するようになっている。ゴルフ場への移動手段選択領域D9には、「マイカーが多い」等の内容が予め表示されており、各内容に対応するチェックボックスにチェックすることにより、いずれかの内容が選択されるようになっている。
【0069】
ゴルフ活動エリア選択領域D10には、リストボタンD11と、活動エリア入力欄D12とが表示されており、リストボタンD11が押下されて表示されるリストの中から、活動エリアを選択すると、選択したエリアが活動エリア入力欄D12に表示されるようになっている。本実施形態では、このリストは図示しないが、都道府県名が表示され、この中から一または複数選択できるようになっている。ゴルフ歴選択領域D13には、「これから(練習のみ)」等の内容が予め表示されており、各内容に対応するラジオボタンにチェックすることにより、いずれかの内容が選択されるようになっている。ラウンド頻度選択領域D14には、「ラウンド未経験」等の内容が予め表示されており、各内容に対応するラジオボタンにチェックすることにより、いずれかの内容が選択されるようになっている。
【0070】
普段のスコア選択領域D15には、「〜79」等の内容が予め表示されており、各内容に対応するラジオボタンにチェックすることにより、いずれかの内容が選択されるようになっている。自己ベスト記入領域D16には、テキスト入力欄が表示されており、テキストデータにより自己のベストスコアを入力するようになっている。ハンディキャップ記入領域D17には、テキスト入力欄が表示されており、テキストデータにより自己のベストスコアを入力するようになっている。
【0071】
ゴルファータイプ選択領域D18には、「エンジョイゴルファー」と「アスリートゴルファー」が予め表示されており、それぞれに対応するチェックボックスにチェックすることにより、「エンジョイゴルファー」と「アスリートゴルファー」のいずれかが選択されるようになっている。
【0072】
ゴルフスタイル選択領域D19には、「初心者も大歓迎 ラウンドサポートします」等の内容が予め表示されており、各内容に対応するチェックボックスにチェックすることにより、いずれかの内容が選択されるようになっている。
【0073】
ゴルフ仲間志向選択領域D20には、「教えてもらえたら嬉しい」等の内容が予め表示されており、各内容に対応するラジオボタンにチェックすることにより、いずれかの内容が選択されるようになっている。
【0074】
プランスタイル選択領域D21には、「キャディは付けたい」等の内容が予め表示されており、各内容に対応するチェックボックスにチェックすることにより、いずれかの内容が選択されるようになっている。
日程・予算タイプ選択領域D22には、「平日プレーが多い」及び「値段は気にしない」等の内容が予め表示されており、各内容に対応するチェックボックスにチェックすることにより、いずれかの内容が選択されるようになっている。ゴルフ場選定基準選択領域D23には、「自宅からの距離」等の内容が予め表示されており、各内容に対応するチェックボックスにチェックすることにより、いずれかの内容が選択されるようになっている。なお、「自宅からの距離」が選択された場合には、「1時間以内」等の内容に対応ラジオボタンにチェックすることにより、どの程度の距離なのかを選択するようになっている。
【0075】
ゴルフコースの好み選択領域D24には、難易度、コースレイアウト、コース起伏、フェアウェイの広さ、距離、及びOBについての選択内容が予め表示されており、各内容に対応するチェックボックスにチェックすることにより、いずれかの内容が選択されるようになっている。
マッチングに関するチェックボックス領域D25には、ゴルファーマッチング処理を行うか否かを選択するためのONとOFFのチェックボックスが表示される。ONのチェックボックスにチェックが入れられている場合には、ゴルファーマッチング処理が行われ、OFFのチェックボックスにチェックが入れられている場合には、ゴルファーマッチング処理は行われない。初期状態では、OFFのチェックボックスにチェックが入っている。
【0076】
<2−3:ゴルファーマッチング処理>
次に、本実施形態におけるゴルファーマッチング処理について説明する。以上のようなプロフィール編集ページP4において、各項目の選択が行われ、決定ボタンD1が押下されると、情報提供サーバ1のCPU30は、テキストデータについてはそのままユーザ情報テーブルTBL11に記録し、その他のデータについては、設定管理マスタテーブルTBL15a〜TBL15pを参照して、選択した内容に対応する番号をユーザ情報テーブルTBL11に記録する。
【0077】
また、チェックボックス領域D25のONのチェックボックスにチェックが行われている状態で、決定ボタンD1が押下されると、情報提供サーバ1のCPU30は、プロフィール情報を収集してもよいかどうかを確認するメッセージ画像(図示せず)をディスプレイ45に表示させる。このメッセージ画像には、承諾ボタンと拒否ボタンとが含まれており、承諾ボタンが押下された場合には、CPU30は、プロフィール編集ページP4における必須項目の入力が行われているかどうかをチェックする。
【0078】
必須項目とは、ゴルファーマッチング処理において、ユーザを抽出する際の条件として必須の項目であり、入力が行われていない必須項目がある場合には、CPU30は、当該項目への入力を促すメッセージ画像(図示せず)をディスプレイ45に表示させる。このメッセージ画像には、OKボタンとキャンセルボタンとが含まれており、OKボタンが押下された場合には、CPU30は、プロフィール編集ページP4における入力を可能にする。しかし、キャンセルボタンが押下された場合、または、プロフィール情報を収集してもよいかどうかを確認するメッセージ画像における拒否ボタンが押下された場合には、CPU30は、「マッチングをOFFにしてもよいですか?」というメッセージ画像(図示せず)をディスプレイ45に表示させる。このメッセージ画像には、OKボタンとキャンセルボタンとが含まれており、OKボタンが押下された場合には、CPU30は、チェックボックス領域D25のOFFのチェックボックスにチェックを行う。一方、全ての必須項目に対して入力が行われていることが確認できた場合には、CPU30は、次回のマイページP1の表示の際に、ゴルファーマッチング処理を行い、お勧めユーザ表示領域A7にお勧めのユーザを表示させる。
【0079】
図43乃至
図45に、ユーザを抽出する際の条件が記録された条件テーブルTBL13を示す。条件テーブルTBL13は、一つのテーブルであるが、多数の項目を備えているため、便宜上、
図43乃至
図45に分けて記載する。条件テーブルTBL13は、マッチング概要、条件出現率、自分、相手、及びプロフィール項目のフィールドを備えている。マッチング概要のフィールドには、条件の概要が記録され、条件出現率のフィールドには、各条件の出現率が記録される。自分のフィールドと相手のフィールドには、各条件が満たされると判断される基準が自分と相手について記録される。プロフィール項目のフィールドには、プロフィール編集ページP4において入力されるプロフィール項目と、各項目が任意項目か必須項目かを示す内容とが記録される。
【0080】
本実施形態では、プロフィール編集ページP4の住所(都道府県)選択領域D4、普段のスコア選択領域D15、ゴルフスタイル選択領域D19、ゴルフ仲間志向選択領域シ20、年齢選択領域D8、車所持選択領域D5、ゴルフ場への移動手段選択領域D9、及びラウンド頻度選択領域D14において入力される項目が、ゴルファーマッチング処理における必須項目となっている。
また、ゴルフ活動エリア選択領域D10、住所(市区町村)選択領域D7、ゴルフ場選定基準選択領域D23、プランスタイル選択領域D21、ゴルファータイプ選択領域D18、及び日程・予算タイプ選択領域D22において入力される項目が、ゴルファーマッチング処理における任意項目となっている。
【0081】
次に、ゴルファーマッチング処理の詳細について、
図35乃至
図39のフローチャートを参照して説明する。本実施形態においては、プロフィール編集ページP4において各項目の入力が行われ、決定ボタンD1が押下されると、入力された内容がユーザ情報テーブルTBL11に記録される。そして、マイページP1が表示されるタイミングにおいて、ユーザ情報テーブルTBL11のマッチングのフィールド(
図4)を参照し、マッチングのフィールドにONが記録されているユーザについては、情報提供サーバ1のCPU30は、ゴルファーマッチング処理を開始する。
【0082】
本実施形態のゴルファーマッチング処理は、
図35に示すように、大きく分けて第1処理から第4処理までの4つの処理から構成される。但し、常に4つの処理の全てが実行される訳ではなく、お勧めユーザ表示領域A7に表示される3名の表示対象ユーザが、いずれかの処理の終了時に確定された場合には、それ以降の処理は行われない。第1処理は地域・履歴による絞込み処理、第2処理は性別・プロフィールによる絞込み処理(異性)、第3処理は性別・プロフィールによる絞込み処理(異性)、及び第4処理は性別・プロフィールによる絞込み処理(同性)である。
【0083】
第1処理の地域・履歴による絞込み処理では、CPU30は、マイページP1が自分のページとして表示されるユーザを着目ユーザとして、着目ユーザが登録している都道府県と一致または隣接する都道府県を、自己の住所として登録しているかどうか、及び、着目ユーザの直近7回のログインでマイページP1に表示されたユーザであるかどうかを条件として、お勧めユーザの抽出を行う(S100)。
【0084】
CPU30は、第1処理の終了後に、お勧めユーザ表示領域A7に表示される3名の表示対象ユーザが確定されたと判断した場合には(S101:YES)、この時点で処理を終了し、マイページP1の表示処理へと移行する。
【0085】
しかし、CPU30は、第1処理の終了後に、お勧めユーザ表示領域A7に表示される3名の表示対象ユーザがまだ確定されていないと判断した場合には(S101:NO)、第2処理として性別・プロフィールによる絞込み処理(異性)を行う(S102)。第2処理では、CPU30は、性別情報と、プロフィール情報から出現率に基づいて特定された一の項目とを条件として、お勧めユーザの抽出を行う。
【0086】
CPU30は、第2処理の終了後に、お勧めユーザ表示領域A7に表示される3名の表示対象ユーザが確定されたと判断した場合には(S103:YES)、この時点で処理を終了し、マイページP1の表示処理へと移行する。
【0087】
しかし、CPU30は、第2処理の終了後に、お勧めユーザ表示領域A7に表示される3名の表示対象ユーザがまだ確定されていないと判断した場合には(S103:NO)、第3処理として性別・プロフィールによる絞込み処理(異性)を行う(S104)。第3処理では、CPU30は、性別情報と、第2処理では条件として使用されなかった項目であって、プロフィール情報から出現率に基づいて特定された一の項目とを条件として、お勧めユーザの抽出を行う。
【0088】
CPU30は、第3処理の終了後に、お勧めユーザ表示領域A7に表示される3名の表示対象ユーザが確定されたと判断した場合には(S105:YES)、この時点で処理を終了し、マイページP1の表示処理へと移行する。
【0089】
しかし、CPU30は、第3処理の終了後に、お勧めユーザ表示領域A7に表示される3名の表示対象ユーザがまだ確定されていないと判断した場合には(S105:NO)、第4処理として性別・プロフィールによる絞込み処理(同性)を行う(S106)。第4処理では、CPU30は、性別情報と、第3処理では条件として使用されなかった項目であって、プロフィール情報から出現率に基づいて特定された一の項目とを条件として、お勧めユーザの抽出を行う。
【0090】
<第1処理>
次に、各処理をより具体的に説明する。
図36は、第1処理としての地域・履歴による絞込み処理の詳細を示すフローチャートである。まず、CPU30は、ユーザ情報テーブルTBL11を参照して、着目ユーザが登録としている都道府県と一致または隣接関係にある都道府県を登録しているユーザを検索し、リストを作成する(S200)。都道府県が隣接関係にあるかどうかは、
図40乃至
図42に示す隣接県テーブルTBL14を参照して判断される。隣接県テーブルTBL14は一つのテーブルであるが、多数の地域について隣接県情報が記録されているので、便宜的に
図40乃至
図42に分けて示している。
例えば、
図40に示すように、着目ユーザが住所として登録している都道府県が、東京都である場合には、CPU30は、神奈川県、山梨県、埼玉県、及び千葉県が隣接県であると判断し、これらの隣接県を自己の住所として登録しているユーザを抽出し、リストを作成する。
【0091】
次に、CPU30は、作成したリストから、着目ユーザの直接ゴルフ友達となっているユーザと、間接ゴルフ友達となっているユーザを除外する(S201)。ユーザ同士がゴルフ友達になるには、まず、一のユーザが他のユーザに対して友達申請のアクションを行う。そして、当該他のユーザが承認した場合にゴルフ友達となる。本実施形態においては、一のユーザから他のユーザに対する友達申請のアクションと、そのアクションに対する承認が行われたかどうかを示す内容とが記録されたテーブルが、情報提供サーバ1の記憶部15に記憶されている。したがって、CPU30は、このテーブルを参照することによって、着目ユーザのゴルフ友達となっているユーザ(直接ゴルフ友達)と、当該直接ゴルフ友達のゴルフ友達となっているユーザ(間接ゴルフ友達)を抽出することができる。
【0092】
次に、CPU30は、ステップS201の処理の後に残ったユーザから、マイページP1のお勧めユーザ表示領域A7に直近7回のログイン時に表示されたユーザを除外する(S202)。具体的には、CPU30は、
図5に示す表示対象ユーザテーブルTBL16を参照して、UIDのフィールドに、着目ユーザのUIDが記憶されているレコードを検索する。当該レコードが検索されると、CPU30は、当該レコードの表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドに記憶されているユーザのUIDの中に、ステップS201の処理の後に残ったユーザのUIDと一致するUIDが含まれているかどうかを判断する。CPU30は、前記表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドに、当該一致するUIDが記憶されていたと判断した場合には、当該一致するUIDのユーザを、処理対象のユーザから除外する。
図5に示す表示対象ユーザテーブルTBL16の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドには、着目ユーザがログインした際に、着目ユーザのマイページP1のお勧めユーザ表示領域A7に表示される表示対象ユーザのUIDが記憶されるようになっている。お勧めユーザ表示領域A7には、3名の表示対象ユーザが表示されるので、表示対象ユーザテーブルTBL16には、表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3の3つのフィールドが用意されている。また、ゴルファーマッチング処理においては、直近7回のログイン時にお勧めユーザ表示領域A7に表示されたユーザを対象から除外する構成となっているため、1人の着目ユーザに対して、7回分の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3が記憶されるようになっている。新たな表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3が決定された際には、7回分の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のうち、2段目の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドに記憶されていたUIDは、1段目の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドに記憶される。また、3段目の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドに記憶されていたUIDは、2段目の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドに記憶される。以下同様にして、それぞれ上の段に繰り上がり、最下段には、新たに決定された表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のUIDが記憶されるようになっている。
したがって、表示対象ユーザテーブルTBL16の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドを参照することにより、直近7回のログイン時にお勧めユーザ表示領域A7に表示された表示対象ユーザが判るようになっている。
【0093】
次に、CPU30は、ステップS202の処理の後に残ったユーザの人数を確認する(S203)。CPU30は、この時点で残ったユーザの人数が3人である場合には、これらの3人のユーザの性別やゴルファータイプに関わらず、表示対象ユーザとして確定させ(S204)、処理を終了する。しかし、CPU30は、ステップS202の処理の後に残ったユーザの人数が3人未満である場合には、これらのユーザについては、性別やゴルファータイプに関わらず、表示対象ユーザとして確定させ(S205)、処理を終了する。したがって、残りの1名については、第2処理乃至第4処理のいずれかで確定することになる。また、CPU30は、ステップS202の処理の後に残ったユーザの人数が4人以上である場合には、表示対象ユーザとして確定させることはできないので、そのまま第1処理を終了し、第2処理に移行する。
【0094】
<第2処理>
次に、第2処理をより具体的に説明する。
図37は、第2処理としての性別・プロフィールによる絞込み処理(異性)の詳細を示すフローチャートである。CPU30は、第1処理で絞り込まれたユーザの人数が4人以上の場合には、これらの4人以上のユーザから、着目ユーザとは異なる性別のユーザを抽出する(S300)。また、CPU30は、第1処理で絞り込まれたユーザの人数が3人未満の場合には、第1処理で絞り込む前の全ユーザを対象として、着目ユーザとは異なる性別のユーザを抽出する(S300)。異なる性別のユーザを抽出するには、ユーザ情報テーブルTBL11に記録された性別情報を参照することにより行う。
【0095】
CPU30は、ステップS300の処理によって抽出された人数が1人の場合には、その1人は表示対象ユーザとして確定させ(S310)、処理を終了する。CPU30は、ステップS300の処理によって抽出された人数が2人以上の場合には、ステップS303の処理に移行する。また、CPU30は、ステップS300の処理によって抽出された人数が0人の場合には、ステップS300の処理の対象となったユーザが全て着目ユーザと同性ということになるので、ステップS300の処理の対象となったユーザから同性を抽出し、つまり、ステップS300の処理の対象となった全てのユーザを対象として(S302)、ステップS303の処理に移行する。
【0096】
次に、CPU30は、ステップS303の時点で抽出されているユーザの中から、第1条件を満たすユーザを抽出し、第1条件を満たすユーザの人数を確認する(S303)。第1条件とは、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて特定された1つの項目を満たすかどうかである。
例えば、第1条件として、ゴルファータイプが特定された場合には、着目ユーザのゴルファータイプをユーザ情報テーブルTBL11から読み取り、読み取ったゴルファータイプと同じタイプがユーザ情報テーブルTBL11に記録されているユーザを、ステップS303の時点で抽出されているユーザの中から抽出する。
【0097】
CPU30は、第1条件を満たすユーザの人数が1人の場合には、そのユーザについては表示対象ユーザとして確定させ(S310)、処理を終了する。しかし、第1条件を満たすユーザの人数が2人以上の場合には、ステップS305に移行する。また、第1条件を満たすユーザの人数が0人の場合には、第1条件で絞り込む前のユーザを対象として、つまり、第1条件による絞込みをスキップして(S304)、ステップS305に移行する。
【0098】
次に、CPU30は、同様にして、第2条件を満たすユーザの人数の確認(S305)、第3条件を満たすユーザの人数の確認を行う(S307)。第2条件は、第1条件として特定されなかった項目であって、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて次に特定された1つの項目を満たすかどうかである。また、第3条件は、第1条件及び第2条件として特定されなかった項目であって、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて次に特定された1つの項目を満たすかどうかである。第2条件及び第3条件を満たす人数に応じた処理についても、第1条件の場合と同様である。
【0099】
ステップS307の処理の結果、2人以上のユーザが残った場合には、残ったユーザの中から1人をランダムで抽出し、そのユーザを表示対象のユーザとして確定させ(S309)、処理を終了する。
【0100】
<第3処理>
次に、第3処理をより具体的に説明する。
図38は、第3処理としての性別・プロフィールにより絞込み処理(異性)の詳細を示すフローチャートである。CPU30は、第2処理で抽出されたユーザ以外で、第1処理で抽出された4人以上のユーザから着目ユーザと異性のユーザを抽出する(S400)。以下、CPU30は、第2処理と同様に絞込み処理を行う(S401〜S408)。但し、第1条件〜第3条件の代わりに、第1条件〜第3条件において用いられなかった条件である第4条件〜第6条件を用いる。
ステップS407の処理の結果、2人以上のユーザが残った場合には、残ったユーザの中から1人をランダムで抽出し、そのユーザを表示対象のユーザとして確定させ(S409)、処理を終了する。
【0101】
<第4処理>
次に、第4処理をより具体的に説明する。
図39は、第4処理としての性別・プロフィールにより絞込み処理(同性)の詳細を示すフローチャートである。CPU30は、第1処理で抽出された4人以上のユーザから着目ユーザと同性のユーザを抽出する(S500)。なお、第2処理と第3処理において、着目ユーザと同性のユーザを表示対象ユーザとして確定させている場合には、これらのユーザはステップS500において抽出するユーザからは除外する。
以下、CPU30は、第3処理と同様に絞込み処理を行う(S501〜S508)。但し、第4条件〜第6条件の代わりに、第1条件〜第6条件において用いられなかった条件である第7条件〜第9条件を用いる。
ステップS507の処理の結果、2人以上のユーザが残った場合には、残ったユーザの中から1人をランダムで抽出し、そのユーザを表示対象のユーザとして確定させ(S509)、処理を終了する。
【0102】
<表示処理>
以上のようにして、3名の表示対象ユーザを確定させた後、CPU30は、表示対象ユーザテーブルTBL16における着目ユーザのレコード中の、最下段の表示対象ユーザ1、表示対象ユーザ2、及び表示対象ユーザ3のフィールドに、確定された3名の表示対象ユーザのUIDを記憶させる。さらに、CPU30は、お勧めユーザ表示領域A7に、これらの表示対象ユーザのアイコンを表示させるようにマイページP1の表示情報を端末装置2に送信する。この表示情報を受信した端末装置2のCPU40は、この表示情報に基づいて、
図25に示すマイページP1を端末装置2のディスプレイ45に表示させる。
お勧めユーザ表示領域A7に表示されるユーザは、上述したゴルファーマッチング処理によって抽出されるので、ゴルフに対する好み、スタイル等が、着目ユーザと近いことが期待され、多大な労力を必要とせずに、自分に合った仲間を見つけやすくなる。
【0103】
<変形例>
本発明は、上述した各実施形態に限定されるものではなく、以下に述べる各種の変形が可能である。また、各変形例及び各実施形態は、適宜、組み合わせてもよいことは勿論である。
【0104】
<変形例1>
上述した実施形態においては、第2処理として
図37に示す性別・プロフィールによる絞込み処理(異性)を行ったが、第2処理は
図46に示す処理に置き換えることができる。
図37に示すS301、S303、S305、S307において処理を分岐させるための人数が、
図46の処理ではS320、S321、S322、S323に示すように異なっている。
CPU30は、第1処理で絞り込まれたユーザの人数が4人以上の場合には、これらの4人以上のユーザから、着目ユーザとは異なる性別のユーザを抽出する(S300)。また、CPU30は、第1処理で絞り込まれたユーザの人数が3人未満の場合には、第1処理で絞り込む前の全ユーザを対象として、着目ユーザとは異なる性別のユーザを抽出する(S300)。異なる性別のユーザを抽出するには、ユーザ情報テーブルTBL11に記録された性別情報を参照することにより行う。
【0105】
CPU30は、ステップS300の処理によって抽出された人数が2人の場合には、その2人は表示対象ユーザとして確定させ(S310)、処理を終了する。但し、本変形例の場合には、この後に第3処理を行うのではなく、第4処理を行って最後の1人を確定させる。
CPU30は、ステップS300の処理によって抽出された人数が3人以上の場合には、ステップS321の処理に移行する。また、CPU30は、ステップS300の処理によって抽出された人数が0人または1人の場合には、ステップS300の処理の対象となったユーザが全て着目ユーザと同性ということになるので、ステップS300の処理の対象となったユーザから同性を抽出し、つまり、ステップS300の処理の対象となった全てのユーザを対象として(S302)、ステップS321の処理に移行する。
【0106】
次に、CPU30は、ステップS321の時点で抽出されているユーザの中から、第1条件を満たすユーザを抽出し、第1条件を満たすユーザの人数を確認する(S321)。第1条件とは、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて特定された1つの項目を満たすかどうかである。
例えば、第1条件として、ゴルファータイプが特定された場合には、着目ユーザのゴルファータイプをユーザ情報テーブルTBL11から読み取り、読み取ったゴルファータイプと同じタイプがユーザ情報テーブルTBL11に記録されているユーザを、ステップS321の時点で抽出されているユーザの中から抽出する。
【0107】
CPU30は、第1条件を満たすユーザの人数が1人または2人の場合には、そのユーザについては表示対象ユーザとして確定させ(S310)、処理を終了する。但し、本変形例において第1条件を満たすユーザの人数が2人の場合には、この後に第3処理を行うのではなく、第4処理を行って最後の1人を確定させる。また、第1条件を満たすユーザの人数が1人の場合には、この後に第3処理を行う。
しかし、第1条件を満たすユーザの人数が3人以上の場合には、ステップS322に移行する。また、第1条件を満たすユーザの人数が0人の場合には、第1条件で絞り込む前のユーザを対象として、つまり、第1条件による絞込みをスキップして(S304)、ステップS322に移行する。
【0108】
次に、CPU30は、同様にして、第2条件を満たすユーザの人数の確認(S322)、第3条件を満たすユーザの人数の確認(S323)を行う。第2条件は、第1条件として特定されなかった項目であって、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて特定された1つの項目を満たすかどうかである。また、第3条件は、第1条件及び第2条件として特定されなかった項目であって、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて次に特定された1つの項目を満たすかどうかである。第2条件及び第3条件を満たす人数に応じた処理についても、第1条件の場合と同様である。
【0109】
ステップS323の処理の結果、3人以上のユーザが残った場合には、残ったユーザの中から1人をランダムで抽出し、そのユーザを表示対象のユーザとして確定させ(S309)、処理を終了する。
第2処理を以上のような構成とした場合でも、抽出されるユーザは、ゴルフに対する好み、スタイル等が、着目ユーザと近いことが期待され、多大な労力を必要とせずに、自分に合った仲間を見つけやすくなる。
【0110】
<変形例2>
上述した実施形態においては、第2処理として
図37に示す性別・プロフィールによる絞込み処理(異性)を行ったが、第2処理は
図47に示す処理に置き換えることができる。また、
図38に示す第3処理としての性別・プロフィールによる絞込み処理(異性)は、
図48に示す処理に置き換えることができる。さらに、
図39に示す第4処理としての性別・プロフィールによる絞込み処理(同性)は、
図49に示す処理に置き換えることができる。本変形例の各処理は、抽出人数や各条件との合致人数を判断した後に処理を分岐させるための人数が、上述した実施形態における各処理と異なっている。
【0111】
<A:
図47に示す第2処理>
CPU30は、第1処理で絞り込まれたユーザの人数が4人以上の場合には、これらの4人以上のユーザから、着目ユーザとは異なる性別のユーザを抽出する(S300)。また、CPU30は、第1処理で絞り込まれたユーザの人数が3人未満の場合には、第1処理で絞り込む前の全ユーザを対象として、着目ユーザとは異なる性別のユーザを抽出する(S300)。異なる性別のユーザを抽出するには、ユーザ情報テーブルTBL11に記録された性別情報を参照することにより行う。
【0112】
CPU30は、ステップS300の処理によって抽出された人数が3人の場合には、表示対象ユーザとして確定させ(S340)、処理を終了する。この場合には、第3処理及び第4処理は行わない。CPU30は、ステップS300の処理によって抽出された人数が1人または2人の場合には、その2人は表示対象ユーザとして確定させ、ステップS300の処理の対象となったユーザから同性を抽出し(S302)、ステップS331の処理に移行する。また、CPU30は、ステップS300の処理によって抽出された人数が4人以上の場合には、ステップS331の処理に移行する。
【0113】
次に、CPU30は、ステップS331の時点で抽出されているユーザの中から、第1条件を満たすユーザを抽出し、第1条件を満たすユーザの人数を確認する(S331)。第1条件とは、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて特定された1つの項目を満たすかどうかである。
例えば、第1条件として、ゴルファータイプが特定された場合には、着目ユーザのゴルファータイプをユーザ情報テーブルTBL11から読み取り、読み取ったゴルファータイプと同じタイプがユーザ情報テーブルTBL11に記録されているユーザを、ステップS331の時点で抽出されているユーザの中から抽出する。
【0114】
これ以降の処理は、S330で確定した人数によって異なる。
(1)S330で確定した人数が0人の場合
CPU30は、第1条件を満たすユーザの人数が1人または2人の場合には、そのユーザについては表示対象ユーザとして確定させ(S310)、処理を終了し、その後は
図48に示す第3処理に移行する。
CPU30は、第1条件を満たすユーザの人数が3人の場合には、表示対象ユーザを確定させ(S310)、処理を終了する。その後は
図48に示す第3処理及び
図49に示す第4処理を行わずに表示処理に移行する。
CPU30は、第1条件を満たすユーザの人数が4人以上の場合、あるいは、0人の場合には、S332の処理へ移行する。
【0115】
(2)S330で確定した人数が1人の場合
CPU30は、第1条件を満たすユーザの人数が1人の場合には、そのユーザについては表示対象ユーザとして確定させ(S310)、処理を終了し、その後は
図48に示す第3処理に移行する。
CPU30は、第1条件を満たすユーザの人数が2人の場合には、そのユーザについては表示対象ユーザとして確定させ(S310)、処理を終了する。この確定処理によって表示対象ユーザとして3人が確定するので、その後は
図48に示す第3処理及び
図49に示す第4処理は行わずに表示処理に移行する。
CPU30は、第1条件を満たすユーザの人数が3人以上の場合、あるいは、0人の場合には、S332の処理へ移行する。
【0116】
(3)S330で確定した人数が2人の場合
CPU30は、第1条件を満たすユーザの人数が1人の場合には、そのユーザについては表示対象ユーザとして確定させ(S310)、処理を終了する。この確定処理によって表示対象ユーザとして3人が確定するので、その後は
図48に示す第3処理及び
図49に示す第4処理は行わずに表示処理に移行する。
CPU30は、第1条件を満たすユーザの人数が2人以上の場合、あるいは、0人の場合には、S332の処理へ移行する。
【0117】
次に、CPU30は、同様にして、第2条件を満たすユーザの人数の確認(S332)、第3条件を満たすユーザの人数の確認を行う(S333)。第2条件は、第1条件として特定されなかった項目であって、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて次に特定された1つの項目を満たすかどうかである。また、第3条件は、第1条件及び第2条件として特定されなかった項目であって、
図43乃至
図45に示す条件テーブルTBL13に記録された項目のうち、条件テーブルTBL13に記録された出現率に基づいて特定された1つの項目を満たすかどうかである。第2条件及び第3条件を満たす人数に応じた処理についても、第1条件の場合と同様である。
【0118】
ステップS333の処理の結果、3人以上のユーザが残った場合には、残ったユーザの中から1人をランダムで抽出し、そのユーザを表示対象のユーザとして確定させ(S309)、処理を終了する。
第2処理を以上のような構成とした場合でも、抽出されるユーザは、ゴルフに対する好み、スタイル等が、着目ユーザと近いことが期待され、多大な労力を必要とせずに、自分に合った仲間を見つけやすくなる。
【0119】
<B:
図48に示す第3処理>
CPU30は、
図47に示す第2処理で抽出されたユーザ以外で、第1処理で抽出された4人以上のユーザから着目ユーザと異性のユーザを抽出する(S400)。以下、CPU30は、
図47に示す第2処理と同様に絞込み処理を行う(S401〜S408)。但し、第1条件〜第3条件の代わりに、第1条件〜第3条件において用いられなかった第4条件〜第6条件を用いる。
【0120】
これ以降の処理は、
図47に示す第2処理で確定した人数によって異なる。
(1)
図47に示す第2処理で確定した人数が1人の場合
CPU30は、S400で抽出された人数が1人の場合には(S420)、そのユーザについては表示対象ユーザとして確定させ(S410)、処理を終了し、その後は
図49に示す第4処理に移行する。
CPU30は、S400で抽出された人数が2人の場合には(S420)、それらのユーザについては表示対象ユーザとして確定させ(S410)、処理を終了する。この確定処理によって表示対象ユーザとして3人が確定するので、その後は
図48に示す第3処理及び
図49に示す第4処理は行わずに表示処理に移行する。
CPU30は、S400で抽出された人数が3人の場合には(S420)、S421の処理に移行する。
CPU30は、S400で抽出された人数が0人の場合には(S420)、S400の処理の対象となったユーザから同性を抽出し(S402)、S421の処理に移行する。
【0121】
(2)
図47に示す第2処理で確定した人数が2人の場合
CPU30は、S400で抽出された人数が1人の場合には(S420)、そのユーザについては表示対象ユーザとして確定させ(S410)、処理を終了する。この確定処理によって表示対象ユーザとして3人が確定するので、その後は
図48に示す第3処理及び
図49に示す第4処理は行わずに表示処理に移行する。
CPU30は、S400で抽出された人数が2人以上の場合には(S420)、S421の処理に移行する。
CPU30は、S400で抽出された人数が0人の場合には(S420)、S400の処理の対象となったユーザから同性を抽出し(S402)、S421の処理に移行する。
【0122】
次に、CPU30は、同様にして、第4条件を満たすユーザの人数の確認(S421)、第5条件を満たすユーザの人数の確認(S422)、及び第6条件を満たすユーザの人数の確認する(S423)。第4条件〜第6条件を満たす人数に応じた処理についても、S420の場合と同様である。
【0123】
ステップS423の処理の結果、3人以上のユーザが残った場合には、残ったユーザの中から1人をランダムで抽出し、そのユーザを表示対象のユーザとして確定させ(S409)、処理を終了する。
第3処理を以上のような構成とした場合でも、抽出されるユーザは、ゴルフに対する好み、スタイル等が、着目ユーザと近いことが期待され、多大な労力を必要とせずに、自分に合った仲間を見つけやすくなる。
【0124】
<C:
図49に示す第4処理>
CPU30は、
図47に示す第2処理及び
図48に示す第3処理で抽出されたユーザ以外で、第1処理で抽出された4人以上のユーザから着目ユーザと異性のユーザを抽出する(S500)。以下、CPU30は、
図48に示す第3処理と同様に絞込み処理を行う(S520〜S523)。但し、第4条件〜第6条件の代わりに、第1条件〜第6条件において用いられなかった第7条件〜第9条件を用いる。
【0125】
これ以降の処理は、S500で抽出された人数によって異なる。
CPU30は、S500で抽出された人数が1人の場合には(S520)、そのユーザについては表示対象ユーザとして確定させ(S510)、処理を終了する。この確定処理によって表示対象ユーザとして3人が確定するので、その後は表示処理に移行する。
CPU30は、S500で抽出された人数が2人以上の場合には(S520)、S521の処理へ移行する。
CPU30は、S500で抽出された人数が0人の場合には(S520)、S500の処理の対象となったユーザから同性を抽出し(S530)、S521の処理に移行する。
【0126】
以下、CPU30は、同様にして、第7条件を満たすユーザの人数の確認(S521)、第8条件を満たすユーザの人数の確認(S522)、及び第9条件を満たすユーザの人数の確認する(S523)。第7条件〜第9条件を満たす人数に応じた処理についても、S520の場合と同様である。
【0127】
ステップS523の処理の結果、2人以上のユーザが残った場合には、残ったユーザの中から1人をランダムで抽出し、そのユーザを表示対象のユーザとして確定させ(S509)、処理を終了する。
第4処理を以上のような構成とした場合でも、抽出されるユーザは、ゴルフに対する好み、スタイル等が、着目ユーザと近いことが期待され、多大な労力を必要とせずに、自分に合った仲間を見つけやすくなる。
【0128】
<変形例3>
上述した実施形態においては、ゴルファーマッチング処理を、
図36〜
図39に示す第1処理〜第4処理の4つの処理により実行したが、第1処理を省略して、
図37〜
図39に示す第2処理〜第4処理の3つの処理により、3人の表示対象ユーザを確定するようにしてもよい。また、
図37に示す第2処理の代わりに、
図46に示す第2処理を用いて、3人の表示対象ユーザを確定するようにしてもよい。さらに、
図47〜
図49に示す第2処理〜第4処理を用いて、3人の表示対象ユーザを確定するようにしてもよい。また、これらの各処理を随時組み合わせるようにしてもよい。
【0129】
<変形例4>
上述した実施形態及び各変形例においては、マイページP1を表示するタイミングで3人の表示対象ユーザを確定する例について説明したが、本発明はこのような例に限定されるものではない。
例えば、1日1回、バッチ処理でユーザ全員分に対して表示対象ユーザを確定する処理を行い、記憶させておいてもよい。そして、各ユーザがログインを行ってマイページP1を表示するタイミングで、記憶させておいた表示対象ユーザを表示するようにしてもよい。
この方法によれば、次のバッチ処理が行われるまでは、一のユーザがマイページP1を何回表示させても、同じ表示対象ユーザが表示されることになる。
また、ログインが行われなくても、表示対象ユーザはバッチ処理のタイミングで更新されることになるため、第1処理における「直近7回のログインで表示したユーザではないこと」の条件は、「(表示の有無に拘わらず)直近7日に表示対象に選択したユーザではないこと」となる。
また、表示対象ユーザの表示を行ったか否かのフラグを設ける等して、バッチ処理で確定させた表示対象ユーザを表示したか否かを記憶させて、その表示回数に基づいて、第1処理における条件の判断を行うようにしてもよい。
【0130】
<変形例5>
上述した実施形態及び各変形例においては、
図40〜
図42に示す隣接県テーブルTBl14を用いた例について説明したが、本発明はこのような例に限定されるものではなく、都道府県IDが記録された隣接県テーブルを用いてもよい。
また、上述した実施形態及び各変形例においては、第1処理で抽出されたユーザが3人未満の場合には、第1処理で絞り込みを行う前の全ユーザを対象として、着目ユーザと異なる性別のユーザを抽出する例について説明した。しかし、本発明はこのような例に限定されるものではない。例えば、第1処理で抽出されたユーザが3人未満の場合には、都道府県、友達関係、表示済みの3つの条件のいずれか1つまたは2つを用いて絞り込んだユーザを対象として、着目ユーザとは異なる性別のユーザを抽出するようにしてもよい。
【0131】
<変形例6>
上述した実施形態及び各変形例においては、
図30〜
図34に示すプロフィール情報、及び
図43〜
図45に示す条件テーブルを用いたが、本発明はこのような例に限定されるものではない。例えば、プロフィール情報及び条件テーブルに、出身大学、よく行くゴルフ情報、よく行く練習場、出身地(都道府県)、出身地(区市町村)を加えるようにしてもよい。
【0132】
<変形例7>
上述した実施形態及び各変形例においては、ゴルフ情報アプリケーション内において友達申請を行って承認された場合に直接ゴルフ友達となり、当該直接ゴルフ友達のゴルフ友達とは間接ゴルフ友達となる例について説明した。しかし、本発明はこのような例に限定されるものではない。
例えば、アプリケーションのユーザ同士で友達関係を築くことのできるSNSが外部サーバにより提供されている場合には、ゴルフ情報アプリケーションを、当該外部サーバのSNSにおいて利用可能なアプリケーションとして構成するようにしてもよい。この場合には、情報提供サーバ1と外部サーバとを通信網NETを介して通信可能に構成し、OAuth認証により、情報提供サーバ1がユーザに代わってSNSへの投稿、あるいはプロフィール等へのアクセスをできるようにする。そして、SNSへのログインを行った状態で、ゴルフ情報アプリケーションにログインするように構成する。
このように構成すれば、情報提供サーバ1は、SNS上における友達関係にあるユーザであって、ゴルフ情報アプリケーションのユーザでもあるユーザについては、自動的に直接ゴルフ友達として認識することができる。具体的には、着目ユーザがSNS上において友達申請して承認されたユーザ、及び、SNS上において友達申請され、着目ユーザがこの友達申請を承認したユーザを、SNSにおけるユーザ情報テーブルを参照することにより、抽出することができるので、抽出したユーザを、ゴルフ情報アプリケーションのユーザ情報テーブルTBL11に直接ゴルフ友達として記憶すればよい。また、情報提供サーバ1は、SNS上における着目ユーザと友達関係にあるSNS友達ユーザの友達についても、当該SNS友達ユーザがSNS上において友達申請して承認されたユーザ、及び、SNS友達ユーザがSNS上において友達申請され、SNS友達ユーザがこの友達申請を承認したユーザを、SNSにおけるユーザ情報テーブルを参照することにより、抽出することができるので、抽出したユーザを、ゴルフ情報アプリケーションのユーザ情報テーブルTBL11に間接ゴルフ友達として記憶すればよい。 さらに、ユーザ情報テーブルTBL11には直接ゴルフ友達、間接ゴルフ友達を記憶しないように構成し、必要に応じて外部サーバにアクセスして、上記と同様の処理によって直接ゴルフ友達、間接ゴルフ友達を抽出するようにしてもよい。
【0133】
<変形例8>
上述した実施形態では、情報提供サーバ1に記憶部15を備え、当該記憶部15内に各種のテーブルを記録する例について説明した。しかし、本発明はこのような例に限定されるものではない。例えば、
図50に示すように、情報提供サーバ1と通信網NETを介して通信可能なストレージサーバ4を備え、当該ストレージサーバ4内に記憶部15を備えるようにしてもよい。そして、ストレージサーバ4内の記憶部15に、各種のテーブルを記録するようにしてもよい。
また、上述の実施形態で説明した各種のテーブルは、ユーザの使用に係る端末装置に記憶させるように構成してもよい。また、上述の実施形態及び変形例で説明した処理は、ユーザの使用に係る端末装置で行うように構成してもよい。この場合、当該処理を実行可能なプログラム及び当該処理に必要なデータを、ゴルフ情報サービスの利用開始時や必要な処理を行う時に、適宜情報提供サーバ1からダウンロードすることとしてもよい。
【0134】
<変形例9>
また、上述した各実施形態及び各変形例では、情報提供サーバ1が提供するサービスとして、ゴルフ情報の提供サービスを一例として説明したが、本発明はこれに限定されるものではなく、情報提供サーバ1はどのようなサービスを提供するものであってもよい。例えば、利用者同士の共通のテーマに基づいて、アプリケーション上で特定の関係を構築するすべてのものに適用できる。共通のテーマは、マラソン、バドミントン等のスポーツ、将棋、ゲームや、将棋、ゲームなどの趣味的なものであってもよいし、ビジネスに関するものあってもよい。
【0135】
<変形例10>
なお、本発明における機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することとしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。また、本発明における機能またはその一部を実現するためのプログラムを配信する配信サーバ及び当該配信サーバによる配信に用いるために使用される、当該プログラムが記憶された記憶媒体についても、本発明の範囲に含まれる。
また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【0136】
なお、本発明は上述の各実施形態及び変形例に限定されるものではなく、本発明の趣旨の範囲内での変更は本発明に含まれるものである。