本発明は、検索目的等に応じて検索対象とすべき範囲を予め仮想検索空間(VSS:Virtual Search Space)として定義しておき、仮想検索空間にログインすることで当該仮想空間内での検索を可能にする検索空間マッピングシステム(検索システム)に関する。
以下、添付図面を参照して本発明の実施形態について説明する。ただし、本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。また、各図において共通の構成については同一の参照番号が付されている。
(1)第1の実施形態
<検索空間マッピングシステムの構成及び機能>
検索空間マッピングシステム100は、検索空間マップサーバ1と、検索サーバ3と、ファイルサーバ4と、クライアント2(以下「サーバ等」という。)と、を備えている。そして、当該システムでは、それぞれの装置が、LAN(Local Area Network)9等の有線又は無線の通信回線により互いに通信可能なように接続されている。
図1においては、サーバ等はLAN9によって互いに通信可能に接続されているが、接続方法はLANに限定されるものではなく、例えばWAN(Wide Area Network)やインターネットによって接続されていてもよい。
また、図1においては、サーバ等が同一LANセグメント上で接続されているが、この構成は一例に過ぎず、どのような構成になっていてもよい。
さらに、図1においては、検索空間マップサーバ1、検索サーバ3、ファイルサーバ4、およびクライアント2はそれぞれ1台ずつ存在しているが、それぞれ2台以上存在しても構わない。
また、検索空間マップサーバ1、検索サーバ3、ファイルサーバ4、およびクライアント2はそれぞれ異なる装置である必要はなく、例えば、検索空間マップサーバ1、検索サーバ3、ファイルサーバ4、およびクライアント2の機能を1台の装置によって実現することも可能である。
以上のような構成により、クライアント2は検索空間マップサーバ1および検索サーバ3を経由してファイルサーバ4にファイル検索要求を送信し、ファイルサーバ4は検索サーバ3および検索空間マップサーバ1を経由してクライアント2にファイル検索結果データ、すなわち検索条件に合致するファイルのファイル名、URL等(以下「検索結果データ」と略記する)を送信することができる。
なお、「背景技術」において記載したように、本発明では、文書ファイル、表ファイル、電子メール、データベース、データベースに記憶された各レコード、プログラム等、情報処理装置に記憶される全てのデジタル情報を総称して「ファイル」とする。
<クライアント(端末装置)の構成及び機能>
クライアント2はPC等の装置で構成されており、入力装置26と、表示装置27と、記憶装置28と、を備え、それらは通信可能に接続されている。入力装置26はキーボード、マウス等の装置であり、クライアント2の操作者(ユーザ)は入力装置26を操作することで、クライアント2が実行するべき処理を指示することができる。すなわち、入力装置26はクライアント2の入力手段として機能する。
表示装置27は液晶ディスプレイ、プリンタ等の装置で構成されており、クライアント2が実行した処理の結果等を表示あるいは印刷出力する。すなわち、表示装置27はクライアント2の表示手段および出力手段として機能する。記憶装置28は磁気ディスク等の装置であり、クライアント2に内蔵され又は外部接続される。記憶装置28と、図示していないがクライアント2の主記憶装置等は、クライアント2の記憶手段として機能する。
また、クライアント2は、図示していないがCPU(Central Processing Unit)、主記憶装置等を備えており、CPUは、図示していないが、記憶装置28に記憶されているWEBブラウザ等のプログラムを主記憶装置上にローディングし、その命令コードを実行することで各種の処理を実行する。以上のようなプログラム実行にかかわる技術は周知であるので、以降の説明および図面においては、プログラム実行に係る説明が煩雑になるのを避けるため、WEBブラウザをWEBページ表示手段21というように、各種プログラムについてあたかもハードウェアが存在するかのように記載し、各手段が処理を実行するかのように記載する。なお、実際に各手段(例えばWEBページ表示手段21)を電子装置または電子装置とファームウェアの組合せ等で構成することも可能である。
WEBページ表示手段21は上述したようにWEBブラウザであり、クライアント2の操作者が入力装置26によって入力したURL(Uniform Resource Locator)等を検索空間マップサーバ1に送信し、また検索空間マップサーバ1から送信されるHTML(HyperText Markup Language)等からなるWEBページを表示装置27に表示する。
ここで、サーバ等には、通信回線上での場所を一意に特定するためのIPアドレスや、IPアドレスに対応する識別名(以下、単に「識別名」という。)等が割り当てられているので、例えばクライアント2は検索空間マップサーバ1のIPアドレス宛に、URL等に加えてクライアント2自身のIPアドレスを送信することで、検索空間マップサーバ1がWEBページをどこに送信すればよいかを指定する。
<検索空間マップサーバ1の構成及び機能>
検索空間マップサーバ1はPC等の装置で構成されており、記憶装置16と通信可能に接続されている。記憶装置16は磁気ディスク等の装置であり、検索空間マップサーバ1に内蔵され又は外部接続される。記憶装置16と、図示していないが検索空間マップサーバ1の主記憶装置等は、検索空間マップサーバ1の記憶手段として機能する。
記憶装置16には、検索空間定義ファイル17およびレポートファイル18が記憶されている。また、検索空間定義ファイル17には、検索空間(すなわち検索対象とすべきファイルのファイルパス、ファイルタイプ等)が、検索目的等(検索目的、検索対象であるファイルの属性(例えば、docやtxt)、操作者(ユーザ)の参照権限、検索対象の作成期間、特定のキーワード)に合わせて1以上記憶されている。つまり、検索空間は、全検索範囲のデータに対して、検索目的等の情報(上述の情報のうち、少なくとも1つの情報)で限定することによって予め定義されている。後述するように、検索空間マップサーバ1は、WEBページ表示手段21に検索空間のリストを送信し、WEBページ表示手段21は受信した検索空間のリストを表示装置27に表示する。そして、クライアント2の操作者は表示された検索空間のリストから、検索目的等に合致する検索空間を選択する。レポートファイル18には、検索空間に対応した検索結果データが記憶される。
後述するように、検索空間は特定の開発プロジェクトに関するファイルを検索するための空間といったように、検索目的等(検索目的、ファイル属性、参照権限、作成期間を含む)に応じて定義することができる。そして、クライアント2の操作者は検索空間に記憶されているファイルを、キーワード等の検索条件を使用して検索し、検索結果から検索空間の目的等に合致したファイルを選択して、検索空間に対応付けてレポートファイル18に保存する。すなわち、検索空間から所望するファイルをレポートファイル18に取り込むわけである。
以上の結果、レポートファイル18には、検索空間の目的等に合致したファイルが徐々に蓄積されることになる。従って、クライアント2の操作者は、検索空間とレポートファイル18の両方を検索し、それぞれの検索結果を別画面で表示することにより、レポートファイル18からは他のクライアント2の操作者が取り込んだファイルも含めてノイズが小さい検索結果を得、一方、検索空間からはノイズは比較的大きいものの未だレポートファイル18に取り込まれていないファイルを新たに探し出すことが可能になる。
検索空間マップサーバ1は、WEBページ送信手段11(WEBサーバ)および検索空間マップ手段12(検索空間マッププログラム)を備えている。クライアント2と同様に、検索空間マップサーバ1は図示していないがCPU、主記憶装置等を備えており、CPUは、図示していないが、記憶装置16に記憶されているWEBサーバ等のプログラムを主記憶装置上にローディングし、その命令コードを実行することで各種の処理を実行する。また、主記憶装置には、検索管理データ13が記憶される。
WEBページ送信手段11は例えばApache(登録商標)等のWEBサーバで構成され、WEBページ表示手段21から受信したURL等を参照して、HTTP等からなるWEBページを作成し、WEBページ表示手段21に送信する。また、WEBページ送信手段11は、WEBページ表示手段21から受信したURL等が所定の値である場合に、検索空間マップ手段12を起動する。
検索空間マップ手段12は、ログイン画面、検索空間選択画面、検索画面等、HTTP等からなるWEBページを作成してWEBページ送信手段11に引き渡し、WEBページ送信手段11は引き渡されたWEBページをクライアント2に送信し、WEBページ表示手段21で表示できるようにする。
検索管理データ13には、後述するように、各クライアント2に関する、クライアント2の操作者を識別するデータと、検索空間マップ手段12が検索対象とすべき検索範囲を示すデータと、検索結果データ等が記憶される。
後述するように、クライアント2の操作者は、まず検索空間マップ手段12にログインし、次に検索対象とすべき検索空間を指定し、その後、指定した検索空間を対象として検索等の処理を行い、必要な操作を終えるとログアウトする。そして、クライアント2の操作者は、ログインの際には操作者を識別するための利用者IDを入力するが、その後は利用者IDを入力することはないので、ログアウトするまで、利用者IDをどこかに記憶しておく必要がある。同様にクライアント2の操作者が指定した検索対象とすべき検索空間を識別するためのデータもログアウトするまで、どこかに記憶しておく必要がある。検索結果データ等についても同様である。
そこで、第1実施形態においては、これらのデータを検索管理データ13に記憶している。なお、検索管理データ13に記憶する以外の方法、例えばHTTP(Hypertext Transfer Protocol)cookieを使用して、必要なデータをWEBページ表示手段21とWEBページ送信手段11の間で適時送受信することも可能である。
検索空間マップ手段12は、検索画面を作成する際、本発明においては検索キーワード、検索対象とすべきファイル、フォルダ、DB(DataBase)等(既に述べているように全て「ファイル」という。)を指定するデータを検索サーバ3に送信し、検索サーバ3から受信した検索結果データを検索画面に設定する。
前述したように、サーバ等には、通信回線上での場所を一意に特定するためのIPアドレスや、識別名等が割り当てられているので、例えば検索空間マップ手段12は検索サーバ3のIPアドレス宛に、各データに加えて検索空間マップサーバ1のIPアドレスを送信することで、検索サーバ3が検索結果データをどこに送信すればよいかを指定する。
<検索サーバ3の構成及び機能>
検索サーバ3はPC等の装置で構成されており、検索手段31(検索プログラム)を備えている。クライアント2と同様に、検索サーバ3は、図示していないがCPU、主記憶装置等を備えており、CPUは、図示していないが、記憶装置に記憶されている検索プログラム等のプログラムを主記憶装置上にローディングし、その命令コードを実行することで各種の処理を実行する。
検索手段31は、検索空間マップ手段12から受信した検索キーワード等を使用して、ファイルサーバ4に記憶されているファイルを検索し、検索結果データを検索空間マップ手段12に送信する。第1実施形態においては、検索手段31の検索対象はファイルサーバ4に記憶されているファイルとしているが、例えば、検索手段31が検索空間マップサーバ1、クライアント2に記憶されているファイルも検索対象とするように構成することも可能である。
なお、このような検索手段31によってファイルを検索することは周知技術であるので、検索手段31が具体的にどのようにファイルの検索を行うかについてはここでは詳細には記載しないが、例えば、検索手段31が検索空間マップ手段12からファイル検索コマンド(例えば“SearchFile Keyword=‘projectX’”:‘projectX’というキーワードを含むファイルを検索、“Filetype=‘doc’ or ‘txt’”:ファイル拡張子が‘doc’または‘txt’であるファイルを検索等)を受信して検索を行うようにすればよい。すなわち、検索空間マップ手段12が、検索手段31によって理解可能なコマンド等を作成して、検索手段31に送信すればよい。そして、ファイルサーバ4に検索エージェント(プログラム)を備え、検索手段31が検索エージェントに、検索コマンド等を送信し、検索エージェントが検索結果データを検索手段31に送信すればよい。また、この際、検索手段31が複数のファイルサーバ4の検索エージェントに並列的に検索コマンド等を送信し、各検索エージェントから並列的に検索結果データを受信し、重複する検索結果データをひとつに纏める等、検索結果データをマージして検索空間マップ手段12に送信することも可能である。ここで「並列的」とは、1つのファイルサーバ4の検索エージェントに検索コマンド等を送信し、当該検索エージェントから検索結果データを受信するまで待って、受信後にまた別のファイルサーバ4の検索エージェントに検索コマンド等を送信するのでなく、例えば複数のファイルサーバ4の検索エージェントそれぞれに対応したスレッドを作成することにより、各検索エージェントに検索コマンド等を送信し、各検索エージェントから検索結果データを受信するといったように、各検索エージェントによるファイル検索がそれぞれ独立に行われることを意味する。
前述したように、サーバ等には、通信回線上での場所を一意に特定するためのIPアドレスや、識別名等が割り当てられているので、例えば検索手段31はファイルサーバ4のIPアドレス宛に、検索キーワード等に加えて検索サーバ3のIPアドレスを送信することで、ファイルサーバ4が検索結果データをどこに送信すればよいかを指定することができる。
<ファイルサーバ4の構成及び機能>
ファイルサーバ4はPC等の装置で構成されており、記憶装置46と通信可能に接続されている。記憶装置46は磁気ディスク等の装置であり、ファイルサーバ4に内蔵され又は外部接続される。また、記憶装置46と、図示していないがファイルサーバ4の主記憶装置等は、ファイルサーバ4の記憶手段として機能する。
図1においては、記憶装置46は1台しか図示していないが、磁気テープ、磁気ディスク、光ディスク等、さまざまな種類からなる複数台の記憶装置46を接続することが可能である。そして、よく知られているように、例えば検索手段31がファイルサーバ4に記憶されているファイルを検索する場合、検索手段31は、論理ボリューム名、ファイルパス等によって、記憶装置46上の検索対象を指定することができる。なお、記憶装置16、記憶装置28についても記憶装置46と同様にさまざまな種類からなる複数台の装置による構成が可能であり、論理ボリューム名、ファイルパス等によってファイルを特定することが可能である。
記憶装置46には、検索対象ファイル47が記憶されている。ここで、検索対象ファイル47とは記憶装置46に記憶されている特定のファイルを示しているのではなく、検索対象となりうる全てのファイルを示している。従って、検索対象ファイル47は、記憶装置46に記憶されている全てのファイルであってもよいし、システムログ等の機密性の高いファイルを除いた全てのファイルであってもよい。ファイルサーバ4は、検索手段31から検索コマンド等を受信し、検索対象ファイル47に記憶されているファイルから検索キーワードを含んでいるなど検索条件に合致したファイルを検索し、検索結果データを検索手段31に送信する。
<検索空間定義ファイルの構成>
図2は、検索空間定義ファイル17のデータ構成図である。検索空間定義ファイル17は、1以上の検索空間定義レコード170から構成される。検索空間定義レコード170には、検索目的等を示す検索空間名称や、検索対象とすべきファイルのファイルパス、ファイルタイプ等が記憶されている。
より具体的には、検索空間定義レコード170は、検索空間ID171、検索空間名称172、利用者ID174、パスワード175、および検索対象176の各データ項目から構成される。利用者ID174とパスワード175は、利用者別ログイン権限173と総称し、当該検索空間ID171についてログイン権限を有する利用者数分(m個)設定される。
検索空間ID171には、検索空間マップ手段12等が検索空間を識別するためのID(Identifier)が設定される。図示していないが、検索空間マップサーバ1には検索空間定義ファイル作成・更新プログラムが存在する。
また、検索空間マップサーバ1の操作者は、図示していないが、検索空間マップサーバ1に接続されたキーボード、マウス等の入力装置を操作することで検索空間定義ファイル作成・更新プログラムを起動し、各データを入力して検索空間定義レコード170を作成、変更、削除する。そして、検索空間ID171には、検索空間マップサーバ1の操作者が入力した値、例えば“VSS1”が設定される。
検索空間名称172には、検索空間ID171に対応する検索空間の名称が設定される。具体的には、検索空間マップサーバ1の操作者が検索空間定義ファイル作成・更新プログラムを操作して入力した値、例えば“開発プロジェクトX”が設定される。後述するように、検索空間名称172に設定された名称を検索空間一覧画面に表示することで、クライアント2の操作者は検索空間ID171“VSS1”が“開発プロジェクトX”に関するファイルを検索するための空間であること、すなわち検索空間の目的等を知ることができる。なお、検索空間名称172の他に、データ項目として例えば「検索目的」を備え、検索空間ID171による検索目的(例えば「開発プロジェクトXに関する技術的データを検索」)を設定してもよい。このようにすることで、クライアント2の操作者は、検索空間一覧画面に表示された検索目的を見て、より容易に適切な検索空間を選択することが可能になる。
利用者ID174には、検索空間ID171での検索が可能な利用者、すなわち検索空間ID171にログイン可能な利用者を特定するIDが設定される。具体的には、検索空間マップサーバ1の操作者が検索空間定義ファイル作成・更新プログラムを操作して入力した値、例えば“usr1”が設定される。
パスワード175には、対応する利用者ID174が検索空間ID171にログインする場合に入力すべきパスワードが設定される。
検索対象176には、検索空間ID171において検索対象とすべきファイルパス、ファイルタイプ、キーワード等が設定される。検索対象176の設定内容については図3および図4を使用して詳細に説明する。
<検索空間の概念>
図3は、検索空間の概念を説明するための図である。ここで示されるファイルサーバ4の構成においては、あるファイルサーバ4の識別名が“Server1”であり、別のファイルサーバ4の識別名が“Server2”である。“Server1”は、2つの論理ボリュームから構成されており、各論理ボリュームは、それぞれ“vol1”、“vol2”の名称により一意に識別可能となっている。“Server2”は、1つの“vol1”の名称により一意に識別可能な論理ボリュームから構成されている。
“Server1”の“vol1”、“vol2”および、“Server2”の“vol1”には、図示したようなフォルダおよびファイルからなるファイルパスが存在する。例えば、“Server1”の“vol1”には、“etc”、“doc”の2つのフォルダが存在し、“etc”フォルダには“file1.doc”、“file2.xml” の2つのファイルが、“doc”フォルダには“file3.doc”の1つのファイルが存在する。同様に、“Server1”の“vol2”には、1つのフォルダ“pjt”が存在し、“pjt”フォルダには“pjt1”、“pjt2”、“pjt3”の3つのフォルダが存在し、そのうち“pjt1”フォルダには“file4.txt”、“file5.doc”の2つのファイルが存在する。また、“Server2”の“vol1”には、1つのフォルダ“usr”が存在し、“usr”フォルダには“usr1”、“usr2”、“usr3”の3つのフォルダが存在し、“usr2”フォルダには、1つの“file5.doc”ファイルが存在する。
以上のファイルサーバ4の論理ボリュームおよびファイルパスのうち、例えば、図3において「VS301」で示す点線内だけに開発プロジェクトXに関係するファイルが存在する場合、例えば検索空間ID171を“VSS1”とする検索空間定義レコード170を作成し、当該レコードの検索対象176に“Server1/vol1/doc/”、“Server1/vol2/pjt/pjt1/”、および“Server2/vol1/usr/”を設定すればよい。このような空間定義レコード170が作成されており、クライアント2の操作者が“VSS1”にログインしている場合、検索空間マップ手段12は、検索手段31に、“Server1/vol1/doc/”、“Server1/vol2/pjt/pjt1/”、および“Server2/vol1/usr/”内のファイルのみ、すなわち、図3のVS301内のファイルのみを検索対象とするように指示する。
なお、この例では、検索対象176には、ファイルサーバ4の識別名、論理ボリュームおよびファイルパスが設定されているが、ファイルサーバ4以外のサーバ等、例えば検索空間マップサーバ1についても同様に検索対象として設定することができる。また、設定したサーバ等の識別名、論理ボリュームおよびファイルパスを検索対象とするだけでなく、例えば“ALLOW Server1/vol1/doc/”と設定した場合は、“Server1/vol1/doc/”を検索対象とし、“DENY Server1/vol1/doc/”と設定した場合は、“Server1/vol1/doc/”を検索対象外とするといったように、検索対象と検索対象外を組み合わせて指定することも可能である。
また、検索対象176には、検索対象とすべきファイルパス、ファイルタイプ、キーワード等を設定してもよいし、これらを組み合わせて設定してもよい。
図4は、別の検索空間の例を説明するための概念図であり、検索対象176にファイルタイプを指定する場合の例である。図4においては、ファイルサーバ4、論理ボリューム、ファイルパスの構成は図3と同じであり、文書ファイルおよびテキストファイルを検索対象としており、ファイルの検索場所は特定できない場合を想定している。この場合、検索対象176に文書ファイルおよびテキストファイルのファイルタイプを示すデータ、例えばファイル拡張子の“doc”および“txt”を設定すればよい。このようにすることで、例えばファイル拡張子による検索機能を持たないような検索手段31(すなわち、ファイル拡張子によって検索対象を指定することができない検索手段31)については、ファイル拡張子を指定せずに検索を行い、検索空間マップ手段12が、検索手段31から送信された検索結果データのうち、ファイル拡張子が“doc”または“txt”であるものを選択することができる。
一方、単にファイルタイプを示すデータを設定するのでなく、例えば“Filetype=‘doc’ or ‘txt’”のように、ファイル検索コマンドのうちの検索対象を指定する部分をそのまま設定してもよい。このようにすることで、例えばファイル拡張子による検索機能を備えている検索手段31(すなわち、ファイル拡張子によって検索対象を指定することが可能な検索手段31)については、検索対象176に設定されているデータをそのまま使用してファイル検索コマンドを作成して検索を行うことができる。さらに、例えば“SearchFile (Keyword=‘projectX’and (Filetype=‘doc’ or ‘txt’)) ”(‘projectX’というキーワードを含み、かつファイル拡張子が‘doc’または‘txt’であるファイルを検索)といったように、複数の検索条件を容易に組み合わせて検索対象を設定することが可能になる。
検索空間マップサーバ1の操作者は以上のようにして、「開発プロジェクトXに関係するファイルを検索する」等の検索目的等に合わせ、可能な限りノイズを除去した検索空間定義レコード170を作成することができる。
<レポートファイルのデータ構成>
図5は、レポートファイル18のデータ構成を示す図である。レポートファイル18は、1以上のレポートレコード180によって構成されている。
レポートレコード180は、検索空間マップ手段12による検索結果データ(該当する検索空間について、過去に実行された検索結果)を記憶するレコードであり、そこには検索空間マップ手段12が検索手段31から受信した検索結果データが記憶される。より正確には、後述するように、検索空間マップ手段12が検索手段31から受信した検索結果データは表示装置27に表示され、クライアント2の操作者が表示された検索結果データのうち、レポートレコード180に記憶すべきものを選択することで、レポートレコード180が作成される。
レポートレコード180は、レポートID181、レポート名182、検索空間ID183、および検索結果184の各データ項目によって構成される。検索結果184は1以上(n個)存在する。
レポートID181には、レポートレコード180を一意に識別可能なIDが“report01”のように設定される。例えば、図示していないが記憶装置16に0を初期値とするカウンタを記憶しておき、レポートレコード180を作成するたびに、カウンタの値を1アップして“report”とつなぎ合わせてレポートID181に設定すればよい。
また、レポート名182には、例えば“開発計画書”のように、当該レポートレコード180の名称が設定される。
検索空間ID183には、例えば“VSS1”のように、検索対象とした検索空間の検索空間ID171が設定される。
検索結果184には、検索空間マップ手段12が検索手段31から検索結果データとして受信したファイルのファイル名、URL等が設定される。例えば、ファイル名、URL等を含んだHTML形式のデータを設定しておくことで、そのままWEBページの一部として表示させることが可能である。
さらに、備考欄185には、システム管理者やクライアント2の操作者によるコメントを入力することができるようになっている。
<検索管理データの構成>
図6は、検索管理データ13のデータ構成を示す図である。検索管理データ13は、0以上の検索管理レコード130から構成される。
検索管理レコード130は、クライアント2の操作者が検索空間マップ手段12にログインしてからログアウトするまでの間、検索空間マップ手段12が、当該クライアント2の操作者および検索空間を特定するためのレコードである。後述するように、クライアント2の操作者が検索空間マップ手段12にログインすると、検索空間マップ手段12は当該クライアント2についての検索管理レコード130を作成し、クライアント2の操作者が検索空間マップ手段12からログアウトすると、検索空間マップ手段12は当該クライアント2についての検索管理レコード130を削除する。従って、いずれのクライアント2の操作者も検索空間マップ手段12にログインしていない場合には、検索管理レコード130は存在しない(言い換えれば0個存在する)。
検索管理レコード130は、クライアント識別131、検索空間ID132、利用者ID133、レポート検索結果134、および検索空間検索結果135の各データ項目から構成される。
クライアント識別131には、クライアント2のIPアドレス等、クライアント2を一意に識別可能なデータが設定される。
また、検索空間ID132には、例えば“VSS1”のように、当該クライアント2の操作者がログインしている検索空間の検索空間ID171が設定される。
利用者ID133には、当該検索空間ID132にログインしている操作者の利用者IDが設定される。
さらに、レポート検索結果134には、レポートファイル18を検索した検索結果データ、すなわち検索条件に一致したレポートレコード180のレポートID181、レポート名182等が設定される。
また、検索空間検索結果135には、検索空間を検索した検索結果データ、すなわち検索条件に一致したファイルのファイル名、URL等が設定される。
以上で、第1実施形態に係る検索空間マッピングシステムの構成及び機能、各ファイルやデータの構成について説明した。以下、第1実施形態に係る検索空間マッピングシステムの動作について説明する。
<検索空間マッピングシステムの動作内容>
i)ログイン前の処理動作
まず、図7のフローチャートの説明の前に、クライアント2におけるログインがなされる前の処理について説明する。
クライアント2の操作者が入力装置26を操作してWEBページ表示手段21を起動すると、WEBページ表示手段21は表示装置27にWEB閲覧用画面を表示する。そして、クライアント2の操作者が入力装置26を操作してWEB閲覧用画面のURL入力・表示フィールドに所定のURL(例えば“http://vsserver.somecompany.com/vssearch/login.html”)を入力すると、WEBページ表示手段21は入力URLを検索空間マップサーバ1に送信する。
検索空間マップサーバ1のWEBページ送信手段11は入力URLを受信し、ログイン画面用のWEBページをWEBページ表示手段21に送信する。WEBページ表示手段21は受信したWEBページをログイン画面として表示装置27に表示する。ログイン画面の表示例を図8に示す。なお、図8を含め、以降の画面表示例においては、URL入力・表示フィールド、「戻る」ボタン等、通常のWEBブラウザの表示画面が備えているフィールド等は表示していないが、これらのフィールド等も当然に画面に表示される。
ii)クライアント2における処理動作
図7は、ファイル検索に係る、クライアント2におけるWEBページ表示手段21の動作を説明するためのフローチャートである。
(a)ステップS710
WEBページ表示手段21は、操作者からのログインを受け付ける(ステップS710)。より詳しく説明すると、まず、クライアント2の操作者が入力装置26を操作してログイン画面の利用者ID(G81)およびパスワード(G82)を入力し、ログイン画面下部の実行ボタンをクリックする。
すると、WEBページ表示手段21は、入力された利用者IDおよびパスワードをログイン処理要求とともにWEBページ送信手段11に送信する。ログイン処理要求を送信する方法としては、ログイン処理を実行すべきCGI(Common Gateway Interface)等を指定した所定のURL(例えば“http://vsserver.somecompany.com/vssearch/cgi/login.cgi”)をWEBページ送信手段11に送信する方法等、さまざまな方法が知られており、これらの方法から選択して使用すればよい。
なお、後述する検索空間選択処理要求等においても同様の方法を使用することができる。この場合、例えば検索空間選択処理要求についてはログイン処理要求と異なるCGIを指定した所定のURL(例:“http://vsserver.somecompany.com/vssearch/cgi/vsselect.cgi”)をWEBページ送信手段11に送信することで、検索空間マップ手段12にログイン処理ではなく検索空間選択処理を実行させることが可能である。このような場合、検索空間マッププログラム(検索空間マップ手段12)は複数のCGIから構成されることになる。さらに、例えば、“http://vsserver.somecompany.com/vssearch/cgi/vssearch.cgi&function=login”のように、CGIの指定にパラメータ(この例では“function=login”)をつけることも可能である。このようにすることで、1つのCGIに対して、パラメータによって異なる処理を実行させることが可能になる。
(b)ステップS720
次に、WEB表示手段21は、検索空間選択処理を実行する(ステップS720)。つまり、まず、WEBページ表示手段21は検索空間マップ手段12から受信したWEBページを表示装置27に表示する。WEBページ表示手段21が検索空間マップ手段12からエラー画面のWEBページを受信した場合には、表示装置27にエラー画面が表示されるので、クライアント2の操作者はエラーとなった原因を解決し、再度ログイン操作を行えばよい。この場合、WEBページ表示手段21は再びS710の処理を行うことになる。WEBページ表示手段21が検索空間マップ手段12から検索画面のWEBページを受信した場合には、表示装置27に検索画面が表示され、クライアント2の操作者は検索操作を行うことができる。検索操作に係るWEBページ表示手段21等の動作については、検索処理(S740等)として後述する。
WEBページ表示手段21が検索空間マップ手段12から検索空間選択画面のWEBページを受信した場合には、表示装置27に検索空間選択画面が表示され、クライアント2の操作者は検索空間選択操作を行うことができる。
検索空間選択画面の表示例を図9に示す。図9に示すように、検索空間選択画面の検索空間選択部(G91)には、クライアント2の操作者がログイン可能な全ての検索空間について、ラジオボタン、検索空間IDおよび検索空間名称が表示され、クライアント2の操作者は、表示された検索空間名称を参考にして、検索対象とすべき検索空間を選択することができる。図9においては、“VSS1”が選択された状態を例示している。
クライアント2の操作者が入力装置26を使用して、検索対象とすべき検索空間のラジオボタンをクリックし、当該ラジオボタンをアクティブにして検索空間選択画面右下部分の実行ボタンをクリックすると、WEBページ表示手段21はアクティブになったラジオボタンに対応する検索空間IDを検索空間選択処理要求とともにWEBページ送信手段11に送信する。
一方、クライアント2の操作者が検索空間選択画面右下部分のキャンセルボタンをクリックすると、WEBページ表示手段21はWEBページ送信手段11にログアウト処理要求を送信する。ログアウト操作に係る検索空間マップ手段12等の動作については、ログアウト処理(S750等)として後述する。
(c)ステップS730
WEBページ表示手段21は検索空間マップ手段12から受信したWEBページを表示装置27に表示する。
従って、WEBページ表示手段21が検索空間マップ手段12からエラー画面のWEBページを受信した場合には、表示装置27にエラー画面が表示されるので、クライアント2の操作者はエラーとなった原因を解決し、再度検索空間選択操作を行えばよい。この場合、WEBページ表示手段21は再びS720の処理を行うことになる。
WEBページ表示手段21が検索空間マップ手段12から検索画面のWEBページを受信した場合には、表示装置27に検索画面が表示され、クライアント2の操作者は検索操作等を行うことができる。
検索画面の表示例を図10に示す。図10に示すように、検索画面には、検索条件指定部(G101)、検索結果切替ボタン(G102)、検索結果表示部(G103)、および「検索」、「終了」ボタンが表示される。また、クライアント2の操作者がログインしている検索空間ID(“VSS1”)および検索空間名称(“製品X開発プロジェクト”)が、図10の例では画面の左上部分に表示される。
クライアント2の操作者が、終了ボタンをクリックすると(S730でYESの場合)、WEBページ表示手段21は、WEBページ送信手段11にログアウト処理要求を送信する(S750)。ログアウト操作に係る検索空間マップ手段12等の動作については、ログアウト処理として後述する。
一方、クライアント2の操作者が検索条件指定部(G101)のキーワードを入力して、実行ボタンをクリックすると(S730でNOの場合)、WEBページ表示手段21は入力されたキーワードを検索処理要求とともにWEBページ送信手段11に送信する(S740)。なお、図10においては検索条件指定部(G101)の検索条件としてキーワードのみを示しているが、ファイルが文書ファイル、表ファイル、HTMLファイルのいずれであるかの指定、ファイルの更新日など、さまざまなデータを検索条件とすることができる。
(d)ステップS740
検索空間マップサーバ1において、後述する検索処理が終了すると、WEBページ送信手段11は検索結果データを含めた検索画面のWEBページをWEBページ表示手段21に送信する。すると、WEBページ表示手段21は受信したWEBページを検索画面として表示装置27に表示する。このとき、図11に示すように検索画面の検索結果表示部(G103)には、検索結果データに含まれているファイル名(“製品X開発計画書”等)およびファイルの存在場所(“Server1/vol1/doc/file3”等)が表示される。すなわち図11においては、図3及び4での検索空間についての説明と対応させるため、ファイルサーバ4の識別名、論理ボリュームおよびファイルパスによってファイルの存在場所を示している。なお、WEBページ送信手段11が受信したURLを別のURL等に変換する技術はよく知られており、例えば図11において、ファイルサーバ4の識別名、論理ボリュームおよびファイルパスによってファイルの存在場所を示す“Server1/vol1/doc/file3”ではなく“http://Server1.vsserver.com/vol1/doc/file3”とURLを表示し、WEBページ表示手段21が“http://Server1.vsserver.com/vol1/doc/file3”をWEBページ送信手段11に送信した場合に、“Server1/vol1/doc/file3”に変換することも可能である。以降の説明では、図11に示すようなファイル存在場所やURLをURL等と総称する。
d1)クライアント2からファイル内容表示処理要求する場合
クライアント2の操作者が検索結果表示部(G103)に表示されたURL等をクリックすると、WEBページ表示手段21はクリックされたURL等をファイル内容表示処理要求とともにWEBページ送信手段11に送信する。
検索空間マップサーバ1において後述する表示処理が終了すると、WEBページ送信手段11は、受信したURL等に対応するファイルの内容を含む表示画面のWEBページをWEBページ表示手段21に送信する。WEBページ表示手段21は受信したWEBページを表示画面として表示装置27に表示する。
表示画面の表示例を図12に示す。図12に示すように、表示画面には、ファイル内容表示部(G121)および「終了」ボタンが表示される。また、クライアント2の操作者がログインしている検索空間ID(“VSS1”)、検索空間名称(“製品X開発プロジェクト”)、およびファイル内容を表示しているファイル名(“製品X開発計画書”)が、図12の例では画面の左上部分に表示される。
クライアント2の操作者が、表示画面の終了ボタンをクリックすると、WEBページ表示手段21は、再度、図11の検索画面を表示する。従って、クライアント2の操作者は、検索結果表示部(G103)に表示されたURL等をクリックすることで各ファイルのファイル内容を確認することができる。
d2)クライアント2からレポート作成処理要求する場合
クライアント2の操作者は、検索結果表示部(G103)に表示されたファイルの全てまたは一部を選択して、レポートファイル18に記憶しておくことができる。検索結果データをレポートファイル18に記憶しておくことで、同じ検索を何度も行うといった無駄をなくすことができる。また、検索結果データのうち、検索目的に合致したファイルのみを選択して記憶しておくことで、例えば同じ開発プロジェクト内部で検索結果を共有することもできる。このように、レポートファイル18からノイズの小さい検索結果を得ることができ、さらに複数のクライアント2の操作者により検索目的に合致したファイルが徐々に蓄積されるので、時間の経過とともに多量かつノイズが小さい検索空間がいわば成長していくことになる。
具体的には、検索処理が終了すると、検索画面の検索結果表示部(G103)には、検索結果データに含まれているファイル名等が表示されるだけでなく、図11に示すように、各ファイル名等に対応してチェックボックスが表示される。また、例えば図11に示すように画面の左下部分に「レポート作成」ボタンが表示される。
クライアント2の操作者が入力装置26を使用して、レポートファイル18に記憶したいファイルのチェックボックスをクリックし、当該チェックボックスをアクティブにしてレポート作成ボタンをクリックすると、WEBページ表示手段21は表示装置27に、図13に示すようなレポート作成画面を表示する。
図13に示すように、レポート作成画面には、レポート名入力フィールド(G131)、選択結果表示部(G132)および「作成」、「終了」ボタンが表示される。選択結果表示部(G132)には、検索画面の検索結果表示部(G103)に表示されていたファイル名、URL等のうち、チェックボックスで選択されたファイル名、URL等が表示される。また、クライアント2の操作者がログインしている検索空間ID(“VSS1”)および検索空間名称(“製品X開発プロジェクト”)が、図13の例では画面の左上部分に表示される。
クライアント2の操作者は、レポート作成画面の選択結果表示部(G132)によって、必要なファイルを選択したか確認できる。そして、例えば、不必要なファイルを選択していたことに気づいた場合には、レポート作成画面の終了ボタンをクリックすると、WEBページ表示手段21は、再度、図11の検索画面を表示する。従って、クライアント2の操作者は、チェックボックスクリックによるファイル選択をやり直すことができる。
一方、クライアント2の操作者が、レポート名入力フィールド(G131)に作成するレポートに付けるレポート名(例えば“開発計画書”)を入力し、作成ボタンをクリックすると、WEBページ表示手段21は、レポート名入力フィールド(G131)に入力されたレポート名、および選択結果表示部(G132)に表示されているURL等をレポート作成処理要求とともにWEBページ送信手段11に送信する。
検索空間マップサーバ1において、後述するレポート作成処理が終了すると、WEBページ送信手段11は、検索画面のWEBページをWEBページ表示手段21に送信する。WEBページ表示手段21は受信したWEBページを図10に示すような検索画面として表示装置27に表示する。
なお、レポート名を入力するだけでなく、検索結果データのファイル名を編集したり(例えば「製品X開発計画書」を「製品X開発計画書(2008年11月10日検索版)」に変更)、検索結果データに「計画案であり現在の計画とは異なる」といった検索結果データ毎のコメントを追加する等、検索結果データを変更できるようにしてもよい。さらに「プロジェクト全体で共有可能と」といった検索結果データ全体に対するコメントを入力できるようにして備考18512に設定するようにしてもよい。
d3)クライアント2からレポート検索結果取得処理要求する場合
図11において、クライアント2の操作者が、検索結果切替ボタン(G102)の「レポート」をクリックすると、WEBページ表示手段21は、レポート検索結果取得処理要求をWEBページ送信手段11に送信する。
検索空間マップサーバ1において、後述する検索結果取得処理が終了すると、WEBページ送信手段11は検索結果データを含めた検索画面のWEBページをWEBページ表示手段21に送信する。WEBページ表示手段21は受信したWEBページを検索画面として表示装置27に表示する。
このとき、図14に示すように検索画面の検索結果表示部(G103)には、レポートファイル18を検索対象とする検索結果データに含まれているレポート名(“開発計画書”等)およびレポートID(“report01”等)が表示される(図14では“report01”の1行のみが表示されているが、2行以上の場合もあるし、また、表示されない場合もありえる)。
後述するように、検索空間マップ手段12の検索処理においては、検索空間選択処理において選択された検索空間に加え、レポートファイル18も検索対象となり、検索空間の検索とレポートファイル18の検索が並列的に実行される。検索空間マップ手段12は検索空間についての検索結果データを、当該クライアント2についての検索管理レコード130の検索空間検索結果135に記憶し、レポートファイル18についての検索結果データを、レポート検索結果134に記憶する。そして、検索空間マップ手段12は、まず検索空間についての検索結果データを含めた検索画面のWEBページをWEBページ表示手段21に送信する。この処理により、検索処理終了時の検索画面の検索結果表示部(G103)には、図11に示すように、検索空間についての検索結果データが表示される。そして、クライアント2の操作者は、検索結果切替ボタン(G102)の「レポート」をクリックすることで、レポートファイル18についての検索結果データを見ることができるのである。
なお、検索結果切替ボタン(G102)の「レポート」をクリックした後、さらに、検索結果切替ボタン(G102)の「ファイル」をクリックした場合、WEBページ表示手段21は、検索空間検索結果取得処理要求をWEBページ送信手段11に送信する。そして、検索空間マップサーバ1において、後述する検索結果取得処理が終了すると、WEBページ送信手段11は検索空間についての検索結果データを含めた検索画面のWEBページをWEBページ表示手段21に送信する。WEBページ表示手段21は受信したWEBページを検索画面として表示装置27に表示する。以上の処理により、表示装置27には、再び図11に示すような検索画面が表示される。
以上で説明したように、検索空間検索結果とレポート検索結果を同一画面に表示するのでなく、分けて表示することによって、指定したキーワードに関連した作成済みレポートを、レポート検索結果(ノイズが小さく比較的少量である)だけの中から探すことができる。また、レポート作成後、検索対象ファイル47に追加されたファイルを探したい場合、検索空間検索結果だけの中で探すことができる。
すなわち、検索空間の検索は、主としてレポート作成の素となるリソースを検索するという目的で行われるが、レポートの検索はキーワードに関連して既に精査された情報を検索するという目的で行われ、検索目的が異なる。このように異なる目的で2以上の異質の空間を検索する場合には、検索結果を同一画面に表示するのでなく、別画面に分けて表示するほうが好ましいのである。
d4)クライアント2からレポート内容表示処理要求する場合
図14において、クライアント2の操作者が検索結果表示部(G103)に表示されたレポートIDをクリックすると、WEBページ表示手段21はクリックされたレポートIDをレポート内容表示処理要求とともにWEBページ送信手段11に送信する。
検索空間マップサーバ1において、後述する表示処理が終了すると、WEBページ送信手段11は、受信したレポートIDに対応するレポートの内容を含む表示画面のWEBページをWEBページ表示手段21に送信する。WEBページ表示手段21は受信したWEBページを表示画面として表示装置27に表示する。
表示画面の表示例を図15に示す。図15に示すように、表示画面には、レポート内容表示部(G151)および「終了」ボタンが表示される。また、クライアント2の操作者がログインしている検索空間ID(“VSS1”)、検索空間名称(“製品X開発プロジェクト”)、およびレポート内容を表示しているレポート名(“開発計画書”)が、図15の例では画面の左上部分に表示される。
クライアント2の操作者が、表示画面の終了ボタンをクリックすると、WEBページ表示手段21は、再度、図11の検索画面を表示する。従って、クライアント2の操作者は、検索結果表示部(G103)に表示されたレポートIDをクリックすることで各レポートのレポート内容を確認することができる。
なお、後述するように、S740における各処理においてWEBページ表示手段21がWEBページ送信手段11からエラー画面のWEBページを受信して表示する場合もある。
以上でクライアント2における操作およびWEBページ表示手段21の処理を中心とした説明を終了する。以降は、WEBページ表示手段21が、検索処理要求、ファイル内容表示処理要求、レポート内容表示処理要求、レポート作成処理要求、検索空間検索結果取得処理要求、レポート検索結果取得処理要求、およびログアウト処理要求を送信した場合の、検索空間マップ手段12の動作を中心に説明する。
iii)検索空間マップサーバ1がクライアント2からログイン処理要求を受信した場合の処理動作
図16は、ログイン処理時、すなわちWEBページ送信手段11がWEBページ表示手段21からログイン処理要求を受信した場合の、検索空間マップ手段12の動作を説明するためのフローチャートである。
WEBページ送信手段11はWEBページ表示手段21からログイン処理要求を受信すると、検索空間マップ手段12が起動する。そして、検索空間マップ手段12は、WEBページ送信手段11が送信した利用者ID、パスワードの組み合わせが正しいか、すなわち利用者ID、パスワードの組み合わせがいずれかの検索空間定義レコード170の利用者ID174、パスワード175の組み合わせ、すなわち利用者別ログイン権限173のいずれかと一致するか判定する(S1610)。
利用者ID、パスワードの組み合わせが、どの検索空間定義レコード170の利用者別ログイン権限173とも一致しない場合(S1610でNOの場合)、検索空間マップ手段12はエラー画面を作成して(S1630)処理を終了する。なお、このエラー画面を含め、以降の説明において「検索空間マップ手段12がX画面を作成する」とは、検索空間マップ手段12が、WEBページ表示手段21によって表示装置27に表示される、HTML等からなるWEBページを作成することを示す。
利用者ID、パスワードの組み合わせがいずれかの検索空間定義レコード170の利用者別ログイン権限173のいずれかと一致する場合(S1610でYESの場合)、検索空間マップ手段12は、該当する検索空間が2以上存在するか、すなわち、利用者ID、パスワードの組み合わせが複数の検索空間定義レコード170について、利用者別ログイン権限173のいずれかと一致するか判定し(S1620)、該当する検索空間が2以上存在する場合(S1620でYESの場合)は、検索空間選択画面を作成し(S1640)、該当する検索空間が1つだけ存在する場合(S1620でNOの場合)は、検索画面を作成する(S1650)。
検索空間選択画面を作成する場合(S1640)、検索空間マップ手段12は、検索空間定義レコード170のうち、利用者別ログイン権限173のいずれかがWEBページ表示手段21から受信した利用者ID、パスワードの組み合わせと一致するレコードの、検索空間ID171および検索空間名称172をWEBページの一部として設定する。これにより、クライアント2の表示装置27には、図9のG91に示すように、クライアント2の操作者がログイン可能な検索空間が全て表示され、クライアント2の操作者は、表示された検索空間名称172を参照して、目的にあった検索空間ID171を選択することができる。
また、検索空間選択画面を作成する場合(S1640)、検索空間マップ手段12は、ログイン処理要求を送信したWEBページ表示手段21のクライアント2について、検索管理レコード130を作成する。具体的には、クライアント識別131に、ログイン処理要求を送信したクライアント2を識別可能なデータ(当該クライアント2のIPアドレス等)を、利用者ID133に、WEBページ表示手段21から受信した利用者IDを設定し、検索空間ID132、レポート検索結果134および検索空間検索結果135には、空白値(スペース)等、未だ設定すべき値が定まっていないことを示すデータを設定する(以降は、クライアント識別131にクライアント2のIPアドレスを設定し、検索空間ID132、レポート検索結果134および検索空間検索結果135にはスペースを設定するという前提で説明する)。従って、以降の処理において、検索空間マップ手段12は、利用者ID133を参照することで処理対象クライアント2の操作者を知り、また、検索空間ID132にスペースが設定されていることにより、当該クライアント2、利用者ID133についての検索空間が定まっていないことを知ることができる。
検索画面を作成する場合(S1650)、検索空間マップ手段12は、検索空間定義レコード170のうち、利用者別ログイン権限173のいずれかがクライアント2から受信した利用者ID、パスワードの組み合わせと一致するレコードの、検索空間ID171および検索空間名称172をWEBページに設定する。これにより、クライアント2の表示装置27には、図10の画面左上部分に示すように、クライアント2の操作者がログインしている検索空間IDおよび検索空間名称が表示され、クライアント2の操作者は、自分がどのような検索に適した検索空間ID171にログイン中であるかを確認することができる。
また、検索画面を作成する場合(S1650)、検索空間マップ手段12は、ログイン処理要求を送信したWEBページ表示手段21のクライアント2について、検索管理レコード130を作成する。具体的には、クライアント識別131に、ログイン処理要求を送信したクライアント2を識別可能なデータ(当該クライアント2のIPアドレス等)を、検索空間ID132に、利用者別ログイン権限173のいずれかがクライアント2から受信した利用者ID、パスワードの組み合わせと一致するレコードの検索空間ID171を、利用者ID133に、WEBページ表示手段21から受信した利用者IDを設定し、レポート検索結果134および検索空間検索結果135には、空白値(スペース)等、未だ設定すべき値が定まっていないことを示すデータを設定する(以降は、クライアント識別131にクライアント2のIPアドレスを設定し、レポート検索結果134および検索空間検索結果135にはスペースを設定するという前提で説明する)。従って、以降の処理において、検索空間マップ手段12は、利用者ID133を参照することで処理対象クライアント2の操作者を知り、また、検索空間ID132を参照することで処理対象クライアント2、利用者ID133についての検索空間を知ることができる。
検索空間マップ手段12は、検索空間選択画面または検索画面を作成すると処理を終了する。そして、検索空間マップ手段12が作成したエラー画面、検索空間選択画面、検索画面、すなわち各画面のWEBページは、WEBページ送信手段11によってWEBページ表示手段21に送信される。
iv)検索空間マップサーバ1がクライアント2から索空間選択処理要求を受信した場合の処理動作
図17は、検索空間選択処理時、すなわちWEBページ送信手段11がWEBページ表示手段21から検索空間選択処理要求を受信した場合の、検索空間マップ手段12の動作を説明するためのフローチャートである。
WEBページ送信手段11がWEBページ表示手段21から検索空間選択処理要求を受信すると、検索空間マップ手段12が起動する。そして、検索空間マップ手段12は、クライアント2の操作者が、選択した検索空間を検索可能か判定する(S1710)。具体的には、まず、クライアント識別131が、検索空間選択処理要求を送信したWEBページ表示手段21のクライアント2のIPアドレスと一致する検索管理レコード130の利用者ID133を参照する。そして、WEBページ送信手段11が送信した検索空間IDと検索空間ID1710と一致する検索空間定義レコード170の利用者ID174のいずれかと、当該利用者ID133が一致するか否か判定し、一致する場合には選択した検索空間を検索可能と判定し、それ以外の場合には選択した検索空間を検索不可能と判定する。
なお、上述したような「処理要求を送信したWEBページ表示手段21のクライアント2のIPアドレスと一致する検索管理レコード130の利用者ID133」という記載は正確ではあるが冗長であり却って分かりにくいため、以降の説明においては、単に「対象検索管理レコード130」、「対象利用者ID133」のように記載する。同様に「検索空間ID171が、WEBページ送信手段11が送信した検索空間IDと一致する検索空間定義レコード170の利用者ID174」という記載も、単に「対象検索空間定義レコード170」、「対象利用者ID174」のように記載する。
検索空間マップ手段12は、選択した検索空間を検索不可能と判定した場合(S1710でNOの場合)、エラー画面を作成して(S1720)処理を終了する。
一方、検索空間マップ手段12は、選択した検索空間を検索可能と判定した場合(S1710でYESの場合)、検索画面を作成して(S1730)処理を終了する。
検索画面を作成する場合(S1730)、検索空間マップ手段12は、対象検索空間ID171および対象検索空間名称172をWEBページに設定する。これにより、クライアント2の表示装置27には、図10の画面左上部分に示すように、クライアント2の操作者がログインしている検索空間IDおよび検索空間名称が表示され、クライアント2の操作者は、自分がどのような検索に適した検索空間ID171にログイン中であるかを確認することができる。
また、検索画面を作成する場合(S1730)、検索空間マップ手段12は、対象検索管理レコード130の検索空間ID132に、クライアント2から受信した検索空間IDを設定する。従って、以降の処理において、検索空間マップ手段12は、利用者ID133を参照することで処理対象クライアント2の操作者を知り、また、検索空間ID132を参照することで処理対象クライアント2、利用者ID133についての検索空間を知ることができる。
検索空間マップ手段12は、検索空間選択画面または検索画面を作成すると処理を終了する。そして、検索空間マップ手段12が作成したエラー画面、検索画面、すなわち各画面のWEBページは、WEBページ送信手段11によってWEBページ表示手段21に送信される。
v)検索空間マップサーバ1がクライアント2から検索処理要求を受信した場合の処理動作
図18は、検索処理時の検索空間マップ手段12の動作を説明するためのフローチャートである。
WEBページ送信手段11がWEBページ表示手段21から検索処理要求を受信すると、検索空間マップ手段12が起動する。すると、検索空間マップ手段12は、仮想検索空間の検索(S1810)およびレポートファイル18の検索(S1820)を並列的に行う。なお、ここで「並列的」とは、例えば、まずレポートファイル18の検索(S1820)を行い、次に仮想検索空間の検索(S1810)を行うのでなく、例えばレポートファイル18の検索(S1820)と仮想検索空間の検索(S1810)それぞれに対応したスレッドを作成することにより、レポートファイル18の検索(S1820)と仮想検索空間の検索(S1810)が、それぞれ独立に行われることを意味する。
なお、検索結果としては、図11に示されるように、まず今回の実際の検索結果(操作者(ユーザ)がキーワードを入力して検索が実行されて得られた結果)が表示されるので、まず該当する仮想検索空間における検索を実行し、「レポート」の検索結果切り替えボタン(G102)が操作者によってクリックされたときにレポートファイルの検索を実行するようにしてもよい。レポートファイルの検索は検索空間マップサーバ1自身の記憶装置16に記憶されたレポートファイル18を対象にして実行される検索なのでLAN9で送受信が行われることなく、システムにおける負荷が実際の検索空間に対するものよりも極めて小さいのでこのようにしても応答時間の問題はほとんど発生しない。
仮想検索空間の検索処理(S1810)は、次のように実行される。つまり、検索空間マップ手段12は、検索処理要求を送信したWEBページ表示手段21のクライアント2についての検索管理レコード130(対象検索管理レコード130)から検索空間ID132(対象検索空間ID132)を取得する。そして、検索空間マップ手段12は、対象検索空間ID132と検索空間ID171が一致する検索空間定義レコード170の検索対象176およびWEBページ表示手段21から受信した検索キーワード等により、検索コマンドを作成し、検索手段31に送信する。
また、レポートファイル18の検索処理(S1820)は、次のように実行される。つまり、検索空間マップ手段12は、対象検索空間ID132と検索空間ID183が一致するレポートレコード180の検索結果184に、WEBページ表示手段21から受信した検索キーワードが含まれているかどうか判定し、検索結果184に検索キーワードが含まれているレポートレコード180の、レポートID181およびレポート名182を取得する。
検索空間マップ手段12は、検索手段31から検索結果データを受信すると、検索結果データを対象検索管理レコード130の検索空間検索結果135に設定する。また、S1820の処理においてレポートレコード180から取得したレポートID181およびレポート名182をレポート検索結果134に設定する(ステップS1830)。
次に、検索空間マップ手段12は、検索結果画面を作成し(S1840)、処理を終了する。ここで、検索結果画面を作成する場合(S1840)、検索空間マップ手段12は、検索手段31から受信した検索結果データに含まれるファイル名、URL等をWEBページに設定する。
なお、仮想検索空間の検索(S1810)については、検索空間マップ手段12は、検索コマンドを検索手段31に送信した後、所定時間(例えば1秒間)だけ検索手段31から検索結果データが送信されるのを待ち、所定時間を超えた場合には、通信回線の以上等によって検索が失敗したと判定すればよい。また、検索が失敗したと判定した場合、所定回数(例えば3回)だけ検索を再度行ってもよい。
さらに、所定回数の検索が失敗する等により、最終的に仮想検索空間の検索(S1810)が失敗したと判定した場合でも、レポートファイル18の検索(S1820)が成功した場合には、レポート検索結果134の設定を行い、ファイル名、URL等が設定されていないWEBページを仮想検索画面の検索結果画面としてとして作成してもよい。このようにすることで、クライアント2の操作者は検索画面の検索結果切替ボタン(G102)の「レポート」をクリックすることで、レポートファイル18についての検索結果データだけは見ることができる。
逆に、記憶装置16の障害等により、レポートファイル18の検索(S1820)が失敗し、仮想検索空間の検索(S1810)が成功した場合、検索空間検索結果135の設定を行い、検索手段31から受信した検索結果データに含まれるファイル名、URL等をWEBページに設定して検索画面を作成してもよい。このようにすることで、クライアント2の操作者は検索空間についての検索結果データだけは見ることができる。
一方、仮想検索空間の検索(S1810)又はレポートファイル18の検索(S1820)のいずれか一方でも失敗した場合に、検索空間マップ手段12は、エラー画面を作成して処理を終了してもよい。このようにすることで、クライアント2の操作者は検索画面が表示された場合、全ての検索処理が正常に行われたと判断することができる。
検索空間マップ手段12が作成したエラー画面、検索画面、すなわち各画面のWEBページは、WEBページ送信手段11によってWEBページ表示手段21に送信され、例えば表示装置27に、図11に示すような検索画面が表示される。
以上のように仮想検索空間の検索とレポートファイル18の検索を並列的に行うことで、仮想検索空間の検索とレポートファイル18の検索を順に行う場合に比べて、検索開始から両方の検索が終了するまでの処理時間を短くすることができる。もっとも、レポートファイル18の検索は検索手段31への検索コマンド送信および検索手段31からの検索結果データ受信という、大容量のデータ送受信を要することなく行うことができるため、一般に仮想検索空間の検索と比べて短時間で終了する。すなわち、レポートファイル18の検索に要する処理時間は、仮想検索空間の検索に要する処理時間に対して、一般には無視してよい程度である。従って、まず仮想空間の検索を行い、仮想空間の検索が正常に終了した後でレポートファイル18の検索を行うというように、順に検索しても良い。このようにすることで、仮想空間の検索が通信エラー等により正常に終了しなかった場合にはレポートファイル18の検索を行わないようにすることができ、無駄な検索処理を行わずにすむ。
ここで重要なことは、仮想検索空間の検索要求を受信した場合に仮想検索空間の検索のみを行い、レポートファイル18の検索要求を受信した場合にレポートファイル18の検索のみを行うといったように、仮想検索空間の検索とレポートファイル18の検索を別の検索要求タイミングで行うのではなく、WEBページ表示手段21から仮想検索空間の検索処理要求を受信した場合に、仮想検索空間の検索とレポートファイル18の検索を同時に並列に行う場合、順次連続的に行う場合も含めて(同じ検索要求タイミングで)検索処理を実施することを意味する。このようにすることで、仮想検索空間の検索結果と整合性の取れたレポートファイル18の検索結果を表示することが可能になる。
vi)検索空間マップサーバ1がクライアント2から検索空間検索結果取得処理要求又はレポート検索結果取得処理要求を受信した場合の処理動作
図19は、検索結果取得処理時の検索空間マップ手段12の動作を説明するためのフローチャートである。
WEBページ送信手段11がWEBページ表示手段21から検索処理要求を受信すると、検索空間マップ手段12が起動する。すると、検索空間マップ手段12は、WEBページ表示手段21から送信された処理要求が検索空間検索結果取得処理要求であるか否か判定し(S1910)、検索空間検索結果取得処理要求の場合(S1910でYESの場合)、検索空間についての検索結果画面を作成し(S1920)、検索空間検索結果取得処理要求でない場合、すなわちレポート検索結果取得処理要求である場合(S1910でNOの場合)、レポートファイル18についての検索結果画面を作成する(S1930)。
検索空間マップ手段12は、検索空間についての検索結果画面またはレポートファイル18についての検索結果画面を作成した後、処理を終了する。
検索空間についての検索結果画面を作成する場合(S1920)、検索空間マップ手段12は、検索空間検索結果取得処理要求を送信したWEBページ表示手段21のクライアント2についての検索管理レコード130から検索空間検索結果135(対象検索空間検索結果135)を取得し、対象検索空間検索結果135に含まれるファイル名、URL等をWEBページに設定する。
レポートファイル18についての検索結果画面を作成する場合(S1930)、検索空間マップ手段12は、検索空間検索結果取得処理要求を送信したWEBページ表示手段21のクライアント2についての検索管理レコード130からレポート検索結果134(対象レポート検索結果134)を取得し、対象レポート検索結果134に含まれるレポート名、レポートIDをWEBページに設定する。
検索空間マップ手段12が作成した検索(結果)画面、すなわち検索(結果)画面のWEBページは、WEBページ送信手段11によってWEBページ表示手段21に送信される。この結果、表示装置27には、WEBページ表示手段21が検索空間検索結果取得処理要求を送信した場合は、図11に示すような検索画面が表示され、WEBページ表示手段21がレポート検索結果取得処理要求を送信した場合は、図14に示すような検索画面が表示される。
図18を使用して説明したように、WEBページ送信手段11はWEBページ表示手段21から検索処理要求を受信すると、仮想検索空間とレポートファイル18の両方を同時に検索し、それぞれの検索結果を検索空間検索結果135とレポート検索結果134に記憶する。
そして、クライアント2の操作者が検索結果切替ボタン(G102)の「ファイル」をクリックすると仮想検索空間を改めて検索することなく、検索空間検索結果135に記憶された検索結果が表示され、「レポート」をクリックするとレポートファイル18を改めて検索することなく、レポート検索結果134に記憶された検索結果が表示される。
すなわち、検索条件(G101)が新たに指定された場合および検索条件(G101)が変更された場合にのみ仮想検索空間とレポートファイル18の検索を同時に行い、両方の検索結果を記憶しておくことにより、検索条件(G101)を変更せずに検索結果切替ボタン(G102)を操作する場合は、常に一定の検索結果を表示することができる。
従って、例えばクライアント2の操作者が検索条件(G101)を新たに指定して検索を行った後、別のクライアント2の操作者が検索対象ファイル47にファイルを追加したような場合でも、検索空間についての検索結果画面の表示内容は変わらない。従ってクライアント2の操作者は、例えば、検索空間についての検索結果画面とレポートファイル18についての検索結果画面をそれぞれスクロールさせつつ、検索結果切替ボタン(G102)によって表示画面を切り替えて両方の検索結果を見比べながら、検索結果を確認するといったことが可能になる。この場合、検索管理レコード130に、各検索結果画面についてのスクロール表示位置を設定しておけば、例えば、検索空間についての検索結果画面をスクロール後、レポートファイル18についての検索結果画面を表示し、再び検索空間についての検索結果画面を表示するといった場合に、スクロールした切り替え前の状態で表示することもできる。
vii)検索空間マップサーバ1がクライアント2からレポート作成処理要求を受信した場合の処理動作
図20は、レポート作成処理時の検索空間マップ手段12の動作を説明するためのフローチャートである。
WEBページ送信手段11がWEBページ表示手段21からレポート作成処理要求を受信すると、検索空間マップ手段12が起動する。すると、検索空間マップ手段12は、レポートレコード180を作成する(S2010)。具体的には、検索空間マップ手段12は、レポートID181に“report01”等、レポートレコード180を一意に識別可能なIDを設定し、レポート名182にWEBページ表示手段21から受信したレポート名を設定する。
また、検索空間マップ手段12は、レポート作成処理要求を送信したWEBページ表示手段21のクライアント2についての検索管理レコード130(対象検索管理レコード130)から検索空間ID132を取得し、検索空間ID183に設定する。
さらに、検索空間マップ手段12は、対象検索管理レコード130から検索空間検索結果135(対象検索空間検索結果135)を取得し、対象検索空間検索結果135に含まれるファイル名、URL等からWEBページ表示手段21から受信したURL等に対応するファイル名を取得する。そして、WEBページ表示手段21から受信したURL等および取得したファイル名を、WEBページ表示手段21から受信したURL等の数分、検索結果184に設定する。なお、WEBページ表示手段21から受信したURL等が0個である場合、すなわち、例えば図11の検索画面において、検索結果表示部(G103)のチェックボックスがアクティブにされずレポート作成ボタンがクリックされ、図13のレポート作成画面において作成ボタンがクリックされた場合、検索結果184にファイル名およびURL等が1つも設定されない。すなわち、この場合、当該検索結果184の繰り返し数nは0になる。
検索空間マップ手段12は、以上のようなデータを設定したレポートレコード180をレポートファイル18に記憶する。
次に、検索空間マップ手段12は、検索画面を作成し(S2020)、処理を終了する。検索画面の作成処理内容は、前述した検索空間選択処理(図17)の検索画面作成(S1730)と同じである。
検索空間マップ手段12が作成した検索画面、すなわち検索画面のWEBページは、WEBページ送信手段11によってWEBページ表示手段21に送信される。この結果、表示装置27には、図10に示すような検索画面が表示される。
viii)検索空間マップサーバ1がクライアント2からファイル内容表示処理要求又はレポート内容表示処理要求を受信した場合の処理動作
図21は、表示処理時の検索空間マップ手段12の動作を説明するためのフローチャートである。
WEBページ送信手段11がWEBページ表示手段21からファイル内容表示処理要求又はレポート内容表示処理要求を受信すると、検索空間マップ手段12が起動する。すると、検索空間マップ手段12は、WEBページ表示手段21から送信された処理要求がファイル内容表示処理要求であるか否か判定する(S2110)。
ファイル内容表示処理要求の場合(S2110でYESの場合)、検索空間マップ手段12は、WEBページ表示手段21から受信したURL等が示すファイルを取得する(S2120)。具体的には、例えばURL等が“Server1/vol1/doc/file3”である場合、LAN9を経由して、識別名が“Server1”であるファイルサーバ4の、論理ボリューム名が“vol1”である論理ボリュームの“/doc/file3”ファイルを取得する。そして、次に、当該ファイルの内容をWEBページに編集して表示画面を作成し(S2130)、処理を終了する。
なお、S2120及びS2130の処理は、検索空間マップ手段12が行うのでなく、WEBページ送信手段11が行ってもよい。この場合、WEBページ送信手段11は検索空間マップ手段12の起動に先立ち、WEBページ表示手段21から受信したURL等が所定の条件を満たすか(例えば“reportX”(Xは1桁以上の数値)であるか否か)を判定し、所定の条件を満たす場合には検索空間マップ手段12を起動し、一方、所定の条件を満たさない場合には通常のWEBサーバ機能により、WEBページ表示手段21から受信したURL等が示すWEBページを取得してWEBページ表示手段21に送信すればよい。
一方、ファイル内容表示処理要求でない場合、すなわちレポート内容表示処理要求である場合(S2110でNOの場合)、検索空間マップ手段12は、WEBページ表示手段21から受信したレポートIDとレポートID181が一致するレポートレコード180を取得し(S2140)、当該レポートレコード180の検索結果184に設定されているデータ、すなわちファイル名およびURL等をWEBページに編集して表示画面を作成し(S2150)、処理を終了する。なお、当該検索結果184の繰り返し数nが0の場合、すなわち検索結果184にファイル名およびURL等が1つも設定されていない場合は、ファイル名、URL等が設定されていない表示画面を作成されることになる。
検索空間マップ手段12が作成した表示画面、すなわち表示画面のWEBページは、WEBページ送信手段11によってWEBページ表示手段21に送信される。この結果、表示装置27には、WEBページ表示手段21がファイル内容表示処理要求を送信した場合は、図12に示すような表示画面が表示され、WEBページ表示手段21がレポート内容表示処理要求を送信した場合は、図15に示すような表示画面が表示される。
なお、以上の処理において、レポートレコード180に設定されている検索結果184を全てWEBページに編集すれば、クライアント2の操作者は、検索された全てのファイルのURL等を知ることができ、異なる操作者によって検索されたファイルの存在も知ることができる。このようにすることは、例えば開発プロジェクト全体で情報を共有するという観点では望ましいが、一方、アクセス権限のないファイルの存在場所も知られてしまうことにつながる。従ってセキュリティを重視するのであれば、S1540の処理において、各検索結果184についてクライアント2の操作者がURL等についてアクセス権限を持っているか判定し、アクセス権限を持っていない場合には当該検索結果184のファイル名、URL等をWEBページに設定しないようにすればよい。
また、この場合、ファイル名を設定し、URL等は設定しないようにしてもよい。このようにすれば、当該ファイルの存在場所を秘密にしつつ、検索目的等に関連するファイルが存在することを示すことができるので、クライアント2の操作者が当該ファイルについてのアクセス権限を持っている者から情報を得ることが可能になる。
ix)検索空間マップサーバ1がクライアント2からログアウト処理要求を受信した場合の処理動作
図22は、ログアウト処理時の検索空間マップ手段12の動作を説明するためのフローチャートである。
WEBページ送信手段11がWEBページ表示手段21からログアウト処理要求を受信すると、検索空間マップ手段12が起動する。すると、検索空間マップ手段12は、ログイン処理要求を送信したWEBページ表示手段21のクライアント2について、検索管理レコード130を削除し、ログアウト画面を作成して(S2210)、処理を終了する。
検索空間マップ手段12が作成したログアウト画面、すなわちログアウト画面のWEBページは、WEBページ送信手段11によってWEBページ表示手段21に送信され、表示装置27に表示される。
(2)第2の実施形態
図23は、本発明の第2の実施形態による検索空間マッピングシステム(検索システム)200の概略構成を示す図である。
検索空間マッピングシステム200は、検索空間マップサーバ1と、検索サーバ3と、ファイルサーバ4と、クライアント2(以下「サーバ等」という。)と、を備え、それらがLAN9等の有線又は無線の通信回線により互いに通信可能に接続されたシステムとなっている。第2の実施形態における各サーバ等の構成は第1の実施形態と同じなので、図23では記載を省略している。また、各サーバ等の機能、動作も第1の実施形態と同じである。
第2の実施形態は、ファイルサーバ4の一部が検索空間マップサーバ1と異なるLANセグメント上に存在する点が、第1実施形態と異なっている。
このように、検索空間マップサーバ1、検索サーバ3、ファイルサーバ4、およびクライアント2はさまざまな構成の通信回線によって接続することが可能である。
(3)第3の実施形態
図24は、本発明の第3の実施形態による検索空間マッピングシステム(検索システム)300のシステム構成図である。
検索空間マッピングシステム300は、検索空間マップサーバ1と、検索サーバ3(3aおよび3b)と、ファイルサーバ4と、クライアント2(以下「サーバ等」という。)と、を備え、LAN9、インターネット9a等の有線又は無線の通信回線により互いに通信可能に接続されたシステムとなっている。第3の実施形態における各サーバ等の構成も第1の実施形態と同じなので、図24では記載を省略している。また、各サーバ等の機能、動作も後述する点を除き、第1の実施形態と同じである。
第3の実施形態は、検索サーバ3およびファイルサーバ4の一部が検索空間マップサーバ1と異なるLANセグメント上に存在し、各LANセグメントがインターネット9aによって互いに通信可能に接続されている点が、第1の実施形態と異なっている。
また、第3の実施形態においては、検索空間マップ手段12が仮想検索空間を検索する場合(図18のS1810)の処理が、第1の実施形態と異なる。すなわち、第3の実施形態においても、第1の実施形態と同じく、検索処理要求を送信したWEBページ表示手段21のクライアント2についての検索管理レコード130(対象検索管理レコード130)から検索空間ID132(対象検索空間ID132)を取得し、対象検索空間ID132と検索空間ID171が一致する検索空間定義レコード170の検索対象176およびWEBページ表示手段21から受信した検索キーワード等により、検索コマンドを作成するが、その後、第3の実施形態においては、検索コマンドを複数の検索手段31に送信する。
このとき、各検索手段31(検索プログラム)が同じプログラムである等、同じ検索コマンドを理解可能ならば、各検索手段31に送信する検索コマンドは同一にすればよい。このようにすることで、検索空間マップ手段12の機能をより平易にすることができる。
一方、各検索手段31(検索プログラム)が異なるプログラムである等、各検索手段31が同じ検索コマンドを理解不可能ならば、各検索手段31にそれぞれ異なる検索コマンドを送信する必要がある。この場合、図24には図示していないが、例えば検索空間マップサーバ1の記憶装置16に、各検索手段31ついての検索コマンド作成ルールを記憶しておき、検索空間マップ手段12はこの検索コマンド作成ルールを参照して検索コマンドを作成すればよい。例えば、検索対象176に“(Keyword=‘projectX’and (Filetype=‘doc’ or ‘txt’)”が設定されており、検索サーバ3aの検索手段31aは、検索キーワード、ファイル拡張子による検索機能をいずれも備えているが、検索サーバ3bの検索手段31bは、検索キーワードによる検索機能を備えているもののファイル拡張子による検索機能を備えていない場合、検索手段31aについての検索コマンドは“SearchFile (Keyword=‘projectX’and (Filetype=‘doc’ or ‘txt’)) ”(‘projectX’というキーワードを含み、かつファイル拡張子が‘doc’または‘txt’であるファイルを検索)とし、一方、検索手段31bについての検索コマンドは“SearchFile (Keyword=‘projectX’) ”(‘projectX’というキーワードを含むファイルを検索)とすればよい。そして、検索手段31bから受信した検索結果データのうち、ファイル拡張子が‘doc’または‘txt’であるファイルを選択すればよい。
各検索手段31による検索も並列的に行うことができる。なお、ここで「並列的」とは、1つの検索手段31に検索コマンドを送信し、当該検索手段31から検索結果データを受信するまで待って、受信後にまた別の検索手段31に検索コマンドを送信するのでなく、例えば複数の検索手段31それぞれに対応したスレッドを作成することにより、各検索手段31に検索コマンドを送信し、各検索手段31から検索結果データを受信するといったように、各検索手段31による検索がそれぞれ独立に行われることを意味する。
さらに、通信回線の異常等により、ある検索手段31の検索が失敗した場合でも、その他の検索手段31の検索が成功した場合には、全体として仮想検索空間の検索(S1810)が成功した場合、検索空間検索結果135の設定(S1830)を行ってもよい。このようにすることで、全ての検索手段31の検索が失敗しない限り、クライアント2の操作者は検索空間についての検索結果データを見ることができる。
一方、検索手段31の検索のいずれか1つでも失敗した場合に、検索空間マップ手段12は、エラー画面を作成して処理を終了してもよい。このようにすることで、クライアント2の操作者は検索画面が表示された場合、全ての検索処理が正常に行われたと判断することができる。
以上の通り、本発明に係る検索空間マッピングシステムにより、組織内の1台あるいは複数台のコンピュータのみならず、インターネット上の各コンピュータから、検索目的等に合った本当に必要なファイルを検索することが可能になる。
(4)その他
なお、本発明は、実施形態の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
また、実施の形態の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ(又はCPUやMPU)が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。