JP2006164234A - 情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラム - Google Patents

情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラム Download PDF

Info

Publication number
JP2006164234A
JP2006164234A JP2005284715A JP2005284715A JP2006164234A JP 2006164234 A JP2006164234 A JP 2006164234A JP 2005284715 A JP2005284715 A JP 2005284715A JP 2005284715 A JP2005284715 A JP 2005284715A JP 2006164234 A JP2006164234 A JP 2006164234A
Authority
JP
Japan
Prior art keywords
information
group
command
terminal
synchronization
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.)
Granted
Application number
JP2005284715A
Other languages
English (en)
Other versions
JP4972901B2 (ja
Inventor
Rina Nobuto
里奈 延藤
Hidekazu Sakagami
秀和 坂上
Motohiko Sakaguchi
基彦 坂口
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2005284715A priority Critical patent/JP4972901B2/ja
Publication of JP2006164234A publication Critical patent/JP2006164234A/ja
Application granted granted Critical
Publication of JP4972901B2 publication Critical patent/JP4972901B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】 必要なときに、任意に選択したメンバからなるグループで情報を共有する。
【解決手段】 端末10〜12で行った共有オブジェクトに対する操作やメンバ追加やグループ作成などのグループの制御を、端末10〜12の同期制御情報管理部5、オブジェクト情報管理部6及び招待部7にて記憶部2に対して反映し、その処理内容をグループを構成する他の端末にメッセージ制御部3にて通知し、通知を受けた端末は同様にしてそれを反映することにより、任意に選択したメンバからなるグループで情報を共有する。
【選択図】図1

Description

本発明は、複数の端末間で情報を共有する情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラムに関し、特に、必要なときに、任意に選択したメンバからなるグループで情報を共有する空間を生成でき、更にその空間で共有する情報はいつでも利用でき、更にその空間を利用するツールが容易にかつ自由に実装できる情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラムに関する。
図30は、特定した複数のユーザ間で情報を共有する従来の電子情報共有システムの一例を示す図である。
図30に示すように本例においては、ファイル共有管理システム101において、ネットワーク103に接続されたユーザ端末102a〜102dが保持するファイル一覧や、コミュニティ情報が管理されており、ユーザ端末102a〜102dの要求に応じて、そのユーザ端末の利用ユーザが所属しているコミュニティで参照できるファイル一覧が配信される。例えば、要求を出したユーザ端末102aにおいて、ファイル共有管理システム101にて管理されるファイル一覧から取得したいファイルが選択されると、選択されたファイルを保持するユーザ端末102cにファイル共有管理システム101からその旨が通知され、ユーザ端末102cからユーザ端末102aにファイルが送信されることによって、同じコミュニティに属するユーザ端末間で情報が共有されることになる(例えば、特許文献1参照。)。
図31は、特定した複数のユーザ間で情報を共有する従来のコンピュータシステムの他の例を示す図である。
図31に示すように、本例においては、メモリ206に共有データのコピ−が保持されており、ツール203−1において、ユーザが行った操作に基づいてデータ変更要求が生成され、ダイナミックマネ−ジャ204において、ツールから通知されたデータ変更要求とリモ−トデバイス202から通知されたデータ変更要求が選択されてデータ変更エンジン203−2にて実行される(例えば、特許文献2参照。)。また、通信マネ−ジャ206を介してデータ変更要求が互いに通知されることによって、同じコミュニティに属するデバイス間で情報が共有される。
ここで、上述したような形態の情報共有システムでは、共有文書を同時に複数のデバイスで編集した場合に正しく処理することができず、各デバイスが同じ状態を保てなくなる虞れがある。そこで、デルタと呼ばれるデータ変更要求を順番を保ちながら保持する仕組みと、矛盾が発生したデルタをキャンセルする仕組みと、不要になったデルタを削除する仕組みとによって各デバイスが同じ状態を保つ技術が考えられている(例えば、特許文献3,4参照。)。
特開2004−172818号公報 特表2003−505760号公報 特表2003−526837号公報 特開2004−152289号公報
しかしながら、上述したような従来の技術の情報共有システムにおいては、以下に記載するような問題点がある。
(1)共有ファイル一覧とそれを保管する端末、グループを構成する端末一覧などの情報がサーバにて管理されているために、サーバへのアクセス権限を持ったユーザでなくてはグループ作成やメンバ追加ができないとともに、サーバにて管理されているメンバしかグループに参加させることができず、そのため、ユーザが、必要なときに、任意に選択したメンバからなるグループで情報を共有することができない。
(2)共有ファイル一覧とそれを保管する端末、グループを構成する端末一覧などの情報がサーバにて管理されているために、サーバにアクセスできる環境でなければ共有情報が取得することができず、そのため、ネットワ−クに接続していない状態では、共有する情報を参照したり編集したりすることができない。
(3)端末間通信の仲介を行うためにはリレーサーバが必要となるため、システム専用の24時間運用できるサーバを用意できない場合、情報共有を利用することができない。
(4)新しいツールを実現する場合、対応するデータ変更エンジンも追加で実装する必要があり、また、データ変更エンジンには、すべての処理をロールバックできる仕組みを用意しなくてはならないため、新しいツールの実装に工数がかかってしまう。
(5)複数の端末で情報を共有することによって発生する矛盾の対処を目的として、各端末にデータ変更要求情報を長期間保持しておく必要があるため、端末のメモリを圧迫してしまう。
本発明は、上述したような従来の技術が有する問題点に鑑みてなされたものであって、必要なときに、任意に選択したメンバからなるグループで情報を共有することができる情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラムを提供することを目的とする。
また、ネットワ−クに接続していない状態でも共有する情報を参照したり編集したりすることができる情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラムを提供することを目的とする。
また、端末間の通信手段を、システムを適用するインフラの状況に応じて選択することができる情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラムを提供することを目的とする。
また、共有情報を利用するツールを、容易に、かつ自由に実装することができる情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラムを提供することを目的とする。
また、情報共有実現に際して必須となる競合対処機能のために、端末のリソ−スを圧迫せず、ツールの実装に制約を設けない情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラムを提供することを目的とする。
上記目的を達成するために本発明は、
複数の端末間にて情報を共有するための情報共有空間提供システムであって、
前記複数の端末のそれぞれは、
共有対象となるオブジェクト情報と、端末を保持するユーザが所属するグループのグループ情報やグループの構成メンバのメンバ情報を含む同期制御情報とを保持する記憶手段と、
グループを構成する他の端末とのメッセージの送受信を定期的に行うメッセージ制御手段と、
通知を依頼されたコマンドを一時的に保管し、保管したコマンド及びグループを構成する他の端末から通知されたコマンドの実行制御を行う分散同期管理手段と、
共有情報を利用する機能をユーザに提供し、ユーザとのやりとりを行うツールに対して、同期制御情報の制御APIを提供し、同期制御情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を前記分散同期管理手段に依頼する同期制御情報管理手段と、
前記ツールに対して、オブジェクト情報の制御APIを提供し、オブジェクト情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を前記分散同期管理手段に依頼するオブジェクト情報管理手段と、
前記ツールに対して、グループのメンバ追加に関する制御APIを提供し、グループのメンバ追加に関する制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、当該コマンドのグループを構成する他の端末への通知を前記メッセージ制御手段に依頼する招待手段と、
グループを構成する端末間の情報のやりとりを行う通信手段とを有し、
前記分散同期管理手段は、前記同期制御情報管理手段及び前記オブジェクト情報管理手段から通知を依頼されたコマンドを一時的に保管する。
上記のように構成された本発明においては、各端末で行った共有オブジェクトに対する操作やメンバ追加やグループ作成などのグループの制御を各端末がそれぞれの記憶手段に対して反映し、その処理内容をグループを構成する他の端末に通知し、通知を受けた端末はそれを反映することにより、任意に選択したメンバからなるグループで情報を共有することができる。
また、記憶手段に共有情報の一時記憶部を設け、グループを構成する他の端末に通知していない処理は一時記憶部に反映し、端末がネットワ−クにアクセスできない場合はアクセスできるようになるまでその処理内容を保管しておくことにより、ネットワークに接続していない状態でも共有する情報を参照したり編集したりすることができる。
また、通信手段がメッセージ制御手段からメッセージの送信機能及び受信機能が呼び出せる形態で実装されていれば、使う通信プロトコルを自由に選択することができ、それにより、端末間の通信手段を、システムを適用するインフラの状況に応じて選択することができる。
また、ツールが共通で必要とする機能(オブジェクト情報操作、同期制御情報操作及び招待処理)を利用できるAPIをツールに対して提供することにより、端末のリソースを圧迫せず、ツールの実装に制約が生じてしまうことがなくなる。
また、ツールからのAPI呼び出しによって行われた共有情報の変更をまず記憶手段の一時記憶部に反映し、他端末からの通知による共有情報の変更を記憶部に反映後に、一時記憶部に記録された共有情報の変更を記憶部に反映させる。その際に、共有情報に付加されているバージョン情報を比較することで競合を判定し、判定後は速やかに一時記憶部の情報を削除することによっても、端末のリソースを圧迫せず、ツールの実装に制約が生じてしまうことがなくなる。
本発明は、以下に記載するような効果を奏する。
(1)グループの制御機能の実現にサーバを介さず、端末上の処理と処理内容の端末間のやりとりで行われるため、グループの作成や変更などのグループ構成の制御機能について、各端末がサーバの能力などによる制限をうけることなく利用することができ、ユーザが、必要なときに、任意に選択したメンバからなるグループで情報を共有できる。
(2)共有する情報が各端末の記憶手段に保持され、更に共有情報を一時的に記憶する一時記憶部を有しているため、端末がネットワ−クに繋がっていない状態でも共有情報の参照および編集ができ、その編集内容はネットワ−クが繋がった時に速やかにグループを構成する他の端末に反映することができる。
(3)通信機能が、メッセージ制御機能からメッセージの送信機能及び受信機能が呼び出せる形態で実装されているため、端末間の通信手段を、システムを適用するインフラの状況に応じて選択することができる。
(4)ツールが共通で必要とする機能(オブジェクト情報操作、同期制御情報操作及び招待処理)を利用できるAPIを、ツールに対して提供しているため、共有情報を利用するツールを容易に、かつ自由に実装することができる。
(5)記憶手段に一時記憶部を設けて、ツールからのAPI呼び出しによって行われた共有情報の変更はまず一時記憶部に反映し、他端末からの通知による共有情報の変更を記憶部に反映後に、一時記憶部に記録された共有情報の変更を記憶部に反映させる際に、共有情報に付加されているバージョン情報を比較することで競合を判定し、判定後は速やかに一時記憶部の情報を削除することで、多くの情報を保持せずに競合対処が実現できるため、各端末が競合対処のための情報でメモリが圧迫されることがない。
以下に、本発明の実施の形態について図面を参照して説明する。
(第1の実施の形態)
図1は、本発明の情報共有空間提供システムの実施の一形態を示す図である。
図1に示すように本形態においては、端末10内に、情報を記憶する記憶部2と、プログラム制御により動作するデータ処理部1と、グループを構成する端末間の情報のやりとりを実現する1つ以上の通信部8a〜8cとが設けられている。
記憶部2は、端末を保持するユーザが所属する1つ以上のグループのグループ情報や、そのグループを構成するメンバのメンバ情報などの同期制御情報を記憶する同期制御情報記憶部2aと、ツール9a〜9cからの指示により更新された同期制御情報を一時的に記憶する同期制御情報一時記憶部2bと、端末を保持するユーザが所属するグループで共有するオブジェクト情報を記憶するオブジェクト情報記憶部2cと、ツール9a〜9cからの指示により更新されたオブジェクト情報を一時的に記憶するオブジェクト情報一時記憶部2dとから構成されている。
データ処理部1は、グループを構成する他の端末とのメッセージの送受信を定期的に行うメッセージ制御部3と、通知を依頼されたコマンドを一時的に保管し、保管したコマンドと、グループを構成する他の端末からメッセージ制御部3を介して通知されたコマンドとの実行制御を行う分散同期管理部4と、同期制御情報の制御用API(Application Program Interface)をツール9a〜9cに提供し、同期制御情報の制御APIが呼び出された際に、処理内容を表現するコマンドの生成と、コマンドの同期制御情報記憶部2a及び同期制御情報一時記憶部2bへの反映及びそれに伴う競合対応処理を行い、コマンドのグループを構成する他の端末への通知を分散同期管理部4に依頼する同期制御情報管理部5と、グループで共有するオブジェクト情報の制御APIをツール9a〜9cに提供し、オブジェクト情報の制御APIによるコマンドの生成と、コマンドのオブジェクト情報記憶部2c及びオブジェクト情報一時記憶部2dへの反映と、それに伴う競合対応処理を行い、コマンドのグループを構成する他の端末への通知を分散同期管理部4に依頼するオブジェクト情報管理部6と、グループのメンバ追加に関する制御APIをツール9a〜9cに提供し、グループのメンバ追加に関する制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを記憶部2に反映し、コマンドをグループを構成する他の端末への通知をメッセージ制御部3に依頼する招待部7とから構成され、同期制御情報管理部5とオブジェクト情報管理部6から通知を依頼されたコマンドが分散同期管理部4に一時的に保管される。
通信部8a〜8cは、メッセージの送信及び受信メッセージの提供機能を提供するモジュ−ルである。メッセージ制御部3からメッセージの送信機能及び受信機能が呼び出せる形態で実装されていれば、利用する通信プロトコルは不問である。図1に示すように、互いに異なる通信プロトコルを用いた通信機能を有する3つの通信部8a〜8cを実装することで、グループやメンバごとに異なる通信プロトコルを使うことも可能である。通信プロトコルの識別情報は、グループ情報やメンバ情報の情報通知先情報内に含まれる。
本形態の運用の際には、本形態に、共有情報を利用する機能をユーザに提供し、ユーザ操作の受付や共有情報の状態のユーザへの伝達を行う1つ以上のツール9a〜9cを組み合わせる。ツール9a〜9cは本形態が提供するAPIを利用して作成できる。
本形態及びツール9a〜9cは、端末10内のシステムとして実装される。グループを構成するメンバは同じ本形態及びツール9a〜9cが実装された端末11,12を1つ以上保持している。以降、端末10を単に端末又はロ−カル端末、また、端末11,12をリモ−ト端末と呼んで区別することにする。
図2は、図1に示した同期制御情報記憶部2aにて記憶されている同期制御情報の構成例を示す図である。
図2に示すように、グループ情報301は、システムでユニ−クなグループ識別子、競合検出で利用するバージョン、グループ名、グループ宛の情報通知先と、1つ以上の参加メンバ識別子などが記述されている。なお、グループ宛ての情報通知先はなくてもよい。また、メンバ情報302は、システムでユニ−クなメンバ識別子と、競合検出で利用するバージョン、メンバ宛の情報通知先などが記述されている。グループ情報301の参加メンバ識別子は、グループメンバ情報302のメンバ識別子と対応づけられている。ここで示した構成例では共有に必要な最低限の情報だけを示しており、これらに加えて、グループ情報301には、グループ作成者やグループの説明などグループの付加情報を記述して共有することができるし、メンバ情報302には、グループメンバの所属情報などの付加情報を記述して共有することができる。
図3は、図1に示したオブジェクト情報管理部2cにて記憶されているオブジェクト情報の構成例を示す図である。
図3に示すように、オブジェクト情報401は、グループでユニ−ク、またはシステムでユニ−クなオブジェクト識別子と、競合検出で利用するバージョン、オブジェクト名、ファイルやスケジュ−ルまたは掲示板のメッセージなどオブジェクトの種別を示すオブジェクトタイプと、オブジェクトタイプ別に決まったフォ−マットでオブジェクトの内容が記述される固有情報によって構成される。固有情報はXML形式で記述されていてもよい。ここで示した構成例では、最低限の情報だけを示しており、これらに加えてオブジェクト作成者や作成日時、最終更新日時など付加情報を記述して共有することができる。
これら同期制御情報とオブジェクト情報とは、同じ仕組みで共有の対象となる情報として扱われる。
同期制御情報管理部5がツール9a〜9cに提供するAPIには、同期制御情報の参照・編集などがある。また、オブジェクト情報管理部6が提供するAPIには、オブジェクト情報の新規登録、参照、編集、削除などがある。招待部7が提供するAPIには、グループ新規作成、招待状作成、招待状読み込み、グループ退会などがある。
また、同期制御情報管理部5は、発生した同期制御情報の更新及び競合発生などの同期制御情報に関するイベントをツール9a〜9cに通知するAPIも提供する。同様にオブジェクト情報管理部6は、発生したオブジェクト情報の新規登録、更新、削除、及び競合発生などのオブジェクト情報に関するイベントをツール9a〜9cに通知するAPIも提供する。同様に、招待部7は、招待状読み込み、グループ参加要求メッセージ取得などの招待処理に関するイベントをツールに通知するAPIも提供する。
ツール9a〜9cはこれらのAPIを使って実現されている、グループで共有するファイルを操作するツールや、スケジュ−ルを共有するツール、掲示板などのツールである。
図4は、図1に示したメッセージ制御部3が扱うメッセージの構成例を示す図である。
図4に示すように、メッセージとは端末間でやりとりされる情報のまとまりであり、1つ以上のコマンドが含まれる。まず、メッセージのあて先情報を示し、対応する通信機能の識別も含む情報通知先情報と、コマンドの対象識別情報(グループ識別子又はユーザ識別子)と、コマンドの対象ごとに割り振られる数値で、メッセージ受信時の整列に使われるメッセージシーケンス番号と、コマンドを処理する機能を区別するコマンド生成識別(同期制御情報管理5、オブジェクト情報管理部6、招待部7のいずれかを示すデータ)と、コマンドデータで成り立つ。
図5は、図1に示したオブジェクト情報管理部6が生成するコマンドの構成例を示す図である。
図5に示すように、コマンドは、ツール経由でユーザが行った処理の内容を記述するデータであり、その構成はコマンドを生成する機能によって異なり、処理の対象となる対象オブジェクト識別子と、新規作成や更新、削除などの作業種別と、処理後の最新のオブジェクト情報と、作業を行ったユーザ識別と、作業日時などが含まれている。
以下に、本形態における動作についてフローチャートを参照して説明する。なお、以下の説明では、「オブジェクト編集対応」と「メッセージの反映・通知」の2種類の処理を説明する。本形態に基づくシステムが動作している端末では、この2つの処理がそれぞれ独立して非同期に動作することで、グループに所属する端末間での情報共有が実現する。すなわち、同期制御情報管理部5における同期制御情報の制御APIが呼び出されたときの処理及びオブジェクト情報管理部6におけるオブジェクト情報の制御APIが呼び出されたときの処理が、メッセージ制御部3にてグループを構成する他の端末との間で定期的に行われるメッセージ送受信処理と非同期に行われている。
まず、図1に示した情報共有空間提供システムにおいて、ある端末のツール上で行われたオブジェクト編集がグループの他の端末に反映される手順について説明する。なお、ここではオブジェクト編集について説明するが、オブジェクト新規追加、オブジェクト削除についても同様の手順で処理内容が他の端末に反映される。
図6は、図1に示した情報共有空間提供システムにおけるオブジェクト編集対応処理を説明するためのフローチャートである。
ユーザからオブジェクト編集が入力されたツールは、入力された情報を設定してオブジェクト情報管理部6が提供するAPIを呼び出す(ステップ501)。
次に、オブジェクト情報管理部6は、オブジェクトの編集内容をオブジェクト情報一時記憶部2dに反映させる(ステップ502)。
次に、オブジェクト情報管理部6は、今回行った処理内容を図5に示したコマンド802に変換し、分散同期管理部4に登録する(ステップ503)。以上でオブジェクト編集時の処理は終了する。
次に、図1に示した情報共有空間提供システムにおけるメッセージの反映・通知処理について説明する。この処理は、端末がネットワ−クに繋がっている間は、一定間隔で繰り返し実行されている。ネットワ−クに繋がっていない場合は、定期的にネットワ−クに繋がっているか否か判定し、繋がっている状態になっていることが判明した場合に、メッセージの反映・通知処理を開始する。すなわち、メッセージ制御部3は、端末がグループを構成する他の端末とのメッセージの送受信ができない期間はメッセージ送受信を行わず、同期制御情報管理部5が提供する同期制御情報の制御APIの呼び出し及びオブジェクト情報管理部6が提供するオブジェクト情報の制御APIの呼び出しに対応して作成されるコマンドを分散同期管理部4に記録し続け、他の端末とのメッセージ送受信が可能になったときに、記録したコマンドの通知を行う。
図7は、図1に示した情報共有空間提供システムにおけるメッセージの反映・通知処理を説明するためのフローチャートである。
まず、メッセージ制御部3が、実装されている通信部8a〜8cに対して、メッセージの取得を指示し、取得したメッセージをメッセージに記述されている情報を利用して整列する(ステップ504)。
整列は、しばらくメッセージの反映・通知処理を行っていなかった端末において、処理対象が同じ(つまり、メッセージに記述されるコマンド対象識別が同じ)複数の処理を複数のメッセージとして取得した場合に、処理が発生した順番どおりに反映を行うために行われる。整列は、同じコマンド対象識別を持つメッセージに対して、メッセージシーケンス番号で並び替えを行うことで実現する。グループごと、またはユーザごとの最新のメッセージシーケンス番号は、グループ、ユーザごとに記録しておき、各端末がメッセージ通知する際には、最新のメッセージシーケンス番号をインクリメントしてメッセージに記述する。メッセージ取得時には、取得したメッセージに記述されたメッセージシーケンス番号で、記録しているメッセージシーケンス番号を書き換える。シーケンス番号が同じメッセージが複数発生する場合があるが、この場合はどちらを先に処理しても良い。
次に、それぞれのメッセージの処理を行う。メッセージが同期制御用メッセージか招待用メッセージかを、コマンド生成機能識別を参照して判断し(ステップ505)、招待用のメッセージであればメッセージは招待部7に通知され、招待機能がメッセージをコマンドに変換し(ステップ506)、コマンドに対応する処理を実行する(ステップ507)。
一方、メッセージが同期制御用メッセージであった場合は、メッセージが分散同期管理部4に通知され、分散同期管理部4がメッセージをコマンドに変換する(ステップ508)。分散同期管理部4は、同期制御情報管理部5及びオブジェクト情報管理部6のうち、コマンドに対応する構成要素にコマンドの実行を依頼する(ステップ509)。対応する機能は、コマンドの対象データの種別(同期制御情報かオブジェクト情報か)によって定まる。通知を受けた同期制御情報管理部5又はオブジェクト情報管理部6はコマンドに記述されている内容を同期制御情報記憶部2a又はオブジェクト情報記憶部2cに反映する(ステップ510)。ここで、反映する対象は一時記憶部ではない。ステップ504で取得した全てのメッセージについて処理が完了すると、次の処理に進む(ステップ511)。
全ての取得メッセージの処理が完了すると、ステップ503で登録された0個以上のコマンドについて処理が行われる。まず、分散同期管理4に登録されたそれぞれのコマンドについて、対応する同期制御情報管理部5、オブジェクト情報管理部6のいずれかの機能にコマンドの内容の記憶部2への反映を依頼する(ステップ512,513)。ここではオブジェクト編集コマンドと想定するため、依頼対象はオブジェクト情報管理部6となる。
オブジェクト情報管理部6は、コマンドに含まれ、オブジェクト情報一時記憶部2dに記憶されたオブジェクト情報のバージョンと、オブジェクト情報記憶部2cに記憶されているオブジェクト情報のバージョンとを比較する。バージョンが一致するか、コマンドに含まれるオブジェクト情報のバージョンが小さな場合は競合と判定される(ステップ514)。
競合していなかった場合は、分散同期管理部4がコマンドをメッセージに変換し、メッセージ制御部3にコマンドの通知を依頼する(ステップ515)。
メッセージ制御部3は、対象オブジェクトを共有するグループの通知先を同期制御情報記憶部2aから取得し、通知先へのメッセージ通知を、通知先に対応する通信部8a〜8cを選択して依頼する。
一方、競合していた場合は、オブジェクト情報管理部6が蓄積コマンドの内容、及びそれがキャンセルされたことをツールに通知する(ステップ517)。
次に、分散同期管理部4で処理済みの登録コマンドを削除する(ステップ518)。
以上の処理は、分散同期管理部4に登録されているコマンド全てに対して行われる(ステップ519)。
すべてのコマンドの処理が完了した後、メッセージ制御部3はオブジェクト情報一時記憶部2b及び同期制御情報一時記憶部2dのデータを廃棄させる(ステップ520)。
以上が定期的に行われるメッセージの反映・通知処理である。
図2に示したグループ情報301及びメンバ情報302の編集についてもほぼ同様の処理でグループの他の端末に反映される。異なる点は、ステップ502にて処理を反映する対象が同期情報一時記憶部2bであることと、ステップ513にて処理を反映する対象が同期情報記憶部2aであることと、ステップ502,503,513,517にて処理を行うモジュ−ルがオブジェクト情報管理部6ではなく同期制御情報管理部5であることである。
以上で述べた、情報同期手順が実現できるためには、グループを構成する各端末が、所属するグループの情報、グループのメンバ情報(これらをまとめて同期制御情報と呼ぶ)の最新の情報を保持していなくてはならない。従って、グループへの新しいメンバの追加や削除を支援する機能が提供されていないと、処理の度に各端末上の同期制御情報を人手で変更しなくてはならず、現実的ではない。
以下に、図1に示した情報共有空間提供システムにおけるグループの新規作成及びグループへの招待手順について説明する。
図8は、図1に示した情報共有空間提供システムにおけるグループの新規作成及びグループへの招待手順を説明するためのフローチャートである。
まず、招待元端末が、同期制御情報管理部5が提供するAPIを利用して新規グループ情報を同期制御情報記憶部2aに登録する(ステップ601)。
次に、同期制御情報管理部5が提供するAPIを利用して、作成したグループの参加者として自分自身を加える。具体的には、グループ情報の参加メンバ識別子に端末を保持するユーザのユーザ識別子が書き加えられる(ステップ602)。以上で新規グループ作成処理は完了する。
次に、招待部7が提供するAPIを利用して、グループへの招待状を作成する。招待状はファイルなどユーザが扱える形で作成される(ステップ603)。
図9は、図1に示した情報共有空間提供システムにて作成される招待状の構成例を示す図である。
図9に示すように、招待状は、グループ識別子と、グループの説明情報(グループ名やグループの目的など)と、招待元のメンバ情報(同期制御情報記憶部2aに記憶されているもの)とで構成されている。ここで、同期制御情報記憶部2bに記憶されているグループ情報自体は含まれていない理由は、グループへの参加が確定しているわけではないユーザに対して、参加メンバ情報など詳細情報を渡さないことで、セキュリティを高めるためである。
次に、このようにして作成した招待状を招待先端末に配布する(ステップ604)。配布は人手で行う。たとえば、メ−ルに添付して配布したり、フロッピ−などの物理的な媒体を経由して配布したりする。
招待先端末では取得した招待状を招待部7が提供するAPIを利用してシステムに読み込ませる(ステップ605)。
招待部7は、正常に招待状を読み込めるとイベントをツールに通知し、ツールはユーザに対してグループへの参加の有無を問い合わせる。参加/非参加は招待部7が提供するAPIによってシステムに伝達され、参加しない場合は、招待部7は取り込んだ招待状情報を破棄し、処理は終了する(ステップ606)。
一方、参加する場合は、招待状に含まれる招待元メンバ情報を同期制御情報記憶部2aに記録した後、参加要求メッセージを作成する(ステップ607)。
その後、メッセージ制御部3に招待元端末への参加要求メッセージの通知を依頼し、同期制御情報記憶部2aに記録されたメンバ情報を利用して、参加要求メッセージが招待元端末に通知される(ステップ608)。
図10は、図1に示した情報共有空間提供システムにて端末に通知される参加要求メッセージの構成例を示す図である。
図10に示すように、参加要求メッセージは、参加を希望するグループのグループ識別子と、参加を要求する端末保持ユーザのメンバ情報とで構成されている。
招待元端末では、ステップ608によって通知された参加要求メッセージをメッセージ制御部3が取得し、招待部7に通知する(ステップ609)。
招待部7は、参加要求メッセージ取得イベントをツールに通知する。ツールは通常、招待したユーザに対して、参加要求メッセージを通知したユーザを参加させてよいか確認するダイアログを出し、参加許可/不許可を招待部7が提供するAPIを利用してシステムに通知する(ステップ610)。
参加が不許可であった場合は処理が終了する(または、不許可であったことを招待先端末に伝達してもよい)。
また、参加が許可された場合は、グループを構成する全端末宛にメンバ追加を通知する。メンバ追加通知には、追加するメンバのメンバ情報(参加要求メッセージ702に記載)が含まれる(ステップ611)。
通知を受けた各端末は、それぞれの同期制御情報管理部5において、同期制御情報記憶部2aに対してメンバ情報を追加し、グループ情報の参加メンバ識別子に、参加要求メッセージに記載されていたメンバ情報のメンバ識別子を追加する(ステップ612)。
次に、招待元の端末の招待部7は、招待先の端末に対して参加を許可したグループのグループ情報、グループ構成メンバのメンバ情報、グループで共有するオブジェクト情報を通知するようにメッセージ制御部3に依頼する(ステップ613)。
招待先端末では、通知されたグループ情報、メンバ情報、オブジェクト情報を同期制御情報管理部5及びオブジェクト情報管理部6によって同期制御情報記憶部2a及びオブジェクト情報記憶部2cに記録する(ステップ614)。
招待部7がメッセージ制御部3に通知を依頼するメッセージについては、速やかに招待処理が進行するために、メッセージ制御部3が定期的に行っているメッセージの反映・通知処理の中でメッセージ通知を行うのではなく、別途依頼の都度メッセージ通知が行われるようにメッセージ制御部3内で制御される。
以上の処理で、グループに新メンバを登録することができる。
以下に、本形態の効果について説明する。
本形態では、共有する情報が各端末の記憶部に記憶され、共有情報を一時的に記憶する一時記憶部が存在することで、端末がネットワ−クにつながっていない状態でも共有情報の参照、編集が可能である。更に、ネットワ−クにつながっていない状態で行った編集内容は、ネットワ−クにつながったときに速やかに反映しグループを構成する端末と同じ状態に保つことができる。
また、本形態では、共有する情報がサーバなど物理的に任意のユーザがアクセスできる環境ではなく、グループを構成する端末のみに配布されるため、悪意あるユーザの攻撃や設定ミスなどにより共有情報がグループ外に漏れる可能性が低い。
また、本形態では、グループの作成、変更なども全て端末上の処理と端末間のやりとりで行われるため、グループの管理機能についてサーバの能力による制限や運用上の制限が発生しない。
また、本形態では、図7に示したメッセージの反映・通知処理によって、共有情報の更新が端末に自動的に伝達されているため、ユーザが取得処理を行わなくても常に最新情報を端末が把握していることができる。
また、本形態では、メッセージの送信及び受信メッセージの取得機能を提供する通信部は、メッセージ制御部からメッセージの送信機能及び受信機能が呼び出せる形態で実装されていれば、利用する通信プロトコルは不問であるため、24時間運用できるサーバが用意できない場合は、サーバを必要としない通信プロトコルを利用することで情報共有機能を利用することができる。
また、本形態では、ツールはデータ処理装置が提供する共通のAPIを利用して実装することができるため、新しいツール実装のたびにデータ処理装置の更新が発生することはなくツールの実装が容易である。
また、本形態では、共有のためのメッセージ通知及び反映処理と、ロ−カル端末上でのユーザ操作処理が非同期に動作するため、ユーザに対する処理の反応性が高い。つまり、ユーザにとっては、競合が発生することがある点を除けば、共有していることを意識せずにツールを利用することができる。
また、本形態では、記憶部に一時記憶部を持たせて、ツールからのAPI呼び出しによって行われた共有情報の変更はまず一時記憶部に反映し、他端末からの通知による共有情報の変更を記憶部に反映後に、一時記憶部に記録された共有情報の変更を記憶部に反映させる際に、共有情報に付加されているバージョン情報を比較することで競合を判定し、判定後は速やかに一時記憶部の情報を削除することで、多くの情報を保持せずに競合対処が実現できるため、各端末が競合対処のための情報でメモリが圧迫されることがない。
(第2の実施の形態)
本形態では、同一の共有する情報に対して複数の端末が同時に編集の反映処理を行ってしまった場合でも、グループを構成する各端末が共有情報を同じ状態に保つことを可能とする。
例えば、第1の実施の形態では、端末Aと端末Bがファイルαに対する編集をほぼ同時に行い、同じタイミングでメッセージの反映・取得処理を行った場合、端末Aが、端末Bの編集内容の記述したメッセージを取得する前に端末Aの編集内容を送信し、端末Bが、端末Aの編集内容を記述したメッセージを取得する前に端末Bの編集内容を送信してしまうことがあり得る。第1の実施の形態では、この場合に端末Aと端末Bとが異なるファイルαを持つことになってしまうが、本形態では、この場合でも端末A,B、及びグループを構成する他の端末が全て、ファイルαについて同じ状態を保つことができる。また、このような問題を解決するためには、端末Aと端末Bの処理を行った時間を保持しておき、先に行われた処理を優先すると判定することが考えられるが、このような対処を行うためには、統一時刻を管理するサーバが必要となる。本形態では、統一時刻を管理するサーバが無い状態で、各端末の状態を同じ状態に保つ。
本形態では、リモ−ト端末で行った操作に対応するコマンドの反映時にも競合判定及び対処を行うことで上述の機能を実現する。構成においては第1の実施の形態と変わらないが、オブジェクト情報管理部6、同期制御情報管理部5及び分散同期管理部4の動作が一部異なっている。
図11は、図1に示した情報共有空間提供システムにおけるメッセージ反映・通知処理の他の例を説明するためのフローチャートである。以下に、第1の実施の形態と異なる処理ステップのみ説明する。
ステップ701〜704の処理は、図7に示したステップ504〜507の処理と同様である。
ステップ705において、分散同期管理部4は、取得メッセージをコマンドに変換すると同時に、通知済みのコマンドとして記録する。
その後、分散同期管理部4が、コマンドに対応するオブジェクト情報管理部6または同期制御情報管理部5に対してコマンドの実行を依頼すると(ステップ706)、オブジェクト情報管理部6または同期制御情報管理部5は、オブジェクト情報記憶部2dまたは同期制御情報記憶部2aからコマンド対象となる共有情報のバージョンを取得し、コマンドに含まれる共有情報のバージョンと比較する。バージョンが一致するか、コマンドに含まれる共有情報のバージョンが小さな場合は競合と判定される(ステップ707)。
競合していないと判定された場合は、対応する記憶部にコマンドの内容を反映させるが(ステップ708)、競合していると判定された場合は、オブジェクト情報管理部6または同期制御情報管理部5は、今回扱ったコマンドの処理対象オブジェクトと同じオブジェクトを対象としているコマンドを、分散同期管理部4が記録している通知済みのコマンドから取り出す(ステップ710)。
次に、取得したコマンドと今回処理を行ったコマンドから競合内容(コマンドを発生させたメンバと、コマンドの内容)をツールに通知する(ステップ711)。
更に、競合したオブジェクトを同期エラ−状態に変更する(ステップ712)。
これらの処理は、同時に操作内容が通知された場合、どちらを優先すべきかは自動で判定できないため、人間に状態を通知して対処を依頼することを意味している。
図12は、図1に示したオブジェクト情報記憶部2cにて記憶されているオブジェクト情報の他の構成例を示す図である。
図12に示すように本形態では、オブジェクト情報は同期エラ−状態が記述できる形式で、オブジェクト情報記憶部に記録されている。同期エラ−状態のオブジェクトは、参照・削除はできるが編集はできないようにオブジェクト情報管理部6において制御される。
その後のステップ713〜718の処理は、図7に示したステップ512〜517の処理と同様である。
分散同期管理部4に記録された未通知のコマンド処理時の処理内容が一部異なる。これらのコマンドについて通知が完了すると、分散同期管理部4は処理したコマンドを通知済みコマンドとして再登録する(ステップ719)。更に、1つ前のメッセージ反映・通知処理で処理した通知済みコマンドを削除する(ステップ720)。
このようにして、定期的に行うメッセージの反映・通知処理の前回に処理したコマンドを記録しておくことにより、競合が検出された際の競合内容の把握を可能にする。ただし、端末間でやりとりされるメッセージが通信経路のどこかで遅延した場合などは、競合対象となるコマンドは前回のコマンド内に含まれていないこともある。この場合は競合内容が正しく把握できないとすることになるが、更に古いコマンドを記録しておき、競合内容が正しく把握できるようにすることもできる。
以下に、本形態の効果について説明する。
本形態では、通知済みのコマンド及びリモ−ト端末から通知されたコマンドを次のメッセージ反映・通知処理が完了するまで保管し、リモ−ト端末で行った操作の反映時にも競合判定及び対処を行うため、同一の共有する情報に対して複数の端末が同時に編集の反映処理を行ってしまった場合でも、統一時刻を管理するサーバを利用せずに、グループを構成する各端末が共有情報を同じ状態に保つことが可能である。
(第3の実施の形態)
本形態を利用して実現するツールは、ツールごとに共有する情報の種類が異なるが、各ツールで扱う共有情報はオブジェクト情報という共通の枠の中で表現する。例えば、スケジュ−ル管理ツールであれば、スケジュ−ル情報(例:10:00から会議室でプロジェクト会議を行う)が1つのオブジェクト情報として定義される。ファイル管理ツールであれば、ファイル情報(例:ファイルサイズやファイルタイプ、階層構造など)とファイルのデータがスケジュ−ル情報とはオブジェクトタイプが異なるオブジェクト情報として定義される。
ここで、競合判定処理を考える。第1及び第2の実施の形態では、競合判定処理を行う単位はオブジェクト情報であった。この場合、以下のような問題が発生することがある。
・ファイル名の変更とファイル内容の編集が競合と判定されてしまう
・ファイルの移動とファイル内容の編集が競合と判定されてしまう
・ファイルの付加情報(コメント)の変更と、ファイルの編集が競合してしまう
いずれも、2つの処理は競合と判定するべきではない。これらの問題は全て、オブジェクト情報で表現される内容はいくつかのパ−トに分けられて、互いの内容が干渉しあわないにも関わらず、システム上では1つのオブジェクト情報として扱っていることを原因としている。
図13は、図1に示したオブジェクト情報記憶部2cにて記憶されているオブジェクト情報の他の構成例を示す図である。
図13に示すように本形態では、オブジェクト情報は、オブジェクト識別子以外は4つのパ−トに分けられる。メタ情報部403a、ファイル情報部403b、親子関係情報部403c、固有情報部403cである。メタ情報部403aには、メタ情報バージョン、オブジェクト名、オブジェクトタイプ、同期エラ−状態が含まれている。これらに加えて、最終更新日や更新者情報などの付加情報が含まれていてもよい。メタ情報部403aに含まれる情報が変更されるとメタ情報バージョンがインクリメントされる。ファイル情報部403bは、ファイルが含まれるオブジェクトの場合にのみ記述され、ファイルの内容が編集されるとファイル情報バージョンがインクリメントされる。ファイル識別子とは、ファイルデータがオブジェクト情報とは別に保持されている場合にファイルデータの所在を示す値である。親子関係情報部403cには、親子関係バージョンと親オブジェクトのデータが含まれている。これらに加えて、親子関係に関する付加情報が含まれていてもよい。親子関係情報部403cに含まれる情報が変更されると、親子関係バージョンがインクリメントされる。固有情報部403dには、固有情報バージョンと固有情報が含まれており、固有情報部に含まれる情報が変更されると、固有情報バージョンがインクリメントされる。
オブジェクト情報管理部6は、ツールに対して、情報部ごとの編集APIを提供する。各編集APIに対応するコマンドの処理では、情報部ごとにバージョンを比較して競合判定を行う。これによって同じオブジェクトであっても、対象とする情報部が異なる編集処理同士は競合しないこととなる。
このオブジェクト表現を、例えばファイルに適用すると、ファイル名はメタ情報部に記述され、ファイルデータはファイル情報部、親フォルダの情報は親子関係情報部、コメントなど付加情報は固有情報部に記述されることになる。これによって、ロ−カル端末におけるファイル名の変更が、ファイルデータの編集やファイルの移動、ファイルのコメントの編集と競合することはなくなる。
以下に、本形態の効果について説明する。
本形態では、オブジェクト表現をメタ情報、ファイル情報、親子関係情報、固有情報に分割してバージョン管理することにより、無駄な競合を発生させないことができる。また、オブジェクト表現及び競合対応処理を汎用的に実現することにより、ツール毎に異なる競合対応処理を実装する必要が無くなる。
(第4の実施の形態)
本形態では、グループの各メンバの権限制御が実現できる。例えば、ユーザAに対して、ファイルの参照は許すが編集は許さない、などの制御を、サーバを利用せずに実現する。
図14は、本発明の情報共有空間提供システムの他の実施の形態を示す図である。
本形態は図14に示すように、第1〜第3の実施の形態と比べて、権限管理部20が追加されている点が異なるものである。この権限管理部20は、ツール9a〜9cに対して、ロールと呼ばれる権限情報の制御(新規登録、編集、削除)と、メンバへのロールの付加、削除を行うAPIを提供する。また、発生したロール情報の制御やメンバへのロール付加・削除などのイベントをツール9a〜9cに通知するAPIも提供する。更に、同期制御情報記憶部2a及び同期制御情報一時記憶部2bに対して、ロール情報及びグループ情報の変更及びそれに伴う競合対処処理を行う。
図15は、図14に示した同期制御情報記憶部2a及び同期制御情報一時記憶部2bにて記憶されるロール情報及びグループ情報の構成例を示す図である。
図15に示すように、ロール情報601は、グループごとに定義できるようになっており、識別するための情報として、グループ識別子とロール識別子を持つ。ロール識別子はグループでユニ−クな値である。また、競合対応処理のために利用されるバージョン、ロール名、及び許可コマンドの一覧又は禁止コマンドの一覧で構成される(許可コマンドが記述されている場合記述されていないコマンドは禁止されていることを示す。禁止コマンドが記述されている場合、記述されていないコマンドは許可されていることを示す)。また、グループ情報602には、参加メンバ識別子ごとに、参加メンバに与えられたロール識別子が記述される。
以下に、本形態における動作について説明する。
図16は、図15に示した情報共有空間提供システムにおけるオブジェクト編集対応処理を説明するためのフローチャートである。
ツール9a〜9cからオブジェクト編集が入力された後(ステップ801)、オブジェクト情報管理部6によって対象の処理が許可されたものかどうか、ロール情報601及びグループ情報602を参照して判定する(ステップ802)。
許可されていない処理であった場合、オブジェクト情報管理部6がツール9a〜9cに実行失敗を通知して(ステップ803)、終了する。許可されたものである場合は、第1〜3の実施の形態におけるステップ502,503と同じ処理が実行される(ステップ804,805)。
メッセージの反映・通知処理は図11に示したフローと基本的に同じであるが、競合判定時の処理内容が異なる。ステップ707で、リモ−ト端末から通知されたコマンドの処理時に競合判定する場合、同期制御情報管理部5、オブジェクト情報管理部6及び招待部7は、通知したリモ−ト端末に対応するユーザに通知されたコマンド処理が許可されているかどうか、ロール情報及びグループ情報を参照して判定する。許可されていない場合、すなわち、コマンドの実行権限がないと判定された場合は、そのコマンドは競合したものと判定される。ステップ710では、権限管理の競合の場合は端末保持ユーザのロールを変更したコマンド、または端末保持ユーザのロール情報を変更したコマンドが競合コマンドと判定される。
また、ステップ715で、ロ−カル端末で発生したコマンドの処理時に競合判定する場合にも、ロ−カル端末保持メンバが対象の処理を許可されているか再判定する。ここで許可されていないと判定された場合は、競合と判定される。
一方、コマンドの実行権限があると判定された場合は、反映が実行される。
図17は、図15に示した情報共有空間提供システムにおけるロール編集対応処理を説明するためのフローチャートである。
オブジェクト編集対応処理と同じで、オブジェクト情報管理部6の処理を権限管理部20が行うところのみが異なる。
メンバへのロール付加・削除処理手順は、メンバ追加・削除などの同期制御情報編集処理と同じであるため説明は省略する。
以下に、本形態の効果について説明する。
本形態では、グループを構成する各メンバの権限情報をロール情報と、グループ情報に記載するメンバごとのロール識別子とで表現し、構成にツールに対してロール情報の制御と、メンバへのロールの付加、削除を行うAPI、また、発生したロール情報の制御やメンバへのロール付加・削除などのイベントをツールに通知するAPIを提供し、同期制御情報記憶部2a及び同期制御情報一時記憶部2bに対して、ロール情報及びグループ情報の変更及びそれに伴う競合対処処理を行う権限管理部20を加え、オブジェクト情報管理部6及び同期制御情報管理部5におけるコマンド処理時にコマンドの実行権限を確認し、権限がない場合はコマンドの実行をキャンセルしたり、競合と判定することで、管理サーバが無い状態でもグループの各メンバの権限制御が実現できる。
(第5の実施の形態)
メッセージの送受信に利用するプロトコルによっては、メッセージの遅延が発生することがある。同一オブジェクトへの更新メッセージが複数個通知された場合に、遅延によってメッセージの発生順序が前後して端末に処理されてしまうと、図11のステップ707における競合判定において、間違って競合と判断されてしまう。本形態では、メッセージの遅延が発生しても誤って競合と判定しない構成について説明する。
図18は、本発明の情報共有空間提供システムの他の実施の形態を示す図である。
本形態は図18に示すように、図14に示したものに対して、記憶部2に蓄積コマンド記憶部2eが追加されて構成されている。
図19は、図18に示した情報共有空間提供システムにおけるメッセージ反映・通知処理を説明するためのフローチャートである。
以下に、第2の実施の形態と異なる処理ステップのみを説明する。
メッセージの競合判定(ステップ707)において、オブジェクト情報管理部6または同期制御情報管理部5は、オブジェクト情報記憶部2dまたは同期制御情報記憶部2aからコマンド対象となる共有情報のバージョンを取得し、コマンドに含まれる共有情報のバージョンと比較する。この際に、コマンドに含まれる共有情報のバージョンが記憶部のバージョンよりも大きく、バージョンの差から届いていないコマンドがあると判断される場合(例えば、情報更新の度にバージョンを1加算している場合には、バージョンの差が2以上ある場合は届いていないコマンドがあると判断できる)、処理対象のコマンドは蓄積すると判断される。
蓄積を判断されたコマンドは、分散同期管理部4によって蓄積コマンド記憶部2eに保持される(ステップ901)。
すべての取得メッセージの処理が完了した後(ステップ709)、分散同期管理部4は蓄積コマンド記憶部2eに記録されているコマンドの有無を確認する。
蓄積コマンドが存在する場合は、蓄積コマンド記憶部2eから蓄積コマンドを1つ取り出し、コマンドに対応する機能にコマンド実行を依頼する。以降は、メッセージから取得したコマンドの実行処理と同様のステップを踏む。登録コマンドの処理の前に、すべての蓄積コマンドの処理を行う(ステップ902)。
このように、バージョンによって遅延メッセージの存在を判別し、遅延メッセージが届くまで次のメッセージを蓄積しておくことで、メッセージの遅延が発生したときでも、誤って競合と判定されてしまうことが無くなる。
(第6の実施の形態)
端末を余分に一台用意できる場合は、以下で説明する構成で実施することによって、情報共有の信頼度を高めることができる。この端末を以降はマスタ端末と呼ぶ。マスタ端末は常時起動していることが望ましい。
図20は、システム全体の一構成例を示す図である。
図20に示すように、ネットワークで相互にメッセージ交換が可能な、グループを構成する複数の端末の中に、必ずマスタ端末が存在している。
グループにはいくつかのマスタ端末以外の端末(以降、一般端末と呼ぶ)に加えて、必ずマスタ端末が参加している状態にする。
図21は、図20に示した一般端末の一構成例を示す図であり、図22は、図20に示したマスタ端末の一構成例を示す図である。
本形態における一般端末は図21に示すように、第1の実施の形態における端末の構成(図1)に加えて、マスタ端末連携部811が実装されている。また、分散同期管理部4の動作が一部異なる。また、記憶部2には、マスタ端末情報記憶部2fと、仮実行コマンド記憶部2gとが実装される。
図23は、図21に示したマスタ端末情報記憶部2fに記憶されるマスタ端末情報を示す図である。
マスタ端末情報記憶部2fに記憶されるマスタ端末情報は図23に示すように、マスタ端末識別子とマスタ端末への情報通知先などが記述されている。マスタ端末情報は複数登録されている場合は、グループ作成時にどのマスタ端末を参加させるかをユーザが選択できる。又、同期制御情報記憶部2aに記憶されるグループ情報が一部異なる。図23に示すように、グループ情報にグループのマスタ端末の識別子が加わる(822)。
本形態におけるマスタ端末は図22に示すように、一般端末と構成はほとんど同じであるが、第1の実施の形態における端末の構成(図1)に加えて、マスタ端末制御部812が実装されている。また、分散同期管理部4の動作が一部異なる。
マスタ端末と一般端末はほとんどが同じ動作を行うため、分散同期管理部4で自分がマスタ端末であるかに応じて動作を切り替えるように実装することで、同一のモジュールで一般端末とマスタ端末を実現することができる。
本形態では、グループ作成時の動作、メッセージの反映・通知処理時の動作が他の実施の形態と一部異なる。
図24は、図20に示したシステムにおけるグループ作成時の動作を示すフローチャートである。
一般端末のマスタ端末連携部811は、同期制御情報管理部5における、ユーザからの指示によるグループ作成処理を監視している。グループ作成が発生すると(ステップ901,902)、マスタ端末連携部811は、そのグループがマスタ端末の参加が必要か否かを判定する(ステップ903)。連携の有無は、グループの属性などでグループ作成時に作成者が指定する。連携が必要な場合はグループの参加者情報にマスタ端末を追加し(ステップ904)、マスタ端末を強制招待するメッセージの通知を、メッセージ処理部3に依頼する(ステップ905)。マスタ端末を強制招待するメッセージには、グループ情報や参加メンバ情報が通知される。
マスタ端末は強制招待するメッセージを受け取り、マスタ端末制御部812が同期制御情報管理部5に通知して、指定されたグループにマスタ端末を参加状態にする。具体的には、強制招待するメッセージに含まれる、グループ情報、グループのメンバ情報を、同期制御情報管理部5が同期制御情報記憶部2aに登録する。
さらに、マスタ端末のマスタ端末制御部812は、参加処理結果を招待端末に通知する(ステップ907)。この通知を受け、マスタ端末の参加が成功している場合は処理終了となる。参加失敗時は、マスタ端末連携部811は、グループの参加者からマスタ端末を削除し(ステップ909)、マスタ端末参加失敗をツールに通知する(ステップ910)。
図25は、図20に示したマスタ端末におけるメッセージの反映・通知処理を説明するフローチャートである。
マスタ端末におけるメッセージの反映・通知処理は、他の実施の形態における一般端末のメッセージの反映・通知処理と異なる点は2点である。1点目は、取得メッセージの競合判定において、競合と判定されたときに、分散同期管理部5が、通知元のノードに対してキャンセルメッセージを通知する事である(ステップ921)。キャンセルメッセージには、競合となったメッセージの内容がすべて記載され、更に競合の原因となった情報(たとえば、記憶部に最終の編集内容を記憶していた場合、競合となった処理を行ったメンバなどを取得できる)などを記載することもできる。
もう1点は、競合とならなかったコマンドを本反映した後、そのコマンドをメッセージに変換して全参加端末に通知することである(ステップ922)。
図26は、図20に示した一般端末におけるメッセージの反映・通知処理を説明するフローチャートである。
取得メッセージが同期制御用メッセージであった場合に、キャンセルメッセージか否かを判定する(ステップ923)。キャンセルメッセージであった場合は、分散同期管理部4がメッセージをコマンドに変換し(ステップ924)、対応するオブジェクト情報管理6または同期制御情報管理5に対して、キャンセルメッセージに含まれるコマンドから対応する一時記憶部のデータを削除させ(ステップ925)、キャンセル内容をツールに通知させる(ステップ926)。キャンセルメッセージでない場合は、通常の同期制御用メッセージとして処理される。
更に、キャンセルメッセージでない同期制御用メッセージは、分散同期管理部4によってコマンドに変換され(ステップ705)、対応するオブジェクト情報管理部6又は同期制御情報管理部5によってコマンドの内容を対応する記憶部に反映させられる(ステップ708)。ここで、マスタ端末が競合するメッセージの対処を行っているため、一般端末では競合判定を行う必要がない。
また、コマンドを記憶部に本反映(ステップ708)後、分散同期管理部4は、コマンドが自ノードが送信したコマンドかどうかを判定する(ステップ928)。自ノードが送信したコマンドであった場合は、オブジェクト情報管理部6または同期制御情報管理部5に対して、コマンドに対応する一時記憶部、及び仮実行コマンド記憶部2gの情報を削除させる(ステップ929)。つまり、端末で発生した編集処理は、自端末から通知したメッセージがマスタ端末から通知された時に初めて本反映されることになる。
更に、取得メッセージの処理完了後、分散同期管理部4は、登録コマンドに対応する機能に対して記憶部への競合判定のみを依頼する(ステップ930)(先に述べたように、本反映はマスタ端末からの通知を受けて行うため、このタイミングでは実行されない)。依頼されたオブジェクト情報管理部6または同期制御情報管理部5は競合判定を行い、競合していない場合はメッセージ処理部3に通知を依頼し(ステップ716)、仮実行コマンド記憶部2gにコマンド情報を記録する(ステップ932)。ここで、仮実行コマンド記憶部2gには、コマンドの内容と保管限度時刻が記録される。依頼されたメッセージ処理部3はグループを構成する全ノードにメッセージを通知するのではなく、マスタ端末に通知を行う(ステップ933)。通知先のマスタ端末はグループ情報(822)に記載されている。
更に、コマンド処理後、1つ前に処理した登録コマンドは削除せず、すべての登録コマンドの処理終了後も一時記憶部のデータは破棄しない。これらのデータは自端末が通知したメッセージをマスタ端末から通知された際に削除される(ステップ929)。
更に、すべての登録コマンドの処理完了後、分散同期管理部4は、仮実行コマンド記憶部に保管限度時刻を過ぎたコマンドがないか確認する(ステップ934)。保管限度時刻を過ぎているコマンドが存在していた場合は、対応するオブジェクト情報管理部6または同期制御情報管理部5に一時記憶部のデータを削除させ(ステップ935)、キャンセル内容をツールに通知させる(ステップ936)。つまり、保管限度時刻までマスタ端末から通知がないコマンドは、キャンセルされたものとして扱われる。
このようにマスタ端末と一般端末が動作し、通知済みのメッセージにおける競合の対処がマスタ端末によって行われることで、第2の実施の形態で示したような、複数ノードが同時に同じオブジェクトを編集したとしても、一般端末でオブジェクトや同期制御情報が同期エラー状態になることは無くなる。従って、各ノードにおいてユーザが同期エラー状態のオブジェクト、同期制御情報について手動で同期回復処理をする必要が無くなる。
(第7の実施の形態)
本形態では、第6の実施の形態で説明したマスタ端末を更に機能強化することによって、情報共有の信頼度を更に高める。
通信部を実装するプロトコルによっては、メッセージが紛失するという事態が発生しうる。メッセージが紛失してしまうと、今までの実施の形態では、グループ内で同期状態を保つことは困難である。
第6の実施の形態では、一般端末からマスタ端末へ通知したメッセージが紛失した場合は、マスタ端末から通知が返ってこないため、仮実行コマンドの保管限度時刻を超えてしまい、キャンセルと判定される(ステップ934〜936)。従って、一般端末からマスタ端末への通知メッセージの紛失が発生しても、同期状態を保つことが可能である。しかし、マスタ端末から一般端末への通知が紛失した場合は、一般端末の状態が古い状態となり、共有状態は崩れてしまう。
第6の実施の形態で説明したように、マスタ端末には最新の共有状態が保持されている。従って、定期的に一般端末がマスタ端末の状態と自端末の状態を比較し、ずれがある場合にマスタ端末の状態をコピーすることで、メッセージ紛失が発生した場合にも同期状態を保てるようにする。
図27は、図20に示した一般端末の他の構成例を示す図であり、図28は、図20に示したマスタ端末の他の構成例を示す図である。
図27に示すように、本形態における一般端末には同期チェック部813が実装され、また、図28に示すように、本形態におけるマスタ端末には同期チェック処理部814が実装される。
本形態では、一般端末が定期的に同期回復処理を伴う同期チェック処理を実行する。
図29は、同期回復処理を伴う同期チェック処理の動作を説明するためのフローチャートである。
一般端末では、同期チェック部813が定期的にマスタ端末に対して同期チェック要求通知を行う(実際は、メッセージ処理部3経由で通知する)(ステップ941)。同期チェック要求には、メッセージ識別と、同期チェック対象グループの識別子と、通知元端末の情報が記述されている。
マスタ端末はメッセージ処理部3と分散同期管理部4経由で、同期チェック処理部814が同期チェック要求を受信する(ステップ942)。同期チェック処理部814は、同期チェック要求に記載されているグループ識別子に対応するグループの同期制御情報とオブジェクト情報を同期制御情報管理部5、オブジェクト情報管理部6から取得する(ステップ943)。取得した情報から、グループの同期制御情報とオブジェクト情報の比較用情報(例えば、全情報の識別子とバージョン)をまとめて、同期チェック要求を通知した端末宛に同期チェックの返答として通知する(ステップ944)。
一般端末の同期チェック部813は、同期チェックの返答を受信し、対応するグループの同期制御情報とオブジェクト情報を同期制御情報管理部5、オブジェクト情報管理部6から取得し、受信した比較用情報と比較する(ステップ946)。例えば、全情報の識別子を比較し、存在していない情報が無いか、バージョンが合致しない情報がないかを比較する。情報が合致している場合は、同期状態が保たれているということで同期チェック処理は終了する。合致していなかった場合は、合致していない情報ごとに、同期回復処理を実行する。
同期回復処理は、同期チェックの返答にて通知されている比較用情報で十分な情報がある場合は(ステップ948)、その情報に置き換えるように同期制御情報管理部5又はオブジェクト情報管理部6に依頼する(ステップ954)。同期チェックの返答にて通知されている情報では不十分な場合は、同期チェック部813はマスタ端末に対して、合致していない情報の取得要求を通知する(ステップ949)。マスタ端末の同期チェック処理部814は、情報取得要求を受けて(ステップ950)、対応する情報を同期制御情報管理部5又はオブジェクト情報管理部6から取得し、要求した一般端末宛に通知する(ステップ952)。この通知を受けた一般端末の同期チェック部813は、情報の置き換えを同期制御情報管理部5又はオブジェクト情報管理部6に依頼する(ステップ954)。
このように動作することで、メッセージ紛失が発生した場合でも、グループ参加端末間の同期を維持することが可能となり、情報共有の信頼度を高めることが可能となる。
本発明は、グループでの共同作業を支援するプログラムの基盤、特に、固定的ではないグループの共同作業を支援するプログラム基盤といった用途に適用できる。固定的ではないグループとは、例えば組織の異なるメンバで構成される製品開発プロジェクトや、企業の異なるメンバで構成される標準化策定ワ−クチ−ムなどである。共同作業を支援するプログラムとは例えば、ファイルを共有するツールや、スケジュ−ルを共有するツール、タスクを共有管理するツールなどである。
本発明の情報共有空間提供システムの実施の一形態を示す図である。 図1に示した同期制御情報記憶部にて記憶されている同期制御情報の構成例を示す図である。 図1に示したオブジェクト情報管理部にて記憶されているオブジェクト情報の構成例を示す図である。 図1に示したメッセージ制御部が扱うメッセージの構成例を示す図である。 図1に示したオブジェクト情報管理部が生成するコマンドの構成例を示す図である。 図1に示した情報共有空間提供システムにおけるオブジェクト編集対応処理を説明するためのフローチャートである。 図1に示した情報共有空間提供システムにおけるメッセージの反映・通知処理を説明するためのフローチャートである。 図1に示した情報共有空間提供システムにおけるグループの新規作成及びグループへの招待手順を説明するためのフローチャートである。 図1に示した情報共有空間提供システムにて作成される招待状の構成例を示す図である。 図1に示した情報共有空間提供システムにて端末に通知される参加要求メッセージの構成例を示す図である。 図1に示した情報共有空間提供システムにおけるメッセージ反映・通知処理の他の例を説明するためのフローチャートである。 図1に示したオブジェクト情報記憶部にて記憶されているオブジェクト情報の他の構成例を示す図である。 図1に示したオブジェクト情報記憶部にて記憶されているオブジェクト情報の他の構成例を示す図である。 本発明の情報共有空間提供システムの他の実施の形態を示す図である。 図14に示した同期制御情報記憶部及び同期制御情報一時記憶部にて記憶されるロール情報及びグループ情報の構成例を示す図である。 図15に示した情報共有空間提供システムにおけるオブジェクト編集対応処理を説明するためのフローチャートである。 図15に示した情報共有空間提供システムにおけるロール編集対応処理を説明するためのフローチャートである。 本発明の情報共有空間提供システムの他の実施の形態を示す図である。 図18に示した情報共有空間提供システムにおけるメッセージ反映・通知処理を説明するためのフローチャートである。 システム全体の一構成例を示す図である。 図20に示した一般端末の一構成例を示す図である。 図20に示したマスタ端末の一構成例を示す図である。 図21に示したマスタ端末情報記憶部に記憶されるマスタ端末情報を示す図である。 図20に示したシステムにおけるグループ作成時の動作を示すフローチャートである。 図20に示したマスタ端末におけるメッセージの反映・通知処理を説明するフローチャートである。 図20に示した一般端末におけるメッセージの反映・通知処理を説明するフローチャートである。 図20に示した一般端末の他の構成例を示す図である。 図20に示したマスタ端末の他の構成例を示す図である。 同期回復処理を伴う同期チェック処理の動作を説明するためのフローチャートである。 特定した複数のユーザ間で情報を共有する従来の電子情報共有システムの一例を示す図である。 特定した複数のユーザ間で情報を共有する従来のコンピュータシステムの他の例を示す図である。
符号の説明
1 データ処理部
2 記憶部
3 メッセージ制御部
4 分散同期管理部
5 同期制御情報管理部
6 オブジェクト情報管理部
7 招待部
8a〜8c 通信部
9a〜9c ツール
10〜12 端末
20 権限管理部
301,602 グループ情報
302 メンバ情報
401,402,403a〜403d オブジェクト情報
601 ロール情報
801 メッセージ
802 コマンド

Claims (47)

  1. 複数の端末間にて情報を共有するための情報共有空間提供システムであって、
    前記複数の端末のそれぞれは、
    共有対象となるオブジェクト情報と、端末を保持するユーザが所属するグループのグループ情報やグループの構成メンバのメンバ情報を含む同期制御情報とを保持する記憶手段と、
    グループを構成する他の端末とのメッセージの送受信を定期的に行うメッセージ制御手段と、
    通知を依頼されたコマンドを一時的に保管し、保管したコマンド及びグループを構成する他の端末から通知されたコマンドの実行制御を行う分散同期管理手段と、
    共有情報を利用する機能をユーザに提供し、ユーザとのやりとりを行うツールに対して、同期制御情報の制御APIを提供し、同期制御情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を前記分散同期管理手段に依頼する同期制御情報管理手段と、
    前記ツールに対して、オブジェクト情報の制御APIを提供し、オブジェクト情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を前記分散同期管理手段に依頼するオブジェクト情報管理手段と、
    前記ツールに対して、グループのメンバ追加に関する制御APIを提供し、グループのメンバ追加に関する制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、当該コマンドのグループを構成する他の端末への通知を前記メッセージ制御手段に依頼する招待手段と、
    グループを構成する端末間の情報のやりとりを行う通信手段とを有し、
    前記分散同期管理手段は、前記同期制御情報管理手段及び前記オブジェクト情報管理手段から通知を依頼されたコマンドを一時的に保管する情報共有空間提供システム。
  2. 請求項1に記載の情報共有空間提供システムにおいて、
    前記記憶手段は、グループを構成する他の端末と共通の前記オブジェクト情報を記憶するオブジェクト情報記憶部と、
    ロ−カルの端末で行われた操作を反映した前記オブジェクト情報を記憶するオブジェクト情報一時記憶部と、
    グループを構成する他の端末と共通の前記同期制御情報を記憶する同期制御情報記憶部と、
    ロ−カルの端末で行われた操作を反映した前記同期制御情報を記憶する同期制御情報一時記憶部とを有することを特徴とする情報共有空間提供システム。
  3. 請求項2に記載の情報共有空間提供システムにおいて、
    前記競合対応処理は、前記同期制御情報記憶部または前記オブジェクト情報記憶部に記録されている同期制御情報またはオブジェクト情報のバージョンと、前記同期制御情報一時記憶部または前記オブジェクト情報一時記憶部に記録されている同期制御情報またはオブジェクト情報のバージョンとを比較することによって行うことを特徴とする情報共有空間提供システム。
  4. 請求項1乃至3のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記メッセージ制御手段は、前記同期制御情報管理手段または前記オブジェクト情報管理手段にてグループを構成する他の端末からのメッセージの受信と受信メッセージの反映処理の後、ロ−カルの端末で生成したコマンドの反映処理及び競合対応処理が行われた結果、競合と判定されなかったコマンドのみをグループを構成する他の端末に通知を行うことを特徴とする情報共有空間提供システム。
  5. 請求項1乃至4のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記同期制御情報管理手段における同期制御情報の制御APIが呼び出されたときの処理及び前記オブジェクト情報管理手段におけるオブジェクト情報の制御APIが呼び出されたときの処理が、前記メッセージ制御手段にてグループを構成する他の端末との間で定期的に行われるメッセージ送受信処理と非同期に行われることを特徴とする情報共有空間提供システム。
  6. 請求項1乃至5のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記メッセージ制御手段は、前記端末がグループを構成する他の端末とのメッセージの送受信ができない期間はメッセージ送受信を行わず、前記同期制御情報管理手段が提供する同期制御情報の制御APIの呼び出し及び前記オブジェクト情報管理手段が提供するオブジェクト情報の制御APIの呼び出しに対応して作成されるコマンドを前記分散同期管理手段に記録し続け、他の端末とのメッセージ送受信が可能になったときに、記録したコマンドの通知を行うことを特徴とする情報共有空間提供システム。
  7. 請求項1乃至6のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記同期制御情報が、前記オブジェクト情報と同じ仕組みで共有の対象となる情報として扱われることを特徴とする情報共有空間提供システム。
  8. 請求項1乃至7のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記同期制御情報管理手段または前記オブジェクト情報管理手段は、競合が発生した場合、競合の原因となった2つのコマンドのうち、通知前のロ−カル端末で生成したコマンドがキャンセルされ、キャンセルされた内容をツールに通知することを特徴とする情報共有空間提供システム。
  9. 請求項1乃至8のいずれか1項に記載の情報共有空間提供システムにおいて、
    グループへのメンバ追加は、既に参加している端末にて作成された招待状を使って、招待元と招待先が情報をやりとりすることにより実現することを特徴とする情報共有空間提供システム。
  10. 請求項1乃至9のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記同期制御情報管理手段、前記オブジェクト情報管理手段及び前記招待手段が提供するAPIを利用して、グループ間での情報共有を利用する任意のツールが作成されることを特徴とする情報共有空間提供システム。
  11. 請求項1乃至10のいずれか1項に記載の情報共有空間提供システムにおいて、
    互いに異なる通信プロトコルを具備する複数の通信手段を有することを特徴とする情報共有空間提供システム。
  12. 請求項1乃至11のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記分散同期管理手段は、通知済みのコマンド及びグループを構成する他の端末から通知されたコマンドを、次のメッセージの処理が完了するまで保管し、
    前記同期制御情報管理手段及び前記オブジェクト情報管理手段は、グループを構成する他の端末から通知されたコマンドの反映処理時にも競合判定及び対処を行うことを特徴とする情報共有空間提供システム。
  13. 請求項1乃至12のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記記憶手段は、前記オブジェクト情報を、メタ情報、ファイル情報、親子関係情報及び固有情報に分割し、それぞれバージョン情報を付加して記憶し、
    前記オブジェクト情報管理手段は、前記オブジェクト情報の個々の情報を独立して処理することを特徴とする情報共有空間提供システム。
  14. 複数の端末間にて情報を共有するための情報共有空間提供システムであって、
    前記複数の端末のそれぞれは、
    共有対象となるオブジェクト情報と、端末を保持するユーザが所属するグループのグループ情報やグループの構成メンバのメンバ情報を含む同期制御情報とを保持する記憶手段と、
    グループを構成する他の端末とのメッセージの送受信を定期的に行うメッセージ制御手段と、
    通知を依頼されたコマンドを一時的に保管し、保管したコマンド及びグループを構成する他の端末から通知されたコマンドの実行制御を行う分散同期管理手段と、
    共有情報を利用する機能をユーザに提供し、ユーザとのやりとりを行うツールに対して、同期制御情報の制御APIを提供し、同期制御情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を前記分散同期管理手段に依頼する同期制御情報管理手段と、
    前記ツールに対して、オブジェクト情報の制御APIを提供し、オブジェクト情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を前記分散同期管理手段に依頼するオブジェクト情報管理手段と、
    前記ツールに対して、グループのメンバ追加に関する制御APIを提供し、グループのメンバ追加に関する制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、当該コマンドのグループを構成する他の端末への通知を前記メッセージ制御手段に依頼する招待手段と、
    前記ツールに対して、ロール情報及びメンバに付加されたロールの制御APIを提供し、ロール情報及びメンバに付加されたロールの制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、コマンドのグループを構成する他の端末への通知を前記分散同期管理手段に依頼する権限管理手段と、
    グループを構成する端末間の情報のやりとりを行う通信手段とを有し、
    前記分散同期管理手段は、前記同期制御情報管理手段及び前記オブジェクト情報管理手段から通知を依頼されたコマンドを一時的に保管する情報共有空間提供システム。
  15. 請求項14に記載の情報共有空間提供システムにおいて、
    前記同期制御情報管理手段、前記オブジェクト情報管理手段及び前記招待手段は、コマンドの前記記憶手段への反映時にロール情報及びメンバに付与されたロール情報を参照して、コマンドの実行権限があると判定された場合のみ反映を実行し、実行権限がなかった場合には競合と判定することを特徴とする情報共有空間提供システム。
  16. 請求項12に記載の情報共有空間提供システムにおいて、
    前記同期制御情報管理手段及び前記オブジェクト情報管理手段は、グループを構成する他の端末から通知されたコマンドが競合すると判定された場合は、コマンドの対象であったオブジェクト情報又は同期制御情報が同期できていない状態であることを前記ツールに通知することを特徴とする情報共有空間提供システム。
  17. 請求項12または請求項16に記載の情報共有空間提供システムにおいて、
    前記同期制御情報管理手段及び前記オブジェクト情報管理手段は、グループを構成する他の端末から通知されたコマンドの反映処理時に、前記同期制御情報記憶部または前記オブジェクト情報記憶部に記録されている同期制御情報またはオブジェクト情報のバージョンと、グループを構成する他の端末から通知されたコマンド内に記載されている同期制御情報またはオブジェクト情報のバージョンを比較することによって競合判定を行うことを特徴とする情報共有空間提供システム。
  18. 請求項17に記載の情報共有空間提供システムにおいて、
    前記記憶手段は、一時的に処理が保留されたコマンドを記憶する蓄積コマンド記憶部を有し、
    前記同期制御情報管理手段及び前記オブジェクト情報管理手段は、グループを構成する他の端末から通知されたコマンドの反映処理時に行う競合判定において、前記同期制御情報記憶部または前記オブジェクト情報記憶部に記録されている同期制御情報またはオブジェクト情報のバージョンと、前記グループを構成する他の端末から通知されたコマンド内に記載されている同期制御情報またはオブジェクト情報のバージョンとを比較した際に、バージョンの増加分から通知されていないコマンドがあることを検出し、
    前記分散同期管理手段は、通知されていないコマンドがあることが検出された場合、グループを構成する他の端末から通知されたコマンドを前記蓄積コマンド記憶部に記録し、前記蓄積コマンド記憶部に記録されたコマンドについて、メッセージ送受信の度に他の端末から通知されたコマンドの反映処理と同様に反映処理を行うことを特徴とする情報共有空間提供システム。
  19. 請求項1乃至15、16乃至18のいずれか1項に記載の情報共有空間提供システムにおいて、
    前記複数の端末のうち1つをマスタ端末と定義してグループを構成し、
    グループを構成する前記マスタ端末以外の端末の分散同期管理手段は、グループに通知するメッセージを前記マスタ端末に通知し、
    前記マスタ端末の分散同期管理手段は、通知された前記メッセージについて、競合判定を行い、競合しなかったメッセージを、グループを構成する全端末に通知し、競合したメッセージを、通知した端末のみに競合したことを通知することを特徴とする情報共有空間提供システム。
  20. 請求項19に記載の情報共有空間提供システムにおいて、
    前記マスタ端末以外の端末は、
    グループ作成を監視し、グループ作成時に前記マスタ端末を強制的に招待するマスタ端末連携部と、
    招待するための前記マスタ端末の情報を保持しておくマスタ端末情報記憶部と、
    端末内で実行されたコマンドを前記マスタ端末からの通知が来るまで保管しておく仮実行コマンド記憶部とを有し、
    前記マスタ端末は、前記マスタ端末以外の端末からのグループへの招待を受けてグループに参加するマスタ端末制御部を有することを特徴とする情報共有空間提供システム。
  21. 請求項19または請求項20に記載の情報共有空間提供システムにおいて、
    前記マスタ端末以外の端末は、グループで共有する情報について、前記マスタ端末が保持するグループで共有する情報と等しいかどうかを定期的にチェックし、等しくない情報が存在した場合は、前記マスタ端末の情報をコピーする同期チェック部を有し、
    前記マスタ端末は、同期チェック要求を受けて、グループの同期制御情報とグループで保持するオブジェクト情報の比較用情報を取得し、同期チェック要求を通知した端末宛に返答する同期チェック処理部を有することを特徴とする情報共有空間提供システム。
  22. 請求項21に記載の情報共有空間提供システムにおいて、
    前記マスタ端末以外の端末の同期チェック部は、グループで共有する情報について、マスタ端末が保持するグループで共有する情報と等しいかを定期的にチェックし、等しくない情報が存在した場合は、マスタ端末の情報をコピーし、
    前記マスタ端末の同期チェック処理部は、同期チェック要求を受けて、グループの同期制御情報とグループで保持するオブジェクト情報の比較用情報を取得し、同期チェック要求を通知した端末宛に返答することを特徴とする情報共有空間提供システム。
  23. 複数の端末間にて情報を共有するための情報共有空間提供方法であって、
    共有対象となるオブジェクト情報と、端末を保持するユーザが所属するグループのグループ情報やグループの構成メンバのメンバ情報を含む同期制御情報とを前記端末内の記憶手段に記憶させる処理と、
    前記端末内のメッセージ制御手段によってグループを構成する他の端末とのメッセージの送受信を定期的に行う処理と、
    前記端末内の同期制御情報管理手段によって、共有情報を利用する機能をユーザに提供し、ユーザとのやりとりを行うツールに対して、同期制御情報の制御APIを提供し、同期制御情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記端末内のオブジェクト情報管理手段によって、前記ツールに対して、オブジェクト情報の制御APIを提供し、オブジェクト情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記端末内の招待手段によって、前記ツールに対して、グループのメンバ追加に関する制御APIを提供し、グループのメンバ追加に関する制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、当該コマンドのグループを構成する他の端末への通知を前記メッセージ制御手段に依頼する処理と、
    前記端末内の分散同期管理手段によって、前記同期制御情報管理手段及び前記オブジェクト情報管理手段から通知を依頼されたコマンドを一時的に保管し、保管したコマンド及びグループを構成する他の端末から通知されたコマンドの実行制御を行う処理とを有する情報共有空間提供方法。
  24. 請求項23に記載の情報共有空間提供方法において、
    グループを構成する他の端末と共通の前記オブジェクト情報をオブジェクト情報記憶部に記憶させる処理と、
    ロ−カルの端末で行われた操作を反映した前記オブジェクト情報をオブジェクト情報一時記憶部に記憶させる処理と、
    グループを構成する他の端末と共通の前記同期制御情報を同期制御情報記憶部に記憶させる処理と、
    ロ−カルの端末で行われた操作を反映した前記同期制御情報を同期制御情報一時記憶部に記憶させる処理とを有することを特徴とする情報共有空間提供方法。
  25. 請求項24に記載の情報共有空間提供方法において、
    前記同期制御情報記憶部または前記オブジェクト情報記憶部に記録されている同期制御情報またはオブジェクト情報のバージョンと、前記同期制御情報一時記憶部またはオブジェクト情報一時記憶部に記録されている同期制御情報または前記オブジェクト情報のバージョンとを比較することによって前記競合対応処理を行うことを特徴とする情報共有空間提供方法。
  26. 請求項23乃至25のいずれか1項に記載の情報共有空間提供方法において、
    前記メッセージ制御手段によって、グループを構成する他の端末からのメッセージの受信と受信メッセージの反映処理の後、ロ−カルの端末で生成したコマンドの反映処理及び競合対応処理が行われた結果、競合と判定されなかったコマンドのみをグループを構成する他の端末に通知を行うことを特徴とする情報共有空間提供方法。
  27. 請求項23乃至26のいずれか1項に記載の情報共有空間提供方法において、
    前記同期制御情報管理手段における同期制御情報の制御APIが呼び出されたときの処理及び前記オブジェクト情報管理手段におけるオブジェクト情報の制御APIが呼び出されたときの処理を、前記メッセージ制御手段にてグループを構成する他の端末との間で定期的に行われるメッセージ送受信処理と非同期に行うことを特徴とする情報共有空間提供方法。
  28. 請求項23乃至27のいずれか1項に記載の情報共有空間提供方法において、
    前記メッセージ制御手段によって、前記端末がグループを構成する他の端末とのメッセージの送受信ができない期間はメッセージ送受信を行わず、前記同期制御情報管理手段が提供する同期制御情報の制御APIの呼び出し及び前記オブジェクト情報管理手段が提供するオブジェクト情報の制御APIの呼び出しに対応して作成されるコマンドを前記分散同期管理手段に記録し続け、他の端末とのメッセージ送受信が可能になったときに、記録したコマンドの通知を行うことを特徴とする情報共有空間提供方法。
  29. 請求項23乃至28のいずれか1項に記載の情報共有空間提供方法において、
    前記同期制御情報を、前記オブジェクト情報と同じ仕組みで共有の対象となる情報として扱うことを特徴とする情報共有空間提供方法。
  30. 請求項23乃至28のいずれか1項に記載の情報共有空間提供方法において、
    前記同期制御情報管理手段または前記オブジェクト情報管理手段によって、競合が発生した場合、競合の原因となった2つのコマンドのうち、通知前のロ−カル端末で生成したコマンドがキャンセルされ、キャンセルされた内容をツールに通知することを特徴とする情報共有空間提供方法。
  31. 請求項23乃至30のいずれか1項に記載の情報共有空間提供方法において、
    グループへのメンバ追加を、既に参加している端末にて作成された招待状を使って、招待元と招待先が情報をやりとりすることにより実現することを特徴とする情報共有空間提供方法。
  32. 請求項23乃至31のいずれか1項に記載の情報共有空間提供方法において、
    前記同期制御情報管理手段、前記オブジェクト情報管理手段及び前記招待手段が提供するAPIを利用して、グループ間での情報共有を利用する任意のツールを作成することを特徴とする情報共有空間提供方法。
  33. 請求項23乃至32のいずれか1項に記載の情報共有空間提供方法において、
    互いに異なる通信プロトコルを具備する複数の通信手段のうち、利用する通信プロトコルに応じた通信手段を選択することを特徴とする情報共有空間提供方法。
  34. 請求項23乃至33のいずれか1項に記載の情報共有空間提供方法において、
    前記分散同期管理手段によって、通知済みのコマンド及びグループを構成する他の端末から通知されたコマンドを、次のメッセージ制御が完了するまで保管する処理と、
    前記同期制御情報管理手段及び前記オブジェクト情報管理手段によって、グループを構成する他の端末から通知されたコマンドの反映処理時にも競合判定及び対処を行う処理とを有することを特徴とする情報共有空間提供方法。
  35. 請求項23乃至34のいずれか1項に記載の情報共有空間提供方法において、
    前記オブジェクト情報を、メタ情報、ファイル情報、親子関係情報及び固有情報に分割し、それぞれバージョン情報を付加して前記記憶手段に記憶させ、前記オブジェクト情報管理手段によって、前記オブジェクト情報の個々の情報を独立して処理することを特徴とする情報共有空間提供方法。
  36. 複数の端末間にて情報を共有するための情報共有空間提供方法であって、
    共有対象となるオブジェクト情報と、端末を保持するユーザが所属するグループのグループ情報やグループの構成メンバのメンバ情報を含む同期制御情報とを前記端末内の記憶手段に記憶させる処理と、
    前記端末内のメッセージ制御手段によってグループを構成する他の端末とのメッセージの送受信を定期的に行う処理と、
    前記端末内の同期制御情報管理手段によって、共有情報を利用する機能をユーザに提供し、ユーザとのやりとりを行うツールに対して、同期制御情報の制御APIを提供し、同期制御情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記端末内のオブジェクト情報管理手段によって、前記ツールに対して、オブジェクト情報の制御APIを提供し、オブジェクト情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記端末内の招待手段によって、前記ツールに対して、グループのメンバ追加に関する制御APIを提供し、グループのメンバ追加に関する制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、当該コマンドのグループを構成する他の端末への通知を前記メッセージ制御手段に依頼する処理と、
    前記端末内の権限管理手段によって、前記ツールに対して、ロール情報及びメンバに付加されたロールの制御APIを提供し、ロール情報及びメンバに付加されたロールの制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記端末内の分散同期管理手段によって、前記同期制御情報管理手段及び前記オブジェクト情報管理手段から通知を依頼されたコマンドを一時的に保管し、保管したコマンド及びグループを構成する他の端末から通知されたコマンドの実行制御を行う処理とを有する情報共有空間提供方法。
  37. 請求項36に記載の情報共有空間提供方法において、
    前記同期制御情報管理手段、前記オブジェクト情報管理手段及び前記招待手段によって、コマンドの前記記憶手段への反映時にロール情報及びメンバに付与されたロール情報を参照して、コマンドの実行権限があると判定された場合のみ反映を実行し、実行権限がなかった場合には競合と判定することを特徴とする情報共有空間提供方法。
  38. 請求項34に記載の情報共有空間提供方法において、
    前記同期制御情報管理手段及び前記オブジェクト情報管理手段によって、グループを構成する他の端末から通知されたコマンドが競合すると判定された場合は、コマンドの対象であったオブジェクト情報又は同期制御情報が同期できていない状態であることを前記ツールに通知することを特徴とする情報共有空間提供方法。
  39. 請求項34または請求項38に記載の情報共有空間提供方法において、
    前記同期制御情報管理手段及び前記オブジェクト情報管理手段によって、グループを構成する他の端末から通知されたコマンドの反映処理時に、前記同期制御情報記憶部または前記オブジェクト情報記憶部に記録されている同期制御情報またはオブジェクト情報のバージョンと、グループを構成する他の端末から通知されたコマンド内に記載されている同期制御情報またはオブジェクト情報のバージョンを比較することによって競合判定を行うことを特徴とする情報共有空間提供方法。
  40. 請求項39に記載の情報共有空間提供方法において、
    一時的に処理が保留されたコマンドを蓄積コマンド記憶部に記憶させ、
    前記同期制御情報管理手段及び前記オブジェクト情報管理手段によって、グループを構成する他の端末から通知されたコマンドの反映処理時に行う競合判定において、前記同期制御情報記憶部または前記オブジェクト情報記憶部に記録されている同期制御情報またはオブジェクト情報のバージョンと、前記グループを構成する他の端末から通知されたコマンド内に記載されている同期制御情報またはオブジェクト情報のバージョンとを比較した際に、バージョンの増加分から通知されていないコマンドがあることを検出し、
    前記分散同期管理手段によって、通知されていないコマンドがあることが検出された場合、グループを構成する他の端末から通知されたコマンドを前記蓄積コマンド記憶部に記録し、前記蓄積コマンド記憶部に記録されたコマンドについて、メッセージ送受信の度に他の端末から通知されたコマンドの反映処理と同様に反映処理を行うことを特徴とする情報共有空間提供方法。
  41. 請求項23乃至37、38乃至40のいずれか1項に記載の情報共有空間提供方法において、
    前記複数の端末のうち1つをマスタ端末と定義してグループを構成し、
    グループを構成する前記マスタ端末以外の端末の分散同期管理手段によって、グループに通知するメッセージを前記マスタ端末に通知し、
    前記マスタ端末の分散同期管理手段によって、通知された前記メッセージについて、競合判定を行い、競合しなかったメッセージを、グループを構成する全端末に通知し、競合したメッセージを、通知した端末のみに競合したことを通知することを特徴とする情報共有空間提供方法。
  42. 請求項41に記載の情報共有空間提供方法において、
    前記マスタ端末以外の端末は、
    マスタ端末連携部によって、グループ作成を監視し、グループ作成時に前記マスタ端末を強制的に招待し、
    招待するための前記マスタ端末の情報をマスタ端末情報記憶部に保持し、
    端末内で実行されたコマンドを前記マスタ端末からの通知が来るまで仮実行コマンド記憶部に保管し、
    前記マスタ端末は、前記マスタ端末以外の端末からのグループへの招待を受けてグループに参加するマスタ端末制御部を有することを特徴とする情報共有空間提供方法。
  43. 請求項41または請求項42に記載の情報共有空間提供方法において、
    前記マスタ端末以外の端末は、同期チェック部によって、グループで共有する情報について、前記マスタ端末が保持するグループで共有する情報と等しいかどうかを定期的にチェックし、等しくない情報が存在した場合は、前記マスタ端末の情報をコピーし、
    前記マスタ端末は、同期チェック要求を受けて、グループの同期制御情報とグループで保持するオブジェクト情報の比較用情報を取得し、同期チェック要求を通知した端末宛に返答する同期チェック処理部を有することを特徴とする情報共有空間提供方法。
  44. 請求項43に記載の情報共有空間提供方法において、
    前記マスタ端末以外の端末の同期チェック部によって、グループで共有する情報について、マスタ端末が保持するグループで共有する情報と等しいかを定期的にチェックし、等しくない情報が存在した場合は、マスタ端末の情報をコピーし、
    前記マスタ端末の同期チェック処理部によって、同期チェック要求を受けて、グループの同期制御情報とグループで保持するオブジェクト情報の比較用情報を取得し、同期チェック要求を通知した端末宛に返答することを特徴とする情報共有空間提供方法。
  45. 共有対象となるオブジェクト情報と、端末を保持するユーザが所属するグループのグループ情報やグループの構成メンバのメンバ情報などの同期制御情報とを記憶手段に記憶させる処理と、
    グループを構成する他の端末とのメッセージの送受信を定期的に行う処理と、
    共有情報を利用する機能をユーザに提供し、ユーザとのやりとりを行うツールに対して、同期制御情報の制御APIを提供し、同期制御情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記ツールに対して、オブジェクト情報の制御APIを提供し、オブジェクト情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記ツールに対して、グループのメンバ追加に関する制御APIを提供し、グループのメンバ追加に関する制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記通知を依頼されたコマンドを一時的に保管し、保管したコマンド及びグループを構成する他の端末から通知されたコマンドの実行制御を行う処理とをコンピュ−タに実行させるコンピュータプログラム。
  46. 請求項45に記載のコンピュータプログラムにおいて、
    グループを構成する他の端末と共通の前記オブジェクト情報とグループを構成する他の端末と共通の前記同期制御情報とを前記記憶手段に記憶させる処理と、
    ロ−カルの端末で行われた操作を反映した前記オブジェクト情報とロ−カルの端末で行われた操作を反映した前記同期制御情報とを前記記憶手段に一時的に記憶させる処理とをコンピュ−タに実行させることを特徴とするコンピュータプログラム。
  47. 共有対象となるオブジェクト情報と、端末を保持するユーザが所属するグループのグループ情報やグループの構成メンバのメンバ情報などの同期制御情報とを記憶手段に記憶させる処理と、
    グループを構成する他の端末とのメッセージの送受信を定期的に行う処理と、
    共有情報を利用する機能をユーザに提供し、ユーザとのやりとりを行うツールに対して、同期制御情報の制御APIを提供し、同期制御情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記ツールに対して、オブジェクト情報の制御APIを提供し、オブジェクト情報の制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、反映時に競合対応処理を行い、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記ツールに対して、グループのメンバ追加に関する制御APIを提供し、グループのメンバ追加に関する制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを前記記憶手段に反映し、当該コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記ツールに対して、ロール情報及びメンバに付加されたロールの制御APIを提供し、ロール情報及びメンバに付加されたロールの制御APIの呼び出しに対応したコマンドを生成し、生成したコマンドとグループを構成する他の端末から通知されたコマンドを記憶手段に反映し、反映時に競合対応処理を行い、コマンドのグループを構成する他の端末への通知を依頼する処理と、
    前記通知を依頼されたコマンドを一時的に保管し、保管したコマンド及びグループを構成する他の端末から通知されたコマンドの実行制御を行う処理とをコンピュ−タに実行させるコンピュータプログラム。
JP2005284715A 2004-11-10 2005-09-29 情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラム Expired - Fee Related JP4972901B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005284715A JP4972901B2 (ja) 2004-11-10 2005-09-29 情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2004326707 2004-11-10
JP2004326707 2004-11-10
JP2005284715A JP4972901B2 (ja) 2004-11-10 2005-09-29 情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2006164234A true JP2006164234A (ja) 2006-06-22
JP4972901B2 JP4972901B2 (ja) 2012-07-11

Family

ID=36666136

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005284715A Expired - Fee Related JP4972901B2 (ja) 2004-11-10 2005-09-29 情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP4972901B2 (ja)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009259188A (ja) * 2008-03-17 2009-11-05 Ricoh Co Ltd 共同作業支援装置、共同作業支援システム、共同作業支援方法、プログラムおよび記録媒体
WO2012144159A1 (en) * 2011-04-19 2012-10-26 Sony Corporation Information processing apparatus, wireless communication apparatus, communication system, and information processing method
JP2013005243A (ja) * 2011-06-17 2013-01-07 Sony Corp 無線通信装置、情報処理装置、通信システムおよび無線通信装置の制御方法
JP2013537326A (ja) * 2011-08-31 2013-09-30 アピシオ,インク. 医療情報ナビゲーションエンジン(mine)システム
JP2017069821A (ja) * 2015-09-30 2017-04-06 ヤマハ株式会社 制御端末装置および機器制御プログラム
US10462016B2 (en) 2015-01-19 2019-10-29 Nec Corporation Communication control system, communication control method, and recording medium
CN111414488A (zh) * 2020-03-26 2020-07-14 北京字节跳动网络技术有限公司 在线协同知识库的信息管理方法、装置、存储介质及设备
US11403330B2 (en) 2010-09-01 2022-08-02 Apixio, Inc. Systems and methods for customized annotation of medical information
US11468981B2 (en) 2010-09-01 2022-10-11 Apixio, Inc. Systems and methods for determination of patient true state for risk management
US11475996B2 (en) 2010-09-01 2022-10-18 Apixio, Inc. Systems and methods for determination of patient true state for personalized medicine
US11481411B2 (en) 2010-09-01 2022-10-25 Apixio, Inc. Systems and methods for automated generation classifiers
US11538561B2 (en) 2010-09-01 2022-12-27 Apixio, Inc. Systems and methods for medical information data warehouse management
US11544652B2 (en) 2010-09-01 2023-01-03 Apixio, Inc. Systems and methods for enhancing workflow efficiency in a healthcare management system
US11581097B2 (en) 2010-09-01 2023-02-14 Apixio, Inc. Systems and methods for patient retention in network through referral analytics
US11694239B2 (en) 2010-09-01 2023-07-04 Apixio, Inc. Method of optimizing patient-related outcomes
US11955238B2 (en) 2010-09-01 2024-04-09 Apixio, Llc Systems and methods for determination of patient true state for personalized medicine
US11971911B2 (en) 2022-08-02 2024-04-30 Apixio, Llc Systems and methods for customized annotation of medical information

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06314248A (ja) * 1993-04-30 1994-11-08 Fujitsu Sooshiaru Sci Raboratori:Kk 同期型情報交換システムおよびその情報交換方法と情報交換装置の作成方法
JP2000353138A (ja) * 1999-06-11 2000-12-19 Fujitsu Ltd 電子会議構築方式
JP2004152289A (ja) * 2002-10-24 2004-05-27 Groove Networks Inc ピアツーピア型コラボレーション・コンピュータ・システム内の複数のエンドポイント間で共有空間の一貫性を維持するための方法及び装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06314248A (ja) * 1993-04-30 1994-11-08 Fujitsu Sooshiaru Sci Raboratori:Kk 同期型情報交換システムおよびその情報交換方法と情報交換装置の作成方法
JP2000353138A (ja) * 1999-06-11 2000-12-19 Fujitsu Ltd 電子会議構築方式
JP2004152289A (ja) * 2002-10-24 2004-05-27 Groove Networks Inc ピアツーピア型コラボレーション・コンピュータ・システム内の複数のエンドポイント間で共有空間の一貫性を維持するための方法及び装置

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009259188A (ja) * 2008-03-17 2009-11-05 Ricoh Co Ltd 共同作業支援装置、共同作業支援システム、共同作業支援方法、プログラムおよび記録媒体
US11403330B2 (en) 2010-09-01 2022-08-02 Apixio, Inc. Systems and methods for customized annotation of medical information
US11955238B2 (en) 2010-09-01 2024-04-09 Apixio, Llc Systems and methods for determination of patient true state for personalized medicine
US11694239B2 (en) 2010-09-01 2023-07-04 Apixio, Inc. Method of optimizing patient-related outcomes
US11581097B2 (en) 2010-09-01 2023-02-14 Apixio, Inc. Systems and methods for patient retention in network through referral analytics
US11544652B2 (en) 2010-09-01 2023-01-03 Apixio, Inc. Systems and methods for enhancing workflow efficiency in a healthcare management system
US11538561B2 (en) 2010-09-01 2022-12-27 Apixio, Inc. Systems and methods for medical information data warehouse management
US11481411B2 (en) 2010-09-01 2022-10-25 Apixio, Inc. Systems and methods for automated generation classifiers
US11475996B2 (en) 2010-09-01 2022-10-18 Apixio, Inc. Systems and methods for determination of patient true state for personalized medicine
US11468981B2 (en) 2010-09-01 2022-10-11 Apixio, Inc. Systems and methods for determination of patient true state for risk management
CN103477619A (zh) * 2011-04-19 2013-12-25 索尼公司 信息处理装置、无线通信装置、通信系统及信息处理方法
US9271124B2 (en) 2011-04-19 2016-02-23 Sony Corporation Information processing apparatus, wireless communication apparatus, communication system, and information processing method
JP2012227691A (ja) * 2011-04-19 2012-11-15 Sony Corp 情報処理装置、無線通信装置、通信システムおよび情報処理方法
WO2012144159A1 (en) * 2011-04-19 2012-10-26 Sony Corporation Information processing apparatus, wireless communication apparatus, communication system, and information processing method
US10425985B2 (en) 2011-06-17 2019-09-24 Sony Corporation Wireless communication apparatus, information processing apparatus, communication system, and control method for wireless communication apparatus
JP2013005243A (ja) * 2011-06-17 2013-01-07 Sony Corp 無線通信装置、情報処理装置、通信システムおよび無線通信装置の制御方法
JP2013537326A (ja) * 2011-08-31 2013-09-30 アピシオ,インク. 医療情報ナビゲーションエンジン(mine)システム
US10462016B2 (en) 2015-01-19 2019-10-29 Nec Corporation Communication control system, communication control method, and recording medium
JP2017069821A (ja) * 2015-09-30 2017-04-06 ヤマハ株式会社 制御端末装置および機器制御プログラム
CN111414488A (zh) * 2020-03-26 2020-07-14 北京字节跳动网络技术有限公司 在线协同知识库的信息管理方法、装置、存储介质及设备
CN111414488B (zh) * 2020-03-26 2023-05-02 北京字节跳动网络技术有限公司 在线协同知识库的信息管理方法、装置、存储介质及设备
US11971911B2 (en) 2022-08-02 2024-04-30 Apixio, Llc Systems and methods for customized annotation of medical information

Also Published As

Publication number Publication date
JP4972901B2 (ja) 2012-07-11

Similar Documents

Publication Publication Date Title
JP4972901B2 (ja) 情報共有空間提供システム、情報共有空間提供方法及びコンピュータプログラム
KR101201091B1 (ko) 복수의 컴퓨터 시스템을 통해 전자 문서를 거의 실시간으로 공동 작업 가능하게 하기 위한 방법, 시스템 및 장치
CA2413615C (en) Conflict resolution for collaborative work system
US9432455B2 (en) Synchronizing events between mobile devices and servers
US6324587B1 (en) Method, computer program product, and data structure for publishing a data object over a store and forward transport
US8589340B2 (en) Data synchronization via three or more paths
RU2357283C2 (ru) Схема обновления соединений с сетевым печатающим устройством для клиентов печатающего устройства
US20070067354A1 (en) Productivity suite to line of business synchronization mechanism
JP2003526837A (ja) 活動状態によるコラボレーションを装備した分散コンピュータシステムにおいてデータ変更要求を順位付け、データの一貫性を維持するための方法ならびにその装置
JP2009500698A (ja) データ共有を伴うインスタントメッセージング
JP2000132443A (ja) コンピュータ、情報共有システム、及びレプリカ同一性保持方法
US20070129014A1 (en) Information synchronization
WO2013166520A1 (en) Repository redundancy implementation of a system which incrementally updates clients with events that occurred via cloud-enabled platform
KR101545626B1 (ko) Dds-db 연동 시스템
US9313269B2 (en) Blending single-master and multi-master data synchronization techniques
US7516132B1 (en) Mechanism for enabling distributed file sharing among a plurality of nodes in a network
US5802322A (en) Method and apparatus for the serialization of updates in a data conferencing network
CN116382943A (zh) 顺序消息处理方法、总线系统、计算机设备及存储介质
JP2006202310A (ja) フレームワークシステム
JP2005267266A (ja) グループ間情報共有システム
AU2006292299A1 (en) Productivity suite to line of business synchronization mechanism
JP4364689B2 (ja) 通信システム、および同システムにおけるマスターピアの異常復帰方法、ならびにコンピュータプログラム
Robin et al. DTNDocs: A delay tolerant peer-to-peer collaborative editing system
JP5195564B2 (ja) 情報処理システム、情報処理方法および情報処理装置
JP2007316719A (ja) メッセージ通信方法、装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120224

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: 20120313

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120326

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4972901

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150420

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees