図1を参照して、実施形態に係る情報処理システムについて説明する。図1には、実施形態に係る情報処理システムの構成の一例が示されている。
実施形態に係る情報処理システムは、一例として、連携サーバ14と、K個(Kは1以上の整数)のファイル管理サーバと、L個(Lは1以上の整数)のメッセージングサーバと、M個(Mは1以上の整数)の端末装置とを含む。
図1に示す例では実施形態に係る情報処理システムは、ファイル管理サーバ10A,10B,・・・,10Kと、メッセージングサーバ12A,12B,・・・,12Lと、端末装置16A,16B,・・・,16Mとを含む。これらは一例に過ぎず、1又は複数のファイル管理サーバ、1又は複数のメッセージングサーバ、及び、1又は複数の端末装置が、実施形態に係る情報処理システムに含まれる。
以下では、ファイル管理サーバ10A,10B,・・・,10Kを区別する必要がない場合には、これらを「ファイル管理サーバ10」と称することとする。メッセージングサーバ12A,12B,・・・,12Lを区別する必要がない場合には、これらを「メッセージングサーバ12」と称することとする。端末装置16A,16B,・・・,16Mを区別する必要がない場合には、これらを「端末装置16」と称することとする。
ファイル管理サーバ10、メッセージングサーバ12、連携サーバ14及び端末装置16は、他の装置と通信する機能を有する。その通信は、ケーブルを利用する有線通信であってもよいし、無線通信であってもよい。無線通信は、例えば、近距離無線通信やWi-Fi(登録商標)等である。近距離無線通信は、例えば、Bluetooth(登録商標)やRFID(Radio Frequency Identifier)等である。各装置は、LAN(Local Area Network)やインターネット等の通信経路Nを介して他の装置と通信してもよい。
ファイル管理サーバ10は、ファイルを管理するサービス(以下、「ファイル管理サービス」と称する)を提供する。例えば、ファイル管理サーバ10は、ファイル管理サービスとして、ファイルが記憶される領域である1又は複数のレポジトリを提供する。レポジトリは、記憶領域の一例であり、例えばメモリによって実現される。
レポジトリにアクセスして当該レポジトリを利用する権限であるアクセス権(以下、「第1アクセス権」と称する)が、ユーザに予め与えられる。ユーザは、端末装置16を用いて当該ユーザが第1アクセス権を有するレポジトリにアクセスし、当該レポジトリにファイルを記憶させたり、当該レポジトリからファイルを取得したりする。
例えば、ファイル管理サーバ10にログインするためのユーザのアカウント情報(以下、「第1アカウント情報」と称する)が、ユーザ毎に定められてファイル管理サーバ10に登録される。第1アカウント情報は、例えば、ユーザIDやパスワードやユーザの生体情報等である。ファイル管理サーバ10にログインする場合、ユーザは、端末装置16を用いて自身の第1アカウント情報をファイル管理サーバ10に送信し、ファイル管理サーバ10へのログインを要求する。ファイル管理サーバ10は、ユーザの端末装置16から送信されてきた第1アカウント情報とファイル管理サーバ10に予め登録されている第1アカウント情報とを照合することで、ログインを要求したユーザを認証する。ユーザの端末装置16から送信されてきた第1アカウント情報がファイル管理サーバ10に登録されている場合、ファイル管理サーバ10は、当該ユーザがファイル管理サーバ10にログインすることを許可する。ログインが許可されたユーザは、ファイル管理サーバ10にログインして、当該ユーザ自身が第1アクセス権を有するレポジトリを利用することが許可される。ユーザの端末装置16から送信されてきた第1アカウント情報がファイル管理サーバ10に登録されていない場合、ファイル管理サーバ10は、当該ユーザがファイル管理サーバ10にログインすることを許可しない。この場合、ユーザは、ファイル管理サーバ10にログインしてレポジトリを利用することが許可されない。これとは別の制御として、ファイル管理サーバ10は、当該ユーザがファイル管理サーバ10にログインすることを許可しない場合であっても、当該ユーザがアクセス権を有する新たなレポジトリを作成することを当該ユーザに許可してもよい。また、ファイル管理サーバ10は、ログインの有無に関わらず、ユーザがレポジトリを利用することや作成することを許可してもよい。
ユーザを認証する処理は、ファイル管理サーバ10以外の装置(例えば認証サーバ)によって行われてもよい。この場合、ファイル管理サーバ10は、認証サーバによる認証処理の結果を受けて、その結果に応じて、ファイル管理サーバ10へのユーザのログインを許可し、又は、許可しない。
ファイル管理サーバ10は、第1アカウント情報を用いてファイル管理サーバ10にログインしないユーザ(例えばゲストユーザ等)に対してファイル管理サービスを提供してもよい。
ファイル管理サーバ10毎に、又は、ファイル管理サービス毎に、第1アカウント情報が定められて、各ファイル管理サーバ10に登録される。各ファイル管理サーバ10に登録される第1アカウント情報は同じ情報であってもよいし、異なる情報であってもよい。例えば、ファイル管理サーバ10Aにログインするための第1アカウント情報と、ファイル管理サーバ10Bにログインするための第1アカウント情報は、同じ情報であってもよいし、異なる情報であってもよい。他のファイル管理サーバ10に登録される第1アカウント情報についても同様である。なお、複数のファイル管理サーバ10にて同じ第1アカウント情報が共用されて、ユーザの認証が行われてもよい。
個々のレポジトリ毎に第1アクセス権が設定されてもよいし、複数のレポジトリをまとめて管理し、当該複数のレポジトリ毎に第1アクセス権が設定されてもよい。1つの第1アカウント情報に1つのレポジトリに対する第1アクセス権が設定されてもよいし、1つの第1アカウント情報に複数のレポジトリに対する第1アクセス権が設定されてもよい。また、複数の異なる第1アカウント情報が1つのグループにまとめられ、当該複数の異なる第1アカウント情報(つまり、当該1つのグループ)に、1又は複数のレポジトリに対する第1アクセス権が設定されてもよい。第1アクセス権は、第1アカウント情報をファイル管理サーバ10に登録するときに設定や変更されてもよいし、第1アカウント情報がファイル管理サーバ10に登録された後に設定や変更されてもよい。なお、第1アクセス権が設定されていないレポジトリが作成され、全てのユーザが当該レポジトリにアクセスすることが許可されてもよい。全てのユーザには、ファイル管理サーバ10にログインしたユーザ、及び、ファイル管理サーバ10にログインしていないユーザ(例えばゲストユーザ等)が含まれる。
ユーザは、端末装置16を用いて、連携サーバ14を介さずに、ファイル管理サーバ10にログインしてファイル管理サービスを利用してもよいし、後述するように連携サーバ14を介してファイル管理サービスを利用してもよい。
ファイルの概念の範疇には、画像データ、動画データ、図形データ、音楽データや音声データ等の音データ、テキストデータ等の文書データ、プログラム、及び、これらの中の少なくとも2つの組み合わせが含まれる。ファイルの形式は特に限定されず、ファイル管理サーバ10によって管理されるファイルは、どのような形式を有するファイルであってもよい。もちろん、ファイル管理サーバ10によって管理されるファイルの形式が制限され、特定の形式を有するファイルのみがファイル管理サーバ10によって管理されてもよい。
例えば、ファイル管理サーバ10は、ファイル管理サービスの提供者によって運営される。つまり、ファイル管理サービスの提供者は、ファイル管理サーバ10を運営することでファイル管理サービスを提供する。複数の異なるファイル管理サーバ10が、同じ提供者によって運営されてもよい。例えば、各ファイル管理サーバ10が、それぞれ異なるファイル管理サービスを提供し、複数の異なるファイル管理サービスが、同じ提供者によって提供されてもよい。もちろん、各ファイル管理サーバ10が別々の提供者によって運営され、各ファイル管理サービスが別々の提供者によって提供されてもよい。
メッセージングサーバ12は、複数のユーザの間で少なくともメッセージをやり取りするサービス(以下、「メッセージングサービス」と称する)を提供する。メッセージは、文字、文字以外の記号や符号、画像、動画、図形、音、又は、これらの中の少なくとも2つを含む。例えば、メッセージングサービスは、電子メールの送受信を行うサービス、SNS(Social Networking Service)、グループウェア、電話等の音声通話、オンライン会議を提供するサービス(例えば、音声、画像及び動画等を利用するサービス)、又は、オンラインゲームを提供するサービスである。オンライン会議は、Web会議、リモート会議又はビデオ会議等と称されることがある。
メッセージングサービスを利用する権限であるアクセス権(以下、「第2アクセス権」と称する)が、ユーザに予め与えられる。ユーザは、端末装置16を用いて当該ユーザが第2アクセス権を有するメッセージングサービスに参加して、当該メッセージングサービスを利用する他のユーザとの間でメッセージをやり取りする。例えば、ユーザが、端末装置16を用いてメッセージングサービスにメッセージを送信すると、当該メッセージは、当該メッセージングサービスを利用する他のユーザに送信される。送信されたメッセージは、例えば、端末装置16のディスプレイに表示されたり、音声としてスピーカから発せられたりする。
例えば、メッセージングサーバ12にログインするためのユーザのアカウント情報(以下、「第2アカウント情報」と称する)が、ユーザ毎に定められてメッセージングサーバ12に登録される。第2アカウント情報は、例えば、ユーザIDやパスワードやユーザの生体情報等である。メッセージングサーバ12にログインする場合、ユーザは、端末装置16を用いて自身の第2アカウント情報をメッセージングサーバ12に送信し、メッセージングサーバ12へのログインを要求する。メッセージングサーバ12は、ユーザの端末装置16から送信されてきたアカウント情報とメッセージングサーバ12に予め登録されているアカウント情報とを照合することで、ログインを要求したユーザを認証する。ユーザの端末装置16から送信されてきた第2アカウント情報がメッセージングサーバ12に登録されている場合、メッセージングサーバ12は、当該ユーザがメッセージングサーバ12にログインすることを許可する。ログインが許可されたユーザは、メッセージングサーバ12にログインして、メッセージを送信したり受信したり閲覧したりすることが許可される。ユーザの端末装置16から送信されてきた第2アカウント情報がメッセージングサーバ12に登録されていない場合、メッセージングサーバ12は、当該ユーザがメッセージングサーバ12にログインすることを許可しない。この場合、ユーザは、メッセージングサーバ12にログインしてメッセージをやり取りすることが許可されない。
ユーザを認証する処理は、メッセージングサーバ12以外の装置(例えば認証サーバ)によって行われてもよい。この場合、メッセージングサーバ12は、認証サーバによる認証処理の結果を受けて、その結果に応じて、メッセージングサーバ12へのユーザのログインを許可し、又は、許可しない。
メッセージングサーバ12は、第2アカウント情報を用いてファイル管理サーバ10にログインしないユーザ(例えばゲストユーザ等)に対してメッセージングサービスを提供してもよい。
メッセージングサーバ12毎に、又は、メッセージングサービス毎に、第2アカウント情報が定められて、各メッセージングサーバ12に登録される。各メッセージングサーバ12に登録される第2アカウント情報は同じ情報であってよいし、異なる情報であってもよい。例えば、メッセージングサーバ12Aにログインするための第2アカウント情報と、メッセージングサーバ12Bにログインするための第2アカウント情報は、同じ情報であってもよいし、異なる情報であってもよい。他のメッセージングサーバ12に登録される第2アカウント情報についても同様である。なお、複数のメッセージングサーバ12にて同じ第2アカウント情報が共用されて、ユーザの認証が行われてもよい。なお、第2アカウント情報として第1アカウント情報と同じ情報が用いられてもよい。
例えば、複数のユーザによって構成されるグループ(例えば、SNS上のグループ(例えばグループチャット)、メーリングリスト(ML)、グループウェア等)、電子掲示板等のスレッド、トピック、又は、特定の話題に関するメッセージの集まり等が、メッセージングサービスのチャンネルとして定められる。ユーザは、1又は複数のチャンネルに参加し、同じチャンネルに参加している他のユーザとの間でメッセージをやり取りする。例えば、メッセージングサービスにおいて、ユーザや管理者等によってチャンネルが形成され、1又は複数のユーザが当該チャンネルに参加してメッセージをやり取りすることが許可される。
個々のチャンネル毎に第2アクセス権が設定されてもよいし、複数のチャンネルをまとめて管理し、当該複数のチャンネル毎に第2アクセス権が設定されてもよい。1つの第2アカウント情報に1つのチャンネルに対する第2アクセス権が設定されてもよいし、1つの第2アカウント情報に複数のチャンネルに対する第2アクセス権が設定されてもよい。また、複数の異なる第2アカウント情報が1つのグループにまとめられ、当該複数の異なる第2アカウント情報(つまり、当該1つのグループ)に、1又は複数のチャンネルに対する第2アクセス権が設定されてもよい。第2アクセス権は、第2アカウント情報をメッセージングサーバ12に登録するときに設定や変更されてもよいし、第2アカウント情報がメッセージングサーバ12に登録された後に設定や変更されてもよい。
ユーザは、端末装置16を用いて、連携サーバ14を介さずに、メッセージングサーバ12にログインしてメッセージングサービスを利用してもよいし、後述するように連携サーバ14を介してメッセージングサービスを利用してもよい。
例えば、メッセージングサーバ12は、メッセージングサービスの提供者によって運営される。つまり、メッセージングサービスの提供者は、メッセージングサーバ12を運営することでメッセージングサービスを提供する。複数の異なるメッセージングサーバ12が、同じ提供者によって運営されてもよい。例えば、各メッセージングサーバ12が、それぞれ異なるメッセージングサービスを提供し、複数の異なるメッセージングサービスが、同じ提供者によって提供されてもよい。もちろん、各メッセージングサーバ12が別々の提供者によって運営され、各メッセージングサービスが別々の提供者によって提供されてもよい。
連携サーバ14は、特定の目的毎にユーザによって設定された各活動に、1又は複数のファイル管理サービスと1又は複数のメッセージングサービスとに含まれる1又は複数のサービスを連携させ、連携済みのファイル管理サービスとメッセージングサービスとを提供する。連携サーバ14は、活動に、1又は複数のファイル管理サービスを連携させてもよいし、1又は複数のメッセージングサービスを連携させてもよいし、1又は複数のファイル管理サービスと1又は複数のメッセージングサービスを連携させてもよい。
例えば、特定の目的を実現するために複数のユーザが、活動に参加する。以下では、活動に参加するユーザを「参加者」と称することとする。活動は、例えば、仕事としての活動や、スポーツ等の運動としての活動や、趣味としての活動等、様々な活動がある。仕事としての活動として、例えば、仕事上のプロジェクトやタスク等のように、複数の参加者(例えば、従業員や業者や作業者等)が作業や操作や行動等を行うことが挙げられる。特定の目的は、例えば、仕事上の目的(例えばプロジェクトやタスクの目的)や、運動の目的や、趣味の目的等、様々な目的がある。
活動を設定するユーザは、当該活動の参加者であってもよいし、管理者であってもよい。管理者が、当該活動に参加してもよい。
例えば、連携サーバ14にログインするためのユーザのアカウント情報(以下、「第3アカウント情報」と称する)が、ユーザ毎に定められて連携サーバ14に登録される。第3アカウント情報は、例えば、ユーザIDやパスワードやユーザの生体情報等である。連携サーバ14にログインする場合、ユーザは、端末装置16を用いて自身の第3アカウント情報を連携サーバ14に送信し、連携サーバ14へのログインを要求する。連携サーバ14は、ユーザの端末装置16から送信されてきた第3アカウント情報と連携サーバ14に予め登録されている第3アカウント情報とを照合することで、ログインを要求したユーザを認証する。ユーザの端末装置16から送信されてきた第3アカウント情報が連携サーバ14に登録されている場合、連携サーバ14は、当該ユーザが連携サーバ14にログインすることを許可する。ユーザの端末装置16から送信されてきたアカウント情報が連携サーバ14に登録されていない場合、連携サーバ14は、当該ユーザが連携サーバ14にログインすることを許可しない。
ユーザを認証する処理は、連携サーバ14以外の装置(例えば認証サーバ)によって行われてもよい。この場合、連携サーバ14は、認証サーバによる認証処理の結果を受けて、その結果に応じて、連携サーバ14へのユーザのログインを許可し、又は、許可しない。
ファイル管理サーバ10、メッセージングサーバ12及び連携サーバ14に共通するアカウント情報が用いられ、1つのアカウント情報を用いて、ファイル管理サーバ10、メッセージングサーバ12及び連携サーバ14のそれぞれへのログインが許可されてもよい。ファイル管理サーバ10、メッセージングサーバ12及び連携サーバ14の中の少なくとも2つにて共通するアカウント情報が用いられてもよい。
ファイル管理サーバ10、メッセージングサーバ12及び連携サーバ14は、1つのサーバによって構成されてもよい。ファイル管理サーバ10とメッセージングサーバ12は、連携サーバ14を介さずに、ファイル管理サービスとメッセージングサービスとを連携させてもよい。
連携サーバ14が用いられなくてもよい。この場合、ファイル管理サーバ10又はメッセージングサーバ12が、ファイル管理サービスとメッセージングサービスの両方を提供する。例えば、ファイル管理サーバ10又はメッセージングサーバ12は、ファイル管理機能(つまりファイル管理サービスを提供する機能)を有するメッセージングサービス、又は、メッセージング機能(つまりメッセージングサービスを提供する機能)を有するファイル管理サービスを提供してもよい。
ファイル管理サーバ10又はメッセージングサーバ12のいずれか一方のサーバによって、ファイル管理機能を有するメッセージングサービス、又は、メッセージング機能を有するファイル管理サービスが提供される場合、他方のサーバ及び連携サーバ14は、情報処理システムに含まれなくてもよい。
以下では、連携サーバ14によって、ファイル管理サービスとメッセージングサービスとが連携されてユーザに提供される例について説明するが、ファイル管理機能を有するメッセージングサービス、又は、メッセージング機能を有するファイル管理サービスが、ユーザに提供されてもよい。
端末装置16は、例えば、パーソナルコンピュータ(以下、「PC」と称する)、タブレットPC、スマートフォン、又は、携帯電話等である。
以下、図2を参照して、連携サーバ14のハードウェアの構成について説明する。図2には、連携サーバ14のハードウェアの構成の一例が示されている。
連携サーバ14は、例えば、通信装置18と、UI20と、メモリ22と、プロセッサ24とを含む。
通信装置18は、通信チップや通信回路等を有する通信インターフェースであり、他の装置に情報を送信する機能、及び、他の装置から情報を受信する機能を有する。通信装置18は、無線通信機能を有してもよいし、有線通信機能を有してもよい。通信装置18は、例えば近距離無線通信を利用することで他の装置と通信してもよいし、通信経路Nを介して他の装置と通信してもよい。
UI20はユーザインターフェースであり、ディスプレイ及び操作装置の中の少なくとも1つを含む。ディスプレイは、液晶ディスプレイ又はELディスプレイ等である。操作装置は、キーボード、マウス、入力キー又は操作パネル等である。UI20は、ディスプレイと操作装置とを兼ね備えたタッチパネル等のUIであってもよい。UI20は、マイクやスピーカを含んでもよい。
メモリ22は、データを記憶する1又は複数の記憶領域を構成する装置である。メモリ22は、例えば、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、各種のメモリ(例えばRAM、DRAM又はROM等)、その他の記憶装置(例えば光ディスク等)、又は、それらの組み合わせである。1又は複数のメモリ22が連携サーバ14に含まれている。
プロセッサ24は、連携サーバ14の各部の動作を制御するように構成されている。プロセッサ24は、メモリを有してもよい。
プロセッサ24は、特定の目的毎にユーザによって設定された各活動に対して、その活動の複数の参加者を関連付ける。プロセッサ24は、活動毎に、活動と当該活動の各参加者とを関連付けて管理する。例えば、プロセッサ24は、活動毎に、活動を識別するための活動識別情報(例えば、活動の名称やID等)と、当該活動の各参加者のアカウント情報(例えば第3アカウント情報)と、を関連付けて、これらの情報を含む活動管理情報をメモリ22に記憶させて、活動と参加者とを管理する。なお、プロセッサ24は、更に、活動識別情報に、各参加者の第1アカウント情報や第2アカウント情報を紐付けてもよい。また、ファイル管理サーバ10、メッセージングサーバ12及び連携サーバ14に共通するアカウント情報が、活動識別情報に関連付けられてもよい。
活動の参加者には、当該活動において当該参加者が行うべき役割が割り当てられる。プロセッサ24は、活動の参加者毎に、活動を識別するための活動識別情報と、当該活動の参加者のアカウント情報(例えば第3アカウント情報)と、当該参加者の役割を識別するための役割識別情報(例えば、役割の名称やID等)と、を関連付けて、これらの情報を含む役割管理情報をメモリ22に記憶させて、各活動における各参加者の役割を管理する。役割は、例えば、活動の管理者等によって参加者に割り当てられる。例えば、役割が参加者に予め割り当てられ、各参加者の役割情報がメモリ22に予め記憶される。
また、活動は複数のフェーズを含んでもよい。フェーズは、活動において行われるべき作業であり、参加者の役割に対応する。プロセッサ24は、活動毎に、活動を識別するための活動識別情報と、当該活動に含まれる各フェーズを識別するためのフェーズ識別情報(例えば、フェーズの名称やID等)と、を関連付けて、これらの情報を含むフェーズ管理情報をメモリ22に記憶させて、各活動のフェーズを管理する。例えば、実行される順番が予め定められた複数のフェーズが活動に含まれ、当該活動が実行される場合、その順番に従って各フェーズが参加者によって実行される。
活動管理情報、役割管理情報及びフェーズ管理情報が統合されて1つの管理情報(例えば統合管理情報)としてメモリ22に記憶されて、活動、参加者、参加者の役割、及び、フェーズが管理されてもよい。
また、プロセッサ24は、各活動に、1又は複数のファイル管理サービスと1又は複数のメッセージングサービスとに含まれる1又は複数のサービスを連携させる。
例えば、プロセッサ24は、少なくとも1人の参加者が第1アクセス権を有するファイル管理サービスのレポジトリを活動に連携させる。プロセッサ24は、活動毎に、活動と、当該活動に連携されたファイル管理サービスの1又は複数のレポジトリと、を紐付けて管理する。例えば、プロセッサ24は、活動毎に、活動を識別するための活動識別情報と、当該活動に連携された各レポジトリにアクセスするためのアドレス(例えばURL等)と、を紐付けて、これらの情報をメモリ22に記憶させて管理する。
また、プロセッサ24は、少なくとも1人の参加者が第2アクセス権を有するメッセージングサービスを活動に連携させる。例えば、プロセッサ24は、少なくとも1人の参加者が第2アクセス権を有するチャンネルを活動に連携させる。プロセッサ24は、活動毎に、活動と、当該活動に連携されたメッセージングサービスのチャンネルと、を紐付けて管理する。例えば、プロセッサ24は、活動毎に、活動を識別するための活動識別情報と、当該活動に連携されたメッセージングサービスのチャンネルにアクセスするためのアドレス(例えばURL等)と、を紐付けて、これらの情報をメモリ22に記憶させて管理する。
以上のようにして、プロセッサ24は、ファイル管理サービスとメッセージングサービスとを特定の活動に連携させて当該活動の参加者に提供する。
また、プロセッサ24は、ファイルに対するアクセス権の設定を制御する。以下、ファイルに設定されるアクセス権を「ファイルアクセス権」と称することとする。
例えば、メッセージングサービスにおいて第1参加者が第2参加者宛にファイルが関連付けられた第1メッセージを送信した場合、プロセッサ24は、当該第2参加者の役割に応じたファイルアクセス権を当該ファイルに設定する。なお、第1参加者が第1ユーザの一例に相当し、第2参加者が第2ユーザの一例に相当する。
役割に応じたファイルアクセス権をファイルに設定することは、例えば、第1メッセージの宛先である第2参加者の役割を識別するための役割識別情報を当該ファイルに関連付けることである。
参加者が自身の端末装置16を用いてファイルへのアクセスを要求した場合において、当該参加者の役割を識別するための役割識別情報が当該ファイルに関連付けられている場合、当該参加者は当該ファイルへのアクセスが許可される。当該参加者の役割を識別するための役割識別情報が当該ファイルに関連付けられていない場合、当該参加者は当該ファイルへのアクセスが許可されない。ファイルへのアクセスの許否の判断は、参加者が利用する端末装置16のプロセッサ32によって行われてもよいし、連携サーバ14のプロセッサ24によって行われてもよい。なお、メッセージングサービスに送信されたファイルは、当該メッセージングサービスを提供するファイル管理サーバ10に記憶される。当該ファイルは、連携サーバ14に記憶されてもよいし、宛先の参加者が利用する端末装置16に記憶されてもよい。
役割に応じたファイルアクセス権が設定されたファイルは、当該役割が割り当てられた参加者によってアクセスすることが許可される。つまり、ある役割が割り当てられた参加者は、当該枠割に応じたファイルアクセス権が設定されたファイルにアクセスすることが許可される。ファイルにアクセスすることが許可された参加者は、当該ファイルを開いて当該ファイルの内容を参照すること、当該ファイルをコピーや移動すること、及び、当該ファイルをダウンロードすること等が許可される。
プロセッサ24は、第2参加者の役割と同じ役割を有する他の参加者に対して当該ファイルへのファイルアクセス権を設定してもよい。例えば、プロセッサ24は、第2参加者と同じ活動に参加し当該第2参加者と同じ役割を有する他の参加者に対して、当該ファイルへのファイルアクセス権を設定する。
プロセッサ24は、第1メッセージに含まれるキーワードに応じたファイルアクセス権を、当該第1メッセージに関連付けられたファイルに設定してもよい。例えば、プロセッサ24は、第1メッセージに含まれる文字列に対して形態素解析等の言語処理を適用することで当該第1メッセージを解析して、当該第1メッセージに含まれるキーワードを抽出し、その抽出したキーワードに応じたファイルアクセス権をファイルに設定する。
以下、図3を参照して、端末装置16のハードウェアの構成について説明する。図3には、端末装置16のハードウェアの構成の一例が示されている。
端末装置16は、例えば、通信装置26と、UI28と、メモリ30と、プロセッサ32とを含む。
通信装置26は、通信チップや通信回路等を有する通信インターフェースであり、他の装置に情報を送信する機能、及び、他の装置から送信されてきた情報を受信する機能を有する。通信装置26は、無線通信機能を有してもよいし、有線通信機能を有してもよい。通信装置26は、例えば近距離無線通信を利用することで他の装置と通信してもよいし、通信経路Nを介して他の装置と通信してもよい。
UI28はユーザインターフェースであり、ディスプレイ及び操作装置の中の少なくとも1つを含む。ディスプレイは、液晶ディスプレイ又はELディスプレイ等である。操作装置は、キーボード、マウス、入力キー又は操作パネル等である。UI28は、ディスプレイと操作装置とを兼ね備えたタッチパネル等のUIであってもよい。UI28は、マイクやスピーカを含んでもよい。
メモリ30は、データを記憶する1又は複数の記憶領域を構成する装置である。メモリ30は、例えば、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、各種のメモリ(例えばRAMやDRAMやROM等)、その他の記憶装置(例えば光ディスク等)、又は、それらの組み合わせである。1又は複数のメモリ30が端末装置16に含まれている。
プロセッサ32は、端末装置16の各部の動作を制御するように構成されている。プロセッサ32は、メモリを有してもよい。
以下、具体例を挙げて実施形態について詳しく説明する。以下では一例として、仕事上のプロジェクトが活動として立ち上げられ、そのプロジェクトが実行される場面を想定して実施形態について説明する。例えば、プロジェクトを管理する管理者や、プロジェクトに参加して作業や操作等を行う参加者が、プロジェクトに関わる。管理者は、参加者としてプロジェクトに参加してもよい。管理者や参加者は、自身の端末装置16を用いて、ファイル管理サーバ10が提供するファイル管理サービスや、メッセージングサーバ12が提供するメッセージングサービスを利用する。また、管理者や参加者は、自身の端末装置16を用いて、連携サーバ14によって活動に連携させられたサービス(例えば、ファイル管理サービスやメッセージングサービス)を利用する。
図4を参照して、参加者の役割について説明する。図4には、役割の一例が示されている。役割として、例えば、営業、要求分析/要件定義、システム設計、詳細設計、実装、テスト、及び、プロジェクト管理等が定められている。プロジェクトに参加する各参加者には、これらの中の1又は複数の役割が予め定められている。各参加者の役割を示す情報が、上述した統合管理情報に含まれ、各参加者の役割が管理される。なお、同じ役割が複数の参加者に割り当てられてもよい。
図5を参照して、ファイルに設定されるファイルアクセス権について説明する。図5には、ファイルに設定されるファイルアクセス権の一例が示されている。ファイルアクセス権は役割毎に設定される。ある役割用のファイルアクセス権が設定されているファイルは、当該役割が割り当てられている参加者がアクセスすることが許可されるファイルである。ファイルアクセス権として、例えば、営業用のファイルアクセス権、要件定義用のファイルアクセス権、詳細設計用のファイルアクセス権、実装用のファイルアクセス権、テスト用のファイルアクセス権、及び、プロジェクト管理用のファイルアクセス権等が定められている。
営業用のファイルアクセス権が設定されているファイルは、「営業」という役割が割り当てられている参加者がアクセスすることが許可されるファイルである。要求分析/要件定義用のファイルアクセス権が設定されているファイルは、「要求分析/要件定義」という役割が割り当てられている参加者がアクセスすることが許可されるファイルである。他のファイルアクセス権についても同様である。
図6を参照して、活動の一例であるプロジェクトに含まれるフェーズについて説明する。図6には、プロジェクトαに含まれるフェーズの一例が示されている。プロジェクトαは、フェーズとして、「1.営業」、「2.要求分析/要件定義」、「3.システム設計」、「4.詳細設計」、「5.実装」及び「6.テスト」を含む。プロジェクトαにおいては、これらのフェーズが、図6が示されている数字の順番で実行されることが予定されている。つまり、「営業」、「要求分析/要件定義」、「システム設計」、「詳細設計」、「実装」、及び、「テスト」の順番で、各フェーズ(つまり各作業)が実行されることが予定されている。フェーズは、当該フェーズに対応する役割が割り当てられた参加者が実行すべき作業である。例えば、フェーズ「営業」は、役割「営業」が割り当てられている参加者が実行すべき作業である。フェーズ「要求分析/要件定義」は、役割「要求分析/要件定義」が割り当てられている参加者が実行すべき作業である。他のフェーズについても同様である。
以下、ファイルにファイルアクセス権を設定する規則の一例について説明する。
ここでは一例として、ファイルを作成した参加者が、自身の端末装置16を用いて、当該参加者が参加するプロジェクトαに関連付けられているメッセージサービスに当該ファイルを投稿するものとする。ファイルを投稿することは、メッセージに関連付けられて、又は、メッセージに関連付けられずに、ファイルをメッセージサービスに送信することである。メッセージサービスに投稿されたファイルは、当該ファイルに設定されたファイルアクセス権に従って参加者によるアクセスが許可される。
(規則1)
規則1に従ったアクセス権の設定では、プロセッサ24は、ファイルを投稿した参加者の役割に対応するフェーズよりも後のフェーズに対応する役割についてのファイルアクセス権を、当該ファイルに設定する。例えば、役割「営業」が割り当てられている参加者がファイルを投稿した場合、プロセッサ24は、フェーズ「役割」よりも後のフェーズに対応する役割についてのファイルアクセス権を、当該ファイルに設定する。これにより、フェーズ「役割」よりも後のフェーズに対応する役割が割り当てられている参加者は、当該ファイルアクセス権が設定されているファイルへのアクセスが許可される。例えば、フェーズ「要求分析/要件定義」、「システム設計」、「詳細設計」、「実装」及び「テスト」のそれぞれに対応する役割についてのファイルアクセス権がファイルに設定され、それぞれの役割が割り当てられた参加者が当該ファイルにアクセスすることが許可される。
(規則2)
規則2に従ったアクセス権の設定では、プロセッサ24は、ファイルに関連付けられている第1メッセージに含まれるキーワードに応じたファイルアクセス権を、当該ファイルに設定する。役割の名称、フェーズの名称、ファイルの種類名、ファイル名、ファイルに対して行われた作業に関するコメント等が、キーワードの一例である。
例えば、プロセッサ24は、第1メッセージに含まれる文字列「フェーズの名称」をキーワードとして抽出し、その「フェーズの名称」を有するフェーズに対応する役割についてのファイルアクセス権を、当該第1メッセージに関連付けられているファイルに設定する。具体例を挙げて説明すると、ファイルに関連付けられている第1メッセージに含まれるキーワードが、文字列「システム設計」である場合、プロセッサ24は、役割「システム設計」についてのファイルアクセス権を、当該ファイルに設定する。これにより、役割「システム設計」が割り当てられている参加者が、当該ファイルにアクセスすることが許可される。
また、プロセッサ24は、ファイルの種類名やファイル名に対応するファイルアクセス権を、当該ファイルに設定してもよい。例えば、ファイルの種類名やファイル名に対応する役割やフェーズが予め定められており、プロセッサ24は、その定めに従って、投稿されたファイルの種類名やファイル名に対応する役割やフェーズについてのファイルアクセス権を、当該ファイルに設定する。
また、プロセッサ24は、第1メッセージに含まれる文字列「ファイルに対して行われた作業に関するコメント」をキーワードとして抽出し、その「コメント」に関連するファイルアクセス権をファイルに設定してもよい。コメントは、例えば、ファイルの「作成」、「完了」、「格納」等である。例えば、第1メッセージに「フェーズの完了」を示す文字列が含まれている場合、プロセッサ24は、当該文字列をキーワードとして抽出し、当該文字列を解析することで、当該フェーズが完了したことを認識する。この場合、プロセッサ24は、当該フェーズの次のフェーズに対応する役割についてのファイルアクセス権を、ファイルに設定する。具体例を挙げて説明すると、第1メッセージから「システム設計の完了」といった文字列が抽出された場合、プロセッサ24は、フェーズ「システム設計」の次のフェーズ「詳細設計」に対応する役割「詳細設計」についてのファイルアクセス権を、ファイルに設定する。これにより、役割「詳細設計」が割り当てられている参加者は、当該ファイルにアクセスすることが許可される。
(規則3)
規則3に従ったアクセス権の設定では、第1参加者と第2参加者とが参加しているプロジェクトαに対応するメッセージングサービスにおいて、当該第1参加者が当該第2参加者宛にファイルが関連付けられた第1メッセージを送信した場合、プロセッサ24は、当該第2参加者の役割に応じたファイルアクセス権を当該ファイルに設定する。
例えば、第2参加者の役割が役割「システム設計」である場合、プロセッサ24は、役割「システム設計」についてのファイルアクセス権をファイルに設定する。これにより、当該第2参加者が当該ファイルにアクセスすることが許可される。
なお、第1参加者と第2参加者とが参加しているプロジェクトαに別の参加者が参加している場合であっても、当該プロジェクトαに対応するメッセージングサービスにおいて第2参加者宛に送信されたファイルは、第2参加者のみに送信され、当該別の参加者には送信されない。当該ファイルの宛先に当該別の参加者が含まれた場合、当該別の参加者にも当該ファイルは送信される。
(規則4)
プロジェクトαに対応するメッセージングサービス上でやり取りされているメッセージに基づいて、投稿されたファイルへのファイルアクセス権が付与される役割が特定されない場合、プロセッサ24は、当該プロジェクトαに参加している全参加者に対してファイルアクセス権を付与してもよいし、当該ファイルを投稿した参加者のみに対してファイルアクセス権を付与してもよいし、当該ファイルを投稿した参加者の役割に対してファイルアクセス権を付与してもよい。つまり、プロセッサ24は、当該プロジェクトαの全役割についてのファイルアクセス権を当該ファイルに設定してもよいし、当該ファイルを投稿した参加者のみがアクセス可能なファイルアクセス権を当該ファイルに設定してもよいし、当該ファイルを投稿した参加者の役割についてのファイルアクセス権を当該ファイルに設定してもよい。
上述した規則1~4は、アクセス権の設定の規則の一例であり、他の規則に従ってアクセス権がファイルに設定されてもよい。
以下、実施形態に係る処理について具体例を挙げて詳しく説明する。一例として、活動の一例としてプロジェクトαが実行されており、参加者A,B,C,D,E,F,Gがプロジェクトαに参加しているものとする。
参加者Aには役割「営業」が割り当てられており、参加者Bには役割「要求分析/要件定義」が割り当てられており、参加者Cには役割「システム設計」が割り当てられており、参加者Dには役割「詳細設計」が割り当てられており、参加者Eには役割「実装」が割り当てられており、参加者Fには役割「テスト」が割り当てられており、参加者Gには「プロジェクト管理」が割り当てられている。これらに関する情報は、例えば、上述した統合管理情報に予め登録される。
例えば、各参加者は、自身の端末装置16を用いて自身のアカウント情報(例えば第3アカウント情報)を連携サーバ14に送信し、連携サーバ14へのログイン、及び、プロジェクトαへのアクセスを要求する。認証が成功した参加者は、連携サーバ14にログインすることが許可され、プロジェクトαに関連付けられたファイル管理サービスとメッセージングサービスにアクセスすることが許可される。認証が成功した参加者は、例えば、プロジェクトαに関連付けられたファイル管理サービスが提供するレポジトリにアクセスしたり、プロジェクトαに関連付けられたメッセージングサービスを利用して他の参加者と情報をやり取りしたりすることが許可される。なお、連携サーバ14へのログインや参加者の認証が行われずに、各参加者は、自身の端末装置16を用いて連携サーバ14にアクセスして、プロジェクトαに関連付けられたファイル管理サービスとメッセージングサービスを利用してもよい。
例えば、連携サーバ14のプロセッサ24は、プロジェクトαの参加者が利用する端末装置16のディスプレイに、プロジェクトαに関連付けられたメッセージングサービスを利用するための画面を表示させる。なお、当該画面を介してファイル管理サービスが利用されてもよい。以下では、メッセージングサービスを利用するための画面を、「メッセージ画面」と称することとする。メッセージ画面には、各参加者がメッセージングサービスに送信したメッセージが表示される。
例えば、複数の参加者が参加するグループチャットが形成され、メッセージ画面上において、グループチャットに参加している複数の参加者の間でメッセージがやり取りされる。また、プロジェクトαに対して複数のスレッド(例えば特定の話題に関してメッセージをやり取りする複数のチャンネル)が形成され、各スレッドにおいてメッセージがやり取りされてもよい。各スレッドには、プロジェクトαの参加者全員が参加してもよいし、一部の参加者のみが参加してもよい。スレッド毎に同一又は異なる複数の参加者が参加してもよい。
図7には、メッセージ画面の一例が示されている。図7に示されているメッセージ画面34Dは、参加者Dの端末装置16Dのディスプレイに表示されるメッセージ画面である。
プロセッサ24は、プロジェクトαに関連付けられているメッセージングサービス(より具体的には、プロジェクトαに連携済みのチャンネル)に送信されたメッセージを、メッセージ画面34Dに表示する。例えば、各メッセージは、タイムライン表記に従って表示される。つまり、各メッセージは、メッセージがチャンネルに送信された日時に従って並んで表示される。例えば、各メッセージは、メッセージがチャンネルに送信された日時に従って、メッセージ画面34Dにおいて上から下に並んで表示される。なお、メッセージを送信した参加者を識別するための情報(例えば、名前、ニックネーム、ID、又は、アイコン等の画像等)が、当該メッセージに関連付けられてメッセージ画面34Dに表示されてもよい。例えば、当該情報が当該メッセージの近傍に表示される。
メッセージ画面34Dに表示しきれないメッセージは、メッセージ画面34Dを上下方向に移動させることで(例えばメッセージ画面34Dを上下方向にスクロールさせることで)、メッセージ画面34D内に表示される。
また、メッセージに関連付けられているファイルがメッセージングサービスに送信された場合、当該ファイルを表す画像(例えばアイコン)が、メッセージ画面34Dに表示される。
参加者D以外の他の参加者がプロジェクトαにアクセスした場合も、メッセージ画面34Dと同様のメッセージ画面が、他の参加者の端末装置16のディスプレイに表示される。
図7に示す例では、メッセージ36,40,42,44がメッセージ画面34Dに表示されている。メッセージ36,44は、参加者Dによって、プロジェクトαに関連付けられているメッセージサービスに送信されたメッセージである。メッセージ40,42は、参加者Cによって、プロジェクトαに関連付けられているメッセージサービスに送信されたメッセージである。メッセージ36にはファイル38が添付されている。つまり、ファイル38が関連付けられているメッセージ36が、参加者Cによってメッセージングサービスに送信されている。
また、入力欄46がメッセージ画面34Dに表示されている。入力欄46は、メッセージングサービスにメッセージを送信するための欄である。入力欄46にメッセージが入力されて、送信の指示が与えられると(例えば、メッセージ画面34Dに表示される送信ボタンが押されると)、プロセッサ24は、入力されたメッセージを参加者Dのメッセージとしてメッセージ画面34Dに表示する。また、プロセッサ24は、入力されたメッセージを、プロジェクトαに関連付けられているメッセージングサービスにアクセスしている他の参加者宛に送信する。
プロジェクトαに関連付けられているメッセージングサービスに送信されたメッセージは、プロジェクトαの全参加者によって閲覧が可能であってもよい。つまり、全参加者のそれぞれの端末装置16のディスプレイに表示されるメッセージ画面に、プロジェクトαに関連付けられているメッセージングサービスに送信されたメッセージが表示されてもよい。
別の例として、プロジェクトαに関連付けられているメッセージングサービスにおいて、特定の参加者宛に送信されたメッセージは、当該メッセージを送信した参加者と当該特定の参加者のみによって閲覧が可能であってもよい。つまり、当該メッセージを送信した参加者と当該特定の参加者のそれぞれの端末装置16のディスプレイに表示されるメッセージ画面のみに、当該メッセ―が表示されてもよい。例えば、参加者によってメッセージの宛先が指定されてメッセージが送信された場合、当該メッセージは、その宛先として指定された参加者宛に送信され、当該メッセージを送信した参加者と宛先の参加者のそれぞれの端末装置16のディスプレイに表示されるメッセージ画面のみに、当該メッセージが表示される。
図7に示す例では、メッセージ36,44は、参加者C宛に参加者Dから送信されたメッセージであり、メッセージ40,42は、参加者D宛に参加者Cから送信されたメッセージである。したがって、メッセージ36,40,42,44は、参加者C,Dのそれぞれの端末装置16のディスプレイに表示されるメッセージ画面のみに表示され、参加者A等の他の参加者の端末装置16のディスプレイに表示されるメッセージ画面には表示されない。
メッセージ36の宛先が参加者Cに指定されている場合、プロセッサ24は、符号36aが指し示すように、参加者Cを識別するための情報(例えば氏名やアカウント情報等)をメッセージ36の近傍に表示する。例えば、プロジェクトαに参加している参加者の一覧がメッセージ画面34Dに表示され、参加者Dは、当該一覧から宛先の参加者(例えば参加者C)を指定してもよいし、参加者Dは、宛先の参加者を識別するための情報を直接入力してもよい。
図7には示されていないが、メッセージ40,42,44についても、宛先の参加者を識別するための情報が、それぞれのメッセージの近傍に表示される。
なお、メッセージの宛先の参加者が指定された場合であっても、宛先の参加者を識別するための情報(例えば符号36aが指し示す文字列)が、当該メッセージに関連付けられてメッセージ画面に表示されなくてもよい。
なお、メッセージは、プロジェクトαに対して送信されずに、個別メッセージとして各参加者宛に送信されてもよい。例えば、ファイル38が関連付けられているメッセージ36が、プロジェクトαに対して送信されずに、参加者C宛に参加者Dから送信されてもよい。
図7に示す例では、ファイル38が関連付けられているメッセージ36が、第1メッセージの一例に相当する。
例えば、プロセッサ24は、メッセージ36を投稿した参加者D(つまり、メッセージ36をプロジェクトαに関連付けられているメッセージングサービスに送信した参加者D)に割り当てられている役割「詳細設計」に応じたファイルアクセス権を、ファイル38に設定する。つまり、プロセッサ24は、役割「詳細設計」を識別するための役割識別情報をファイル38に関連付ける。これにより、役割「詳細設計」が割り当てられている参加者がファイル38にアクセスすることが許可される。例えば、参加者Dはファイル38にアクセスすることが許可される。
また、メッセージ36を投稿した参加者Dと同じ役割が割り当てられている参加者に対して、ファイル38へのファイルアクセス権が付与される。つまり、参加者D以外の参加者であっても、役割「詳細設計」が割り当てられている参加者は、ファイル38にアクセスすることが許可される。
プロセッサ24は、ファイル38が関連付けられているメッセージ36に含まれる文字列を解析し、その解析結果に応じたファイルアクセス権をファイル38に設定してもよい。例えば、プロセッサ24は、役割を示す文字列やフェーズを示す文字列や作業を示す文字列をメッセージ36から抽出し、その抽出した文字列に対応するファイルアクセス権をファイル38に設定する。メッセージ36には文字列「詳細設計」が含まれており、この文字列は、役割又はフェーズを示す文字列である。この場合、プロセッサ24は、役割「詳細設計」を識別するための役割識別情報をファイル38に関連付けることで、役割「詳細設計」についてのファイルアクセス権をファイル38に設定する。
プロセッサ24は、メッセージ36の宛先である参加者Cの役割「システム設計」に応じたファイルアクセス権をファイル38に設定してもよい。つまり、プロセッサ24は、役割「システム設計」を識別するための役割識別情報をファイル38に関連付ける。これにより、役割「システム設計」が割り当てられている参加者がファイル38にアクセスすることが許可される。例えば、参加者Cはファイル38にアクセスすることが許可される。
また、メッセージ36の宛先である参加者Cと同じ役割が割り当てられている参加者に対して、ファイル38へのファイルアクセス権が付与される。つまり、参加者C以外の参加者であっても、役割「システム設計」が割り当てられている参加者は、ファイル38にアクセスすることが許可される。
第1メッセージに期限に関する情報が含まれている場合、プロセッサ24は、当該期限に応じたファイルアクセス権を、当該第1メッセージに関連付けられているファイルに設定してもよい。期限に応じたファイルアクセス権は、期限が設定されたファイルアクセス権である。例えば、期限に応じたファイルアクセス権が設定されたファイルは、当該期限が到来又は経過するまでアクセスすることが許可されるファイルである。
例えば、ファイル38が関連付けられているメッセージ36に、期限に関する情報が含まれている場合、プロセッサ24は、当該期限に応じたファイルアクセス権をファイル38に設定する。
具体例を挙げて説明すると、メッセージ36は、参加者Dがファイル38のレビューを参加者Cに依頼することを示すメッセージであるところ、例えば「10月5日までに」といった期限に関する文字列がメッセージ36に含まれている場合、プロセッサ24は、当該期限に応じたファイルアクセス権をファイル38に設定する。例えば、プロセッサ24は、当該期限を示す情報をファイル38に関連付ける。この場合、ファイル38は、10月5日が到来又は経過するまでアクセスすることが許可される。例えば、役割「システム設計」を識別するための役割識別情報と当該期限を示す情報とが、ファイル38に関連付けられる。役割「システム設計」が割り当てられている参加者は、当該期限が到来又は経過するまでファイル38にアクセスすることが許可される。
ファイルに対する第2参加者の役割に応じた作業が完了した場合、プロセッサ24は、当該第2参加者の役割に対して付与されたファイルアクセス権を解除してもよい。ファイルに対するファイルアクセス権を解除することは、当該ファイルに関連付けられている役割識別情報を削除すること、又は、当該ファイルに関連付けられている役割識別情報を削除せずに当該役割識別情報が示す役割が割り当てられている参加者には当該ファイルへのアクセスが許可されないことを示す情報を当該ファイルに関連付けることである。役割に対して付与されたファイルアクセス権が解除されると、当該役割が割り当てられている参加者は、その解除されたファイルアクセス権が設定されたファイルへのアクセスが許可されない。
例えば、プロセッサ24は、ファイル38が関連付けられているメッセージ36の宛先の第2参加者である参加者Cが投稿したメッセージに含まれる文字列を解析し、参加者Cの役割に応じた作業が完了したか否かを判断する。図7に示す例では、参加者Cが投稿したメッセージ42に文字列「レビュー」、「完了」が含まれている。この場合、プロセッサ24は、これらの文字列をメッセージ42から抽出し、参加者Cによるレビューが完了したことを認識し、参加者Cの役割「システム設計」に対して付与されたファイルアクセス権をファイル38から解除する。これにより、役割「システム設計」が割り当てられている参加者(例えば参加者C)は、ファイル38へのアクセスが許可されない。
プロセッサ24は、活動において第1参加者の役割に対応するフェーズ(例えば作業)の次のフェーズ(例えば作業)に対応する役割が割り当てられている第3参加者に対して、ファイルへのファイルアクセス権を付与してもよい。例えば、プロセッサ24は、上述した統合管理情報を参照して、当該活動に含まれる各フェーズの順番を特定し、次のフェーズに対応する役割が割り当てられている第3参加者に対して、ファイルへのファイルアクセス権を付与する。この場合、プロセッサ24は、当該次のフェーズに対応する役割を識別するための役割識別情報を当該ファイルに関連付けることで、当該役割が割り当てられている参加者が当該ファイルにアクセスすることを許可する。
図7に示す例では、第1参加者である参加者Dに役割「詳細設計」が割り当てられている。この場合、プロセッサ24は、当該役割「詳細設計」に対応するフェーズ「詳細設計」の次のフェーズ「実装」に対応する役割「実装」を識別するための役割識別情報をファイル38に関連付ける。これにより、役割「実装」が割り当てられている参加者が、ファイル38にアクセスすることが許可される。
プロセッサ24は、第2参加者である参加者Cの役割に対応する作業が完了した場合、参加者Cの役割に対応するフェーズの次のフェーズに対応する役割が割り当てられている参加者に対して、ファイル38へのファイルアクセス権を付与してもよい。この処理について詳しく説明すると、プロセッサ24は、ファイル38が関連付けられているメッセージ36の宛先の参加者である参加者Cが投稿したメッセージ(例えばメッセージ40,42)に含まれる文字列を解析し、参加者Cの役割に対応する作業が完了したか否かを判断する。当該作業が完了している場合、プロセッサ24は、参加者Cの役割に対応するフェーズの次のフェーズに対応する役割が割り当てられている参加者に対して、ファイルへのファイルアクセス権を付与する。つまり、プロセッサ24は、当該次のフェーズに対応する役割を識別するための役割識別情報をファイル38に関連付ける。
具体例を挙げて説明すると、ファイル38が関連付けられているメッセージ36の宛先の参加者である参加者Cが投稿したメッセージ42には、文字列「レビュー」、「完了」が含まれている。この場合、プロセッサ24は、参加者Cに割り当てられている役割に対応する作業が完了したと判断し、参加者Cの役割「システム設計」に対応するフェーズ「システム設計」の次のフェーズ「詳細設計」に対応する役割「詳細設計」を識別するための役割識別情報をファイル38に関連付ける。
プロセッサ24は、第2参加者である参加者Cの役割に対応する作業が完了した場合、第1参加者である参加者Dの役割に対応するフェーズの次のフェーズに対応する役割が割り当てられている参加者に対して、ファイル38へのファイルアクセス権を付与してもよい。
図7に示す例では、ファイル38が関連付けられているメッセージ36の宛先の第2参加者である参加者Cの役割「システム設計」に対応する作業が完了した場合、プロセッサ24は、メッセージ36を投稿した第1参加者である参加者Dの役割「詳細設計」に対応するフェーズ「詳細設計」の次のフェーズ「実装」に対応する役割「実装」が割り当てられている参加者に対して、ファイル38へのファイルアクセス権を付与する。つまり、プロセッサ24は、次のフェーズ「実装」に対応する役割「実装」を識別するための役割識別情報をファイル38に関連付ける。これにより、役割「実装」が割り当てられている参加者は、ファイル38へのアクセスが許可される。
図7を参照して説明したファイルアクセス権の設定の例は一例である。例えば、ファイル38が関連付けられているメッセージ36を投稿した参加者Dの役割「詳細設計」と、メッセージ36の宛先の参加者である参加者Cの役割「システム設計」と、に対してファイル38のファイルアクセス権が付与される。また、メッセージ36の宛先の参加者Cの役割「システム設計」に対応する作業が完了した場合、メッセージ36を投稿した参加者Dの役割「詳細設計」に対応するフェーズ「詳細設計」の次のフェーズ「実装」に対応する役割「実装」に対して、ファイル38のファイルアクセス権が付与される。これにより、役割「詳細設計」が割り当てられている参加者、役割「システム設計」が割り当てられている参加者、及び、役割「実装」が割り当てられている参加者が、ファイル38にアクセスすることが許可される。また、ファイルアクセス権が解除された役割が割り当てられている参加者は、ファイル38へのアクセスが許可されない。
図8には、参加者Dと参加者Fとの間でやり取りされているメッセージが示されている。図8には、参加者Dの端末装置16Dのディスプレイに表示されるメッセージ画面34Dが示されている。メッセージ画面34Dには、メッセージ48,50,52,54,58が表示されている。メッセージ50,54は、参加者F宛に参加者Dが送信したメッセージである。メッセージ48,52,58は、参加者D宛に参加者Fが送信したメッセージである。参加者Fの端末装置16Fのディスプレイにもメッセージ画面34Dと同様の画面が表示され、当該画面にメッセージ48,50,52,54,58が表示される。また、メッセージ54には、ファイル38へのリンク(例えばURL等のアドレス)を示すファイル56が関連付けられている。当該リンクにアクセスすることで、ファイル38へアクセスすることができる。
また、図7に示すように、参加者Cと参加者Dとの間でメッセージがやり取りされることで、役割「詳細設計」、役割「システム設計」及び役割「実装」に対して、ファイル38のファイルアクセス権が付与されている。例えば、ファイル38が関連付けられているメッセージ36を投稿した参加者Dは、参加者Cとの間でメッセージをやり取りし(図7参照)、その後、参加者Fとの間でメッセージをやり取りする(図8参照)。
プロセッサ24は、参加者Dが投稿したメッセージの宛先の参加者である参加者Fの役割「テスト」に対して、参加者Dが投稿したファイル38のファイルアクセス権を設定する。つまり、プロセッサ24は、役割「テスト」を識別するための役割識別情報をファイル38に関連付ける。これにより、役割「テスト」が割り当てられている参加者は、ファイル38にアクセスすることが許可される。
図9には、メッセージの別のやり取りが示されている。図9には、メッセージ画面34Eが示されている。メッセージ画面34Eは、参加者Eの端末装置16Eのディスプレイに表示される画面である。メッセージ画面34E上では、参加者Eと他の参加者との間でメッセージ60,62,64,66がやり取りされている。参加者Eが投稿したメッセージ60にはファイル68が添付されている。
例えば、プロセッサ24は、ファイル68が関連付けられているメッセージ60に含まれる文字列を解析し、その解析結果に応じたファイルアクセス権をファイル68に設定する。メッセージ60には、文字列「実装」が含まれている。この場合、プロセッサ24は、役割「実装」を識別するための役割識別情報をファイル68に関連付けることで、役割「実装」に対してファイル68のファイルアクセス権を設定する。これにより、役割「実装」が割り当てられている参加者は、ファイル68にアクセスすることが許可される。
また、メッセージ60には、文字列「実装」と共に文字列「完了」が含まれている。この場合、プロセッサ24は、役割「実装」に対応する作業が完了したことを認識し、役割「実装」を識別するための役割識別情報をファイル68に関連付けることで、役割「実装」に対してファイルアクセス権を設定してもよい。
プロセッサ24は、ファイル68が関連付けられているメッセージ60を投稿した参加者Eの役割「実装」に対して、ファイル68のファイルアクセス権を設定してもよい。
図10には、メッセージの別のやり取りが示されている。図10には、メッセージ画面34Fが示されている。メッセージ画面34Fは、参加者Fの端末装置16Fのディスプレイに表示される画面である。メッセージ画面34F上では、参加者Fと他の参加者との間でメッセージ70,72,74,76がやり取りされている。参加者Fが投稿したメッセージ70にはファイル78が添付されている。
例えば、プロセッサ24は、ファイル78が関連付けられているメッセージ70に含まれる文字列を解析し、その解析結果に応じたファイルアクセス権をファイル78に設定する。メッセージ70には、文字列「テスト」が含まれている。この場合、プロセッサ24は、役割「テスト」を識別するための役割識別情報をファイル78に関連付けることで、役割「テスト」に対してファイル78のファイルアクセス権を設定する。これにより、役割「テスト」が割り当てられている参加者は、ファイル78にアクセスすることが許可される。
また、メッセージ70には、文字列「テスト」と共に文字列「作成」が含まれている。この場合、プロセッサ24は、役割「テスト」に対応する作業が完了したことを認識し、役割「テスト」を識別するための役割識別情報をファイル78に関連付けることで、役割「テスト」に対してファイルアクセス権を設定してもよい。
プロセッサ24は、ファイル78が関連付けられているメッセージ70を投稿した参加者Fの役割「テスト」に対して、ファイル78のファイルアクセス権を設定してもよい。
以下、実施形態の別の適用例について説明する。1つの方向に作業が流れる活動に実施形態が適用されてもよい。例えば、行われるべき順序が決まっている複数の作業を含む活動に実施形態が適用されて、各作業についての権限が、各作業に関わる作業者に対して付与される。
例えば、医療現場において行われる複数の作業を含む活動(例えば、医療行為や診断等)に、実施形態が適用される。具体的には、CT装置やMRI装置等による撮影を含む医療行為や診断に実施形態が適用されることが考えられる。このような場面では、放射線技師等の撮影者によるスキャン、画像生成、画像の品質の確認、画像への診断情報の負荷、医師や看護師等による画像の表示や印刷、といった各作業がこの順番で行われる。この場合、医師の権限は他の権限よりも大きいため、医師には、全ての作業についての権限が付与され、医師以外の作業者には、当該作業者の役割に応じた権限が付与される。
別の例として、出版や広告に関する業務に実施形態が適用されてもよい。例えば、原稿の作製、入稿、組版、校正、色校正、印刷、といった各作業がこの順番で行われる。各作業に関わる作業者の役割や順序に応じた権限が、各作業者に付与される。
上記のファイル管理サーバ10、メッセージングサーバ12、連携サーバ14及び端末装置16の各部の機能は、一例としてハードウェアとソフトウェアとの協働により実現される。例えば、各装置のプロセッサが、各装置のメモリに記憶されているプログラムを読み出して実行することで、各装置の機能が実現される。プログラムは、CD又はDVD等の記録媒体を経由して、又は、ネットワーク等の通信経路を経由して、メモリに記憶される。
上記各実施形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU: Central Processing Unit、等)や、専用のプロセッサ(例えばGPU: Graphics Processing Unit、ASIC: Application Specific Integrated Circuit、FPGA: Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。また上記各実施形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は上記各実施形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。