(57)【要約】      （修正有）【課題】データを共有するためにグループを作成するデータ共有装置を提供する。【解決手段】作成されたグループのグループ情報を管理するグループ管理部３０１と、グループ管理部３０１によって管理されているグループに対する参加要求を行ったユーザのユーザ情報を管理するユーザ管理部３０２と、グループ情報とユーザ情報とを用いて、ユーザが参加すべきグループを選択するグループ選択部３０３と、グループ選択部３０３により選択されたグループの作成者の端末にユーザの端末を参加させるか否かを確認するグループ参加確認部３０４とを設ける。【選択図】図３
2017004048.tif 000002
【特許請求の範囲】
【請求項１】
データを共有するためにグループを作成するデータ共有装置であって、
作成されたグループのグループ情報を管理するグループ管理手段と、
前記グループ管理手段によって管理されているグループに対する参加要求を行ったユーザのユーザ情報を管理するユーザ管理手段と、
前記グループ情報と前記ユーザ情報とを用いて、ユーザが参加すべきグループを選択するグループ選択手段と、
前記グループ選択手段により選択されたグループの作成者の端末にユーザの端末を参加させるか否かを確認するグループ参加確認手段とを有することを特徴とするデータ共有装置。
【請求項２】
前記グループ参加確認手段で参加を許可しなかった場合、前記グループ情報に制約条件を設定する設定手段をさらに有し、
前記グループ選択手段は、前記設定手段により設定された制約条件を用いてユーザがグループに参加するか、選択すべきグループが存在しないと判定されるまでグループの選択を繰り返すことを特徴とする請求項１に記載のデータ共有装置。
【請求項３】
前記グループ選択手段は、第１のユーザによる制約条件を第２のユーザを選択するときに用いることを特徴とする請求項２に記載のデータ共有装置。
【請求項４】
前記グループ管理手段は、グループの位置情報を管理し、
前記ユーザ管理手段は、ユーザの位置情報を管理し、
前記グループ選択手段は、グループの位置とユーザの位置の距離に基づいてグループを選択することを特徴とする請求項１〜３の何れか１項に記載のデータ共有装置。
【請求項５】
前記グループ管理手段は、グループ作成時に設定した時間情報を管理し、
前記ユーザ管理手段は、ユーザが参加を要求した時間情報を管理し、
前記グループ選択手段は、グループ作成時に設定した時間とユーザが参加を要求した時間の差からグループを選択することを特徴とする請求項１〜４の何れか１項に記載のデータ共有装置。
【請求項６】
前記グループ参加確認手段により、作成者がユーザの参加を許可した場合、ユーザに対してグループに参加したことを通知するグループ参加の通知手段をさらに有することを特徴とする請求項１〜５の何れか１項に記載のデータ共有装置。
【請求項７】
グループの作成を要求するグループ作成要求手段と、
参加を要求したユーザ情報を受信する手段と、
ユーザ情報を表示してユーザをグループに参加させるかどうかを確認する確認手段と、
前記確認手段が確認した結果を送信する手段とを有することを特徴とするグループ作成端末。
【請求項８】
前記グループ作成要求手段は、少なくとも位置情報を含む情報を送信することを特徴とする請求項７に記載のグループ作成端末。
【請求項９】
前記グループ作成要求手段は、少なくとも時間情報を含む情報を送信することを特徴とする請求項７または８に記載のグループ作成端末。
【請求項１０】
グループの参加を要求するグループ参加要求手段と、
参加したグループ情報を受信する手段と、
参加したグループ情報を表示する手段とを有することを特徴とするグループ参加端末。
【請求項１１】
前記グループ参加要求手段は、少なくとも位置情報を含む情報を送信することを特徴とする請求項１０に記載のグループ参加端末。
【請求項１２】
前記グループ参加要求手段は、少なくとも時間情報を含む情報を送信することを特徴とする請求項１０または１１に記載のグループ参加端末。
【請求項１３】
請求項１〜６の何れか１項に記載のデータ共有装置と、請求項７〜９の何れか１項に記載のグループ作成端末と、請求項１０〜１２の何れか１項に記載のグループ参加端末とで構成されることを特徴とするデータ共有システム。
【請求項１４】
データを共有するためにグループを作成するデータ共有方法であって、
作成されたグループ情報を管理するグループ管理工程と、
前記グループ管理工程において管理されているグループに対する参加要求を行ったユーザのユーザ情報を管理するユーザ管理工程と、
前記グループ情報と前記ユーザ情報を用いてユーザが参加すべきグループを選択するグループ選択工程と、
前記グループ選択工程において選択されたグループの作成者の端末にユーザの端末を参加させるか否かを確認するグループ参加確認工程とを有することを特徴とするデータ共有方法。
【請求項１５】
コンピュータを、請求項１〜６の何れか１項に記載のデータ共有装置の各手段として実行させることを特徴とするプログラム。
【請求項１６】
請求項１５に記載のプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ共有装置およびデータ共有方法に関し、特に、グループの情報とユーザの情報を用いて効率よくグループを作成する技術に関する。
【背景技術】
【０００２】
従来、グループに属する複数のユーザでデータを共有するために、ユーザから参加要求を受信すると、参加可能なグループから適切なグループを選択させてグループを作成する方法が考えられている。例えば、特許文献１では、予めグループ作成時に参加可能なエリアを設定し、参加を要求したユーザの位置情報から参加可能なエリア内かどうかを判断してグループを選択することでグループを作成する方法が提案されている。
また、特許文献１では、複数のグループが候補として存在するとき、システムが自動でグループを選択するだけでなく、ユーザに選択させる方法も提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１３５８６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、画像などのプライベートなデータを共有するとき、グループ作成者の許可なくユーザがグループに参加できると、本来グループに含めたくないユーザにデータをのぞき見られてしまう問題がある。
【０００５】
また、グループ作成者による確認手段を設けたとしても、システムがユーザの意図とは異なるグループを選択した場合には、参加要求は取り消され、ユーザは再度グループの参加手順からやり直す必要がある。
ユーザに複数のグループから候補を選択させる方法では、ユーザとグループ作成者の双方で参加確認の作業が必要であり手間がかかる。
本発明は前述の問題点に鑑み、ユーザが簡単な操作でグループに参加してデータを共有できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明のデータ共有装置は、データを共有するためにグループを作成するデータ共有装置であって、作成されたグループのグループ情報を管理するグループ管理手段と、前記グループ管理手段によって管理されているグループに対する参加要求を行ったユーザのユーザ情報を管理するユーザ管理手段と、前記グループ情報と前記ユーザ情報とを用いて、ユーザが参加すべきグループを選択するグループ選択手段と、前記グループ選択手段により選択されたグループの作成者の端末にユーザの端末を参加させるか否かを確認するグループ参加確認手段とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、ユーザは参加要求の操作を行うだけで簡単にグループに参加でき、グループ作成者が許可したユーザ間のみでデータを共有することができる。
また、本発明の他の特徴によれば、グループ作成者がユーザの参加を取り消したとき、ユーザが参加手順をやり直すことなく目的のグループに参加することができる。
【図面の簡単な説明】
【０００８】
【図１】データ共有システムの構成例を示した図である。
【図２】データ共有装置のハードウェア構成の例を示すブロック図である。
【図３】データ共有システムを構成する装置および端末の機能構成を説明するブロック図である。
【図４】実施形態１に係る、グループ情報の管理テーブルの一例を示す図である。
【図５】ユーザ情報の管理テーブルの一例を示す図である。
【図６】実施形態１に係る、ユーザがグループに属する場合の位置関係を表す図である。
【図７】グループ作成端末によりグループを作成する手順を説明するフローチャートである。
【図８】データ共有装置とグループ作成端末の間で送受信されるコマンドの一覧を示す図である。
【図９】グループを作成する画面の一例を表す図である。
【図１０】グループ作成者が参加を要求するユーザを確認する画面の一例を表す図である。
【図１１】グループ参加端末によりグループの参加を要求する手順を説明するフローチャートである。
【図１２】データ共有装置とグループ参加端末の間で送受信されるコマンドの一覧を示す図である。
【図１３】グループに参加を要求する画面の一例を表す図である。
【図１４】グループに参加したことを通知する画面の一例を表す図である。
【図１５】データ共有装置がグループ情報とユーザ情報の管理テーブルを更新する手順を説明するフローチャートである。
【図１６】実施形態１に係る、データ共有装置がグループを選択する手順を説明するフローチャートである。
【図１７】実施形態２に係る、ユーザがグループに属するとき近いグループに属さない場合の位置関係を表す図である。
【図１８】実施形態２に係る、データ共有装置がグループの選択を繰り返す手順を説明するフローチャートである。
【図１９】実施形態２に係る、制約条件を追加したグループ情報の管理テーブルの一例を示す図である。
【図２０】実施形態２に係る、第１のユーザの制約条件を第２のユーザが用いる場合の位置関係を表す図である。
【発明を実施するための形態】
【０００９】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１０】
＜実施形態１＞
図１は、本実施形態に係るデータ共有システムの構成例を示した図である。
グループ作成端末１０１は、データを共有するためにグループの作成を依頼する端末装置であり、ＬＡＮなどのネットワーク１０７を通してデータ共有装置１０２にグループの作成を要求する。
データ共有装置１０２は、グループ作成端末１０１から受信したグループの情報を用いてグループを作成し、管理ＤＢ１０３で管理する。
【００１１】
グループ参加端末１０４〜１０６はグループへの参加を依頼する端末装置であり、ネットワーク１０７を通してデータ共有装置１０２にグループへの参加を要求する。データ共有装置１０２は、グループ参加端末１０４〜１０６から受信した情報を用いてグループを選択し、グループ作成端末１０１に参加の可否を確認する。参加が許可されたとき、グループ参加端末のユーザをグループに登録してデータの共有を可能とする。
【００１２】
グループ作成端末１０１およびグループ参加端末１０４〜１０６は同時に何台でも接続可能であり、作成するグループの数やグループに属するユーザの数を限定しなくてもよい。また、グループ作成端末とグループ参加端末は物理的に異なる端末である必要はなく、一つのデータ共有端末としてシステムを構成してもよい。
【００１３】
図２は、データ共有装置１０２のハードウェア構成を示した図である。
ＣＰＵ２０１は、コンピュータシステムの制御をつかさどる中央演算装置（以下ＣＰＵと記す）である。ＣＰＵ２０１が、制御プログラムに基づいて、情報の演算や加工、各ハードウェアの制御を実行することにより後述する各機能を構成し、各処理を実現する。
ＲＡＭ２０２は、ランダムアクセスメモリ（以下ＲＡＭと記す）であり、ＣＰＵ２０１の主メモリとして、実行プログラムのロードやプログラム実行に必要なワークメモリとして機能する。
【００１４】
ＲＯＭ２０３は、ＣＰＵ２０１の動作処理手順を規定する制御プログラムを記録しているリードオンリーメモリー（以下ＲＯＭと記す）である。ＲＯＭ２０３には、コンピュータシステムの機器制御を行うシステムプログラムである基本ソフト（ＯＳ）を記録したプログラムＲＯＭと、システムを稼動するために必要な情報などが記録されたデータＲＯＭがある。ＲＯＭ２０３の代わりに後述のＨＤＤ２０５を用いる場合もある。
【００１５】
ＮＥＴＩＦ２０４は、ネットワークインターフェース（以下ＮＥＴＩＦと記す）であり、ネットワークを介して送受信されるデータの入出力制御を行う。
ＨＤＤ２０５は、ハードディスクドライブ（ＨＤＤ）であり、記憶装置である。ＨＤＤ２０５は、アプリケーションプログラムや、画像情報などのデータ保存用に用いられる。
バス２０６は、前述した各ユニット間でデータをやりとりするための入出力バス（アドレスバス、データバス、及び制御バス）である。
ディスプレイ２０７は、複数のボタンを表示し、表示したボタンをユーザが選択するためにタッチすると、タッチに関する情報を取得するタッチパネルを備えた、タッチ入力機能を有する。後述する図９、図１０、図１３及び図１４の画面は、ディスプレイ２０７に表示される。
なお、グループ作成端末１０１、およびグループ参加端末１０４〜１０６についても同様に図２に示すハードウェア構成を有するものとする。
【００１６】
次に、データ共有システムを構成する各装置の機能構成について、図３を用いて説明する。
３０１〜３０５は、データ共有装置１０２の機能構成である。
グループ管理部３０１は、グループ名、グループ作成者ＩＤ、グループを作成した時間および位置情報を後述する図４に示すグループ情報テーブル４０１で管理する。
ユーザ管理部３０２は、ユーザ名、グループ参加を要求した時間および位置情報を図５に示すユーザ情報テーブル５０１で管理する。
【００１７】
グループ選択部３０３は、グループ情報テーブル４０１とユーザ情報テーブル５０１に含まれる位置情報を用いてユーザとの距離が一番近いグループを選択する。
グループ参加確認部３０４は、グループの作成者にユーザがグループに参加してよいかどうかを確認し、参加を許可されたときユーザ管理部３０２で参加グループを登録する。
【００１８】
通信部３０５は、グループ作成端末およびグループ参加端末からコマンドを受け付ける。図８の８０１は、グループ作成端末から受け付けるコマンドの一覧を示すテーブルであり、コマンドは受信するリクエストおよびパラメータと、送信するレスポンスから構成される。図１２の１２０１はグループ参加端末から受け付けるコマンドの一覧を示すテーブルである。
【００１９】
３０６〜３０９は、グループ作成端末１０１の機能構成である。
通信部３０６は、データ共有装置に前述のテーブル８０１のコマンドを送信する。
グループ作成部３０７は、グループ名などの情報をグループの作成時間や端末の位置情報とともにグループ作成要求として通信部３０６によりデータ共有装置１０２に送信する。端末の位置情報は、位置情報取得部３０９によりＧＰＳやＷｉ‐Ｆｉアクセスポイントの位置情報を利用して取得される。
【００２０】
ユーザ確認部３０８は、通信部３０６により受信したグループに参加を要求するユーザの情報を表示して、ユーザがグループに参加してよいかどうかを確認する。確認した結果は通信部３０６によりデータ共有装置に送信される。
【００２１】
３１０〜３１２は、グループ参加端末１０４〜１０６の機能構成である。
通信部３１０は、データ共有装置に前述のテーブル１２０１のコマンドを送信する。
グループ参加部３１１は、グループに参加するユーザ名や端末の位置情報および参加を要求した時間情報を、グループ参加要求として通信部３１０よりデータ共有装置１０２に送信する。端末の位置情報は、位置情報取得部３１２により位置情報取得部３０９と同様の方法で取得される。
本実施形態のように、位置情報を用いてグループを選択する場合は、ユーザはグループ作成端末１０１に近い位置でグループの参加要求を行うものとする。
【００２２】
図４は、データ共有装置１０２のグループ管理部３０１が管理するグループ情報のテーブルの一例を説明する図である。
グループ情報テーブル４０１は作成したグループ名、グループを作成したユーザＩＤ、グループを作成したときの時間およびグループを作成したときのグループ作成端末１０１の位置情報を管理する。さらに、グループの状態として、ユーザの参加を受け付ける参加受付中状態、ユーザの参加が完了してデータの共有を開始できる参加受付完了状態を管理する。
【００２３】
データの共有を終了するときは、グループ情報をグループ情報テーブル４０１から削除してもよいし、グループの状態を共有終了状態としてもよい。
グループ選択部３０３によりグループを選択するとき、状態が参加受付中であるグループのみが選択の対象となる。さらに、グループの選択対象を絞り込むため、時間情報が一定範囲内のグループのみを対象にしてもよいし、位置情報が一定範囲内のグループのみを対象に選択してもよい。例えば、ユーザが参加を要求した時間より５分前までに作成され、且つ２０ｍ以内の距離に存在するグループのみを選択の対象とする方法などが考えられる。
【００２４】
図５は、ユーザ管理部３０２が管理するユーザ情報のテーブルの一例を説明する図である。
ユーザ情報テーブル５０１は、グループへの参加を要求するユーザのユーザ名、参加を要求した時間およびユーザが使用している端末装置の位置情報を管理する。さらに、ユーザが参加したグループをグループ情報テーブル４０１で管理されるグループＩＤで管理する。参加するグループが決定されていない場合は、グループＩＤを記録しなくてもよい。
【００２５】
図６のグループ６０１は、作成されたグループに属する各端末の位置関係を表したものである。星印はグループ作成端末１０１の位置を表し、丸印はグループ参加端末の位置を表している。図６のように、データ共有装置１０２は、複数のグループからグループを一つ選択するとき、グループ選択部３０３はグループ参加端末とグループ作成端末１０１との距離を算出し、より近いグループを選択する。距離の算出には、位置情報に緯度経度を用いることで計算式により算出できる。
【００２６】
続いて、グループ作成端末１０１でグループを作成、作成したグループに対するユーザからの参加要求の処理動作について図７のフローチャートと、図８のテーブル８０１に記載のコマンドを用いて説明する。図７の動作は、図２に示すようなグループ作成端末１０１のハードウェア構成によって実現される。具体的には、ＲＯＭ２０３からＲＡＭ２０２に読みだされたプログラムに従ってＣＰＵ２０１が図７の動作を実行する。
Ｓ７０１において、グループ作成部３０７によってデータ共有装置にグループ作成を要求する。図９の９０１は、グループ作成者がグループを作成する際に表示される画面の一例である。
【００２７】
ユーザによるボタンの選択を検知すると、Ｓ７０１の工程が実行され、グループ作成のパラメータとして、ユーザが入力したグループ名、グループ作成者のユーザＩＤ、グループ作成時間、グループ作成者の位置がデータ共有装置１０２に送信される。データ共有装置１０２からは作成されたグループのＩＤを受信する。本実施形態ではグループ名を入力させずにグループ作成者のユーザ名を利用したが、表示画面９０１においてグループ名を入力させて、入力されたグループ名を送信してもよい。
【００２８】
Ｓ７０２において、通信部３０６を通してデータ共有装置１０２からＳ７０１において作成したグループへの参加を要求したユーザ情報が取得される。具体的には、データ共有装置１０２からはグループへの参加を要求したユーザ情報としてユーザＩＤとユーザ名を受信する。
Ｓ７０３では、ユーザ確認部３０８により、作成したグループへの参加を要求したユーザの端末装置がグループに参加して良いかどうかが確認され、Ｓ７０４で確認結果が判定される。
【００２９】
図１０の画面１００１は、グループ作成端末１０１において、ユーザ名を表示してグループに参加させるかどうかをグループ作成者に確認する画面の一例である。確認結果は、パラメータにグループＩＤとユーザＩＤに加え、参加して良い場合はＳ７０５で参加の許可を送信し、そうでない場合はＳ７０６により参加の不許可を、通信部３０６を通してデータ共有装置１０２に送信する。
【００３０】
Ｓ７０７において、グループ作成端末１０１は、グループへの参加が完了したかどうかを判定する。グループへの参加完了は、画面１００１の完了ボタンをユーザに指示させることにより行ってもよいし、グループ作成時間から一定時間経過したときに、システムで自動的に参加完了状態にしてもよい。
参加が完了したときは、Ｓ７０８において、グループＩＤをパラメータとして設定され、通信部３０６を通してデータ共有装置１０２にグループ参加完了が送信される。
【００３１】
続いて、グループ参加端末でグループに参加する動作手順を、図１１のフローチャートと、図１２に記載のコマンドテーブルを用いて説明する。図１１の動作手順は、図２に示すようなグループ参加端末１０４〜１０６のハードウェア構成によって実現される。具体的には、ＲＯＭ２０３からＲＡＭ２０２に読みだされたプログラムに従ってＣＰＵ２０１が図７の動作を実行する。
Ｓ１１０１において、グループ参加部３１１によってデータ共有装置１０２にグループの参加がグループ作成端末１０１に対して要求される。
図１３の画面１３０１はグループに参加したいユーザが参加を要求する際に表示する画面の一例である。ユーザが画面１３０１のボタンを押下することで、Ｓ１１０１の工程が実行されグループ参加のパラメータとしてユーザＩＤ、ユーザ名、参加要求時間、ユーザの位置を送信する。
【００３２】
Ｓ１１０２において、通信部３１０を通してデータ共有装置１０２から参加を許可されたグループの情報が取得される。具体的には、データ共有装置１０２からはグループの情報としてグループ名が受信される。
Ｓ１１０３において、ユーザの参加が許可されたグループの情報が受信できたかどうかが判定され、グループの情報があればＳ１１０４で、参加を許可されたグループ名が表示される。参加を許可されたグループがない場合はＳ１１０５で、エラーが表示される。
図１４の画面１４０１は、ユーザの参加が許可されたグループ名を表示する画面の一例である。
【００３３】
続いて、データ共有装置１０２が端末からグループ作成要求と参加要求を受信してグループ情報テーブルとユーザ情報テーブルを更新する動作手順を、図１５のフローチャートを用いて説明する。図１５の動作手順は、図２に示すようなデータ共有装置１０２のハードウェア構成によって実現される。具体的には、ＲＯＭ２０３からＲＡＭ２０２に読みだされたプログラムに従ってＣＰＵ２０１が図１５の動作を実行する。
Ｓ１５０１において、グループ作成端末１０１で実行されるＳ７０１より、テーブル８０１に記載のグループ作成リクエストを受信したかどうかが判定される。受信した場合、Ｓ１５０２において、パラメータに含まれるグループ名、グループ作成者のユーザＩＤ、グループ作成時間、グループ作成者の位置がグループ情報テーブル４０１に登録される。グループＩＤはデータ共有装置１０２がユニークな値を付与し、グループの状態を参加受付中状態にしたのち、グループＩＤをグループ作成端末１０１に送信する。
【００３４】
Ｓ１５０３においては、グループ作成端末１０１で行なわれるＳ７０７よりテーブル８０１に記載のグループの参加完了リクエストを受信したかどうかが判定される。グループ参加完了を受信した場合、Ｓ１５０４において、グループ情報テーブル４０１のグループの状態を参加受付完了とする。
【００３５】
Ｓ１５０５において、グループ参加端末で行なわれるＳ１１０１により、テーブル１２０１に記載のグループ参加リクエストを受信したかどうかが判定される。受信した場合、Ｓ１５０６において、パラメータに含まれるユーザＩＤ、ユーザ名、参加要求時間、ユーザの位置がユーザ情報テーブル５０１に登録される。
Ｓ１５０１〜Ｓ１５０６の処理は、データ共有装置１０２が稼働している間、繰り返し実行され、ユーザの要求を常に受け付ける。
【００３６】
続いて、データ共有装置１０２がグループ情報テーブル４０１とユーザ情報テーブル５０１を用いてグループを作成する動作手順を、図１６のフローチャートを用いて説明する。図１６の動作手順は、図２に示すようなデータ共有装置１０２のハードウェア構成によって実現される。具体的には、ＲＯＭ２０３からＲＡＭ２０２に読みだされたプログラムに従ってＣＰＵ２０１が図１６の動作を実行する。
Ｓ１６０１において、ユーザ管理部３０２は、ユーザ情報テーブル５０１から参加グループが登録されていないユーザを一つ取得する。
Ｓ１６０２において、グループ選択部３０３は、Ｓ１６０１で取得したユーザの時間情報と位置情報を用いて一番距離の近いグループを選択する。
【００３７】
Ｓ１６０３では、グループ選択部３０３は、グループが選択可能かどうかを判定し、グループが選択できた場合、Ｓ１６０４において、グループ参加確認部３０４は、グループ作成端末１０１で確認された結果を取得する。この参加確認の結果は、例えば、テーブル８０１に記載の参加確認結果に含まれるグループ作成端末１０１から送信される許可または不許可のパラメータとして取得される。
【００３８】
Ｓ１６０５において、ユーザ管理部３０２は、グループへの参加が許可されたかどうかを判定し、参加が許可された場合、Ｓ１６０６において、ユーザ管理部３０２はユーザ情報テーブル５０１の参加グループＩＤに参加したグループのＩＤを登録する。
Ｓ１６０７では、テーブル１２０１に記載のグループ情報のレスポンスとして、Ｓ１６０６で登録したグループＩＤを有するグループのグループ名をグループ参加端末に送信する。
【００３９】
Ｓ１６０３において、グループ選択部３０３によって選択されたグループが無いと判定された場合、もしくは、Ｓ１６０５においてグループへの参加が許可されなかった場合はＳ１６０８に進む。Ｓ１６０８においては、ユーザ管理部３０２は、ユーザ情報テーブル５０１から対象のユーザを削除する。さらに、Ｓ１６０９において、グループに参加できていないことを通知するため、テーブル１２０１に記載のグループ情報のレスポンスとして参加要求を行ったグループ参加端末に空の情報を送信する。
【００４０】
Ｓ１６１０において、ユーザ管理部３０２は、参加を要求するユーザが存在するかどうかを判定する。参加を要求するユーザがなくなるまでＳ１６０１〜Ｓ１６０９までの工程が繰り返される。参加を要求するユーザが存在するかどうかは、ユーザ管理部３０２を用いてユーザ情報テーブル５０１に参加グループＩＤが登録されていないユーザが存在するかを調べることで判定できる。
【００４１】
以上説明したように、本実施形態によれば、グループに参加したいユーザは、グループ作成者の近くでボタンを押下するだけで簡単にグループに参加することができる。また、グループ作成者が許可したユーザのみがグループに参加するため、グループに属するユーザ間でデータを共有することができる。
【００４２】
＜実施形態２＞
図１７の１７０１は、前述した図６の６０１のグループ選択結果とは異なり、ユーザが第１グループではなく第２グループに属することを希望した一例を説明する図である。
このように、第１グループと第２グループの間でユーザが参加要求を行ったとき、必ずしも距離が近いグループに属さないことが考えられる。本実施形態２では、システムがユーザの意図と異なるグループを選択したとき、ユーザが参加要求をやり直す手間を省くためのものである。
【００４３】
前述の課題に対応するために、図１９のテーブル１９０１は、グループ情報テーブル４０１に、グループの制約条件として参加を取り消したユーザのＩＤを加える。さらに、データ共有装置１０２の動作手順Ｓ１６０１〜Ｓ１６１０に対して、図１８に示すＳ１８０１とＳ１８０２を加える。図１６で説明したフローチャートのＳ１６０５では、グループ作成者が参加を許可しなかった場合、Ｓ１６０８〜Ｓ１６０９に進んでエラー処理を行っていた。
Ｓ１８０１では、エラー処理を行うのではなく、Ｓ１８０２において、グループの制約条件を設定して再度グループの選択をやり直す。参加を許可しなかった場合、Ｓ１８０２は参加取消ユーザとしてユーザＩＤを設定し、Ｓ１６０２によるグループ選択の対象から外すようにする。
また、図１８の動作手順にすることで、第１のユーザで設定された制約条件は、第２のユーザのグループ選択にも用いることが可能となる。
【００４４】
図２０の２００１は、第２のユーザのグループ選択において、第１のユーザの制約条件が考慮された場合の位置関係を表したものである。Ｓ１６０２で用いるグループ選択部３０３では、一番距離が近いグループとして第１グループをまず候補として選択する。
【００４５】
第１グループの制約条件には第１のユーザが属さないことが設定されており、第２のユーザは第１のユーザよりも遠いため、第１グループに属さない可能性があると判断する。第１のユーザの位置を起点に第１グループとは反対側の座標に位置するグループを検索し、第２グループが見つかったため最終的に第２グループが最初に選択される。
２００１は、第２グループが見つかる位置関係の一例だが、第２グループが存在しないなど、グループが見つからない位置関係である場合は、一番距離の近い第１グループを選択してもよい。
【００４６】
以上説明したように、本実施形態によれば、グループ作成者がユーザの参加を許可しなかった場合、グループの制約条件を設定して再度グループ選択を行い、別のグループにも参加確認を行うことで、ユーザが参加要求をやり直す手間を省くことができる。さらに、第１のユーザで設定された制約条件を第２のユーザのグループ選択にも用いることでグループ選択の精度を高めることができる。
【００４７】
（その他の実施形態）
本発明は、前述の実施形態の１以上の機能を実現するコンピュータ読み取り可能なプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４８】
１０１  グループ作成端末
１０２  データ共有装置
１０３  管理データベース
１０４  グループ参加端末
１０５  グループ参加端末
１０６  グループ参加端末
１０７  ネットワーク
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  プログラムＲＯＭ、データＲＯＭ
２０４  ＮＥＴＩＦ
２０５  ＨＤＤ
２０６  入出力バス
３０１  グループ管理部
３０２  ユーザ管理部
３０３  グループ選択部
３０４  グループ参加確認部
３０５  通信部
３０６  通信部
３０７  グループ作成部
３０８  ユーザ確認部
３０９  位置情報取得部
３１０  通信部
３１１  グループ参加部
３１２  位置情報取得部
【図１】
2017004048.tif 000003
【図２】
2017004048.tif 000004
【図３】
2017004048.tif 000005
【図７】
2017004048.tif 000006
【図１１】
2017004048.tif 000007
【図１５】
2017004048.tif 000008
【図１６】
2017004048.tif 000009
【図１８】
2017004048.tif 000010
【図４】
2017004048.tif 000011
【図５】
2017004048.tif 000012
【図６】
2017004048.tif 000013
【図８】
2017004048.tif 000014
【図９】
2017004048.tif 000015
【図１０】
2017004048.tif 000016
【図１２】
2017004048.tif 000017
【図１３】
2017004048.tif 000018
【図１４】
2017004048.tif 000019
【図１７】
2017004048.tif 000020
【図１９】
2017004048.tif 000021
【図２０】
2017004048.tif 000022