(57)【要約】【課題】  作業者が複数のファイルを操作する場合に、当該操作に必要または当該操作の参考となるであろうファイルをレコメンドする。【解決手段】  ファイルを識別する情報、ファイルに対する操作を識別する情報および前記操作の実行に必要な関連ファイルを識別する情報を少なくとも含む操作指示を取得する操作指示取得手段と、  取得した前記操作指示の履歴である操作履歴情報を取得する操作履歴取得手段と、  複数のファイルに関する操作指示を取得した場合に、それぞれのファイルに関する前記操作履歴情報に共通する前記関連ファイルが存在するかどうかを解析し、共通する前記関連ファイルを特定する共通性解析手段と、  前記共通性解析手段によって特定された共通する前記関連ファイルを出力する出力手段と、を有する情報処理装置。【選択図】  図２
2015162170.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを識別する情報、ファイルに対する操作を識別する情報および前記操作の実行に必要な関連ファイルを識別する情報を少なくとも含む操作指示を取得する操作指示取得手段と、
取得した前記操作指示の履歴である操作履歴情報を取得する操作履歴取得手段と、
複数のファイルに関する操作指示を取得した場合に、それぞれのファイルに関する前記操作履歴情報に共通する前記関連ファイルが存在するかどうかを解析し、共通する前記関連ファイルを特定する共通性解析手段と、
前記共通性解析手段によって特定された共通する前記関連ファイルを出力する出力手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記共通性解析手段が、共通する関連ファイルが存在するかを解析するときに、
操作指示を取得したファイルに関する操作履歴情報が既に抽出されているかどうかを確認し、
操作指示を取得したファイルに関する操作履歴情報が既に抽出されている場合に、前記抽出されている操作履歴情報を解析の対象とすることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記ファイルに対する操作は操作の内容に従って優先度が定められており、
前記共通性解析手段によって特定された共通する前記関連ファイルが複数存在する場合に、それぞれのファイルに対する操作の優先度に従って前記関連ファイルの優先度を決める前記優先度解析手段をさらに有することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
ファイルを識別する情報、ファイルに対する操作を識別する情報および前記操作の実行に必要な関連ファイルを識別する情報を少なくとも含む操作指示を取得する操作指示取得工程と、
取得した前記操作指示の履歴である操作履歴情報を取得する操作履歴取得工程と、
複数のファイルに関する操作指示を取得した場合に、それぞれのファイルに関する前記操作履歴情報に共通する前記関連ファイルが存在するかどうかを解析し、共通する前記関連ファイルを特定する共通性解析工程と、
前記共通性解析工程によって特定された共通する前記関連ファイルを出力する出力工程と、
を有することを特徴とする情報処理方法。
【請求項５】
コンピュータを、請求項１〜３のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルに対する操作履歴情報を用いて、ファイルを管理する情報処理装置、情報処理方法およびコンピュータプログラムに関する。特に作業者が次に操作することを望むであろうファイルをレコメンドする技術に関する。
【背景技術】
【０００２】
オフィスにおけるファイルは増大の一途をたどっており、作業に必要なファイルを探すことは作業者にとって負担であり、作業時間を増加させる原因となっている。従来の検索方法として、作業者が指定したキーワードを含むファイルを検索するものがある。しかしながら、同一キーワードを持つファイルが大量に存在したり、作業者の記憶があいまいで、不適切なキーワードを指定したりすると、必要なファイルを探し出すことができなかった。そこで、作業者の負担を軽減するため、作業中のファイルに関連するファイルを提示するための技術が、特許文献１及び特許文献２に開示されている。
【０００３】
特許文献１では、参照、派生、共起というような文書に対する操作履歴情報を記憶し、関連性を解析しておくことで、編集対象の文書に関連する文書を解析結果から見つける技術が開示されている。
また、特許文献２では、文書作成時に行われた操作内容から、関連する文書のリンクを記憶しておき、文書が次に閲覧された時に、記憶したリンクから関連する文書を表示する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３２１２９号
【特許文献２】特開２０１１−２８４４７号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１、特許文献２に記載の方式は、単体の文書に対する操作履歴情報を記憶して関連する文書をレコメンドしている。したがって、複数の文書に共通した関連する文書をレコメンドするためには、作業者が個々の文書それぞれに関連する文書の中から所望の文書を探し出す必要があった。
本発明は、かかる問題点に鑑みなされたものであり、作業者が複数の文書を選択した場合に、選択した文書の関連性を解析し、作業者が所望の文書をレコメンドする技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明の情報処理装置は、
ファイルを識別する情報、ファイルに対する操作を識別する情報および前記操作の実行に必要な関連ファイルを識別する情報を少なくとも含む操作指示を取得する操作指示取得手段と、
取得した前記操作指示の履歴である操作履歴情報を取得する操作履歴取得手段と、
複数のファイルに関する操作指示を取得した場合に、それぞれのファイルに関する前記操作履歴情報に共通する前記関連ファイルが存在するかどうかを解析し、共通する前記関連ファイルを特定する共通性解析手段と、
前記共通性解析手段によって特定された共通する前記関連ファイルを出力する出力手段と、を有する。
【発明の効果】
【０００７】
以上説明したように本発明によれば、作業者が複数のファイルを選択した場合に、選択したファイルの関連性を解析し、作業者に所望のファイルをレコメンドする技術を提供することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】実施形態１にかかる文書レコメンドシステムの概略図である。
【図２】実施形態１の文書レコメンドシステムの機能構成を説明する図である。
【図３】実施形態１における操作履歴情報を説明するための図である。
【図４】実施形態１における優先度情報の一例を示す図である。
【図５】実施形態１における操作履歴情報の取得処理のフローチャートである。
【図６】実施形態１におけるレコメンド処理のフローチャートである。
【発明を実施するための形態】
【０００９】
本発明の情報処理装置は、
ファイルを識別する情報、ファイルに対する操作を識別する情報および前記操作の実行に必要な関連ファイルを識別する情報を少なくとも含む操作指示を取得する操作指示取得手段と、
取得した前記操作指示の履歴である操作履歴情報を取得する操作履歴取得手段と、
複数のファイルに関する操作指示を取得した場合に、それぞれのファイルに関する前記操作履歴情報に共通する前記関連ファイルが存在するかどうかを解析し、共通する前記関連ファイルを特定する共通性解析手段と、
前記共通性解析手段によって特定された共通する前記関連ファイルを出力する出力手段と、
を有する。
【００１０】
「ファイルを識別する情報」とは例えばファイルの名前である。「ファイルに対する操作を識別する情報」とは例えば「複製」、「コピー」、「参照」などの操作の名前である。「操作の実行に必要な関連ファイルを識別する情報」とは例えばファイルを複製するときの複製元のファイルのファイル名、第１のファイル内の文字列を第２のファイル内にコピーするときの第１のファイル（コピー元のファイル）のファイル名などである。
操作指示は、「ファイルを識別する情報」、「ファイルに対する操作を識別する情報」および「操作の実行に必要な関連ファイルを識別する情報」を少なくとも含む。
【００１１】
（第１の実施形態）
＜システム全体構成＞
はじめに、本実施形態におけるシステムの全体構成例を図１（Ａ）に示す。本実施形態におけるシステムは作成装置１１、及び情報処理装置１２から構成される。
作成装置１１は、操作者からの操作指示に応じて文書を作成し、作成した文書を出力する。特に、本実施形態においては、文書に加え当該文書に関連する文書を特定可能な操作履歴情報を生成し、文書と共に出力する。また、操作者による操作指示を情報処理装置１２に送付し、情報処理装置１２からレコメンド情報を受信すると、受信したレコメンド情報に基づいて作業者に文書をレコメンドする。
【００１２】
情報処理装置１２は、前段の作成装置１１から文書が入力されると、文書、及び文書に付加された操作履歴情報を記録する。また、作成装置１１から操作指示が入力され、記録された操作履歴情報を解析することによって、レコメンドする文書を決定し、レコメンド情報を作成装置１１に出力する。
作成装置１１、情報処理装置１２はインターネットなどのネットワークによって接続しておき、各種データを交換可能にしておいてもよい。或いは、出力時に各種データをリムーバブルメディアなどの記憶媒体に記録し、各種データを交換するようにしてもよい。
【００１３】
＜作成装置、及びレコメンド装置の基本構成＞
次に図１（Ｂ）を用いて、本実施形態に適応可能なホストコンピュータについて説明する。図１（Ｂ）は本実施形態に係る作成装置１１、及び情報処理装置１２として機能するホストコンピュータの基本構成を示すと共に、その周辺機器との関係を示す図である。
同図において、ホストコンピュータ２１は、例えば一般に普及しているパーソナルコンピュータであり、ＨＤ２６、ＣＤ２７、及びＤＶＤ２８などに蓄積したり、或いは蓄積されている画像データ等をモニタ２２に表示したりすることが可能である。更に、これらの画像データは、ＮＩＣ２９などを用いることによってインターネットなどを介して配布させることが可能である。
また、ユーザからの各種指示等は、ポインティングデバイス２１１、及びキーボード２１２からの入力により行われる。ホストコンピュータ２１の内部では、バス２１４により後述する各機能ブロックが接続され、種々のデータの受け渡しが可能である。
【００１４】
２２はホストコンピュータ２１からの種々の情報を表示することができるモニタである。２３はホストコンピュータ２１内の各部の動作を制御、或いはＲＡＭ２５にロードされたプログラムを実行することができるＣＰＵである。２４はＢＩＯＳやブートプログラムを記憶しているＲＯＭである。２５はＣＰＵ２３にて処理を行うために一時的にプログラムや処理対象の画像データを格納しておくＲＡＭであり、ここにＯＳやＣＰＵ２３が後述の各種処理を行うためのプログラムがロードされることになる。
【００１５】
２６はＲＡＭ等に転送されるＯＳやプログラムを格納したり、装置が動作中に画像データを格納したり、読出すために使用されるハードディスク（ＨＤ）である。２７は、外部記憶媒体の一つであるＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗなど）に記憶されたデータを読み込み或いは書き出すことができるＣＤ−ＲＯＭドライブである。２８も、ＣＤ−ＲＯＭドライブ２７と同様にＤＶＤ−ＲＯＭからの読み込み、ＤＶＤ−ＲＡＭへの書き出しができるＤＶＤ−ＲＯＭ（ＤＶＤ−ＲＡＭ）ドライブである。
なお、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等に画像処理用のプログラムが記憶されている場合には、これらプログラムをＨＤ２６にインストールし、必要に応じてＲＡＭ２５に転送されるようになっている。
【００１６】
２１０は、ＲＡＭ２５、ＨＤ２６、ＣＤ−ＲＯＭ２７、ＤＶＤ２８などに記憶されている画像データを、インターネットなどのネットワークに接続するＮＩＣ２９にホストコンピュータ２１を接続するためのＩ／Ｆである。Ｉ／Ｆ２１０を介してホストコンピュータ２１は、インターネットへデータを送信したり、インターネットからデータを受信したりする。２１３は、ホストコンピュータ２１にポインティングデバイス２１１やキーボード２１２を接続するためのＩ／Ｆで、Ｉ／Ｆ２１３を介してポインティングデバイス２１１やキーボード２１２から入力された各種の指示がＣＰＵ２３に入力される。
【００１７】
＜作成装置の構成＞
以下、図２（Ａ）を用いて本実施形態に適用される作成装置１１の機能構成を説明する。
図２（Ａ）に示すように、本実施形態における作成装置１１は、操作指示取得部３１、特定部３２、生成部３３、操作履歴取得部３４、及び出力部３５から構成される。
操作指示取得部３１は作業者からの操作指示や後述する情報処理装置１２からのレコメンド情報が入力され、入力された内容に応じて操作指示を生成部３３及び出力部３５へ、レコメンド情報を出力部３５へそれぞれ出力する。特定部３２は、生成部３３を利用して文書を作成している操作者を特定する。特定部３２は、ＯＳのログインシステムと連携して、ログインユーザを特定し、ユーザがログイン中はそのユーザが文書を作成しているものとしてログインユーザを操作者と決定する。
【００１８】
なお、本実施形態では、ＯＳのログインシステムと連携する手法について説明したが、操作者が特定可能であれば、例えば、文書の作成時に後述の操作履歴取得部３４において操作者を指定するようにしてもよい。生成部３３は、作成装置１１上で動作する一般に普及されている文書作成ソフトのことであり、文書の作成者である操作者はこの生成部３３を利用して文書を作成する。操作履歴取得部３４は、生成部３３において文書を作成する際の操作履歴情報を取得する。
【００１９】
ここで、本実施形態において操作履歴取得部３４が取得する操作履歴情報について、図３（Ａ）を用いて説明する。
図３（Ａ）は本実施形態における、操作履歴情報を示した図である。ここでは、例えば操作者であるＢ氏が文書１００を作成したときに、Ａ氏が作成した文書１を参照した場合の例を示す。図３（Ａ）に示すように、本実施形態における操作履歴情報５１には、日時、操作、文書名、操作情報、操作者が記録される。
【００２０】
ここで、操作とは文書を作成する際に行う操作を表しており、例えばコピー、複製、参照といった操作である。「複製」はファイル（例えば、文書ファイル）の全体を丸ごとコピーすること、「コピー」はファイルに含まれる一部のデータをコピーすること、「参照」は作成時に同時にファイルを開くことを示す。操作履歴情報５１の例では、操作は参照であることがわかる。
また、各操作に応じて関連文書の視点でも操作履歴情報５１を取得する。例えばコピー操作を行った場合、コピーされた関連文書の操作履歴情報として被コピーの操作履歴情報を取得する。本実施形態における操作履歴情報５１では文書１の観点で被参照に関する操作履歴情報を取得している。
【００２１】
なお、本実施形態では、操作された関連文書の視点でも操作履歴情報を取得したが、操作対象である文書の視点のみで操作履歴情報を取得するようにしてもよい。生成部３３を利用して文書を作成すると、操作を行った日時、操作対象である文書の文書名、操作情報、操作者が記録される。ここで操作情報とは、操作に付随する情報であって、例えば、操作がコピーの場合はコピーした容量、コピー元である関連文書名、関連文書の作成者といった情報である。
【００２２】
例えば、図３（Ａ）の１行目（「Ｎｏ」列の値が「１」のレコード）を例に説明すると、２０１３年５月２５日の１１：００にＢ氏は、Ａ氏が作成した文書１を参照して、文書１００を作成したことを表している。本実施形態では、「操作」列には「参照」、「複製」または「コピー」のいずれかが記録され、「操作情報」列は「容量」列、「関連文書名」列および「関連文書作者」列からなるとして説明する。
また、文書に関連する操作であれば例えば図３（Ｂ）に示す操作、操作情報の組合せを利用してもよい。
操作履歴取得部３４で操作履歴情報を取得し、文書の作成が完了すると、出力部３５によって生成した文書が出力される。このとき、生成部３３で生成された文書に操作履歴取得部３４で取得された操作履歴情報が関連付けられる。
操作履歴情報は後述する情報処理装置１２に送られ、情報処理装置１２が保持する記録部４３に、データベースとして対象文書の識別情報と共に操作履歴情報を記録する。
【００２３】
出力部３５は、操作指示取得部３１から入力された操作指示が入力され、入力された操作指示を情報処理装置１２へ出力する。ここで入力される操作指示とは、例えば情報処理装置１２内の文書を開く、或いは複製するといった操作指示を示す。また、操作指示取得部３１からレコメンド情報が入力された場合、レコメンド情報に応じた文書をレコメンドする。
レコメンド情報とは、レコメンドする文書に関連する情報であって、例えばレコメンドする文書そのものであってもよいし、レコメンドする文書が保持されている場所を示すＵＲＬ等のポインタ情報であってもよい。
【００２４】
＜レコメンド装置の構成＞
以下、図２（Ｂ）を用いて本実施形態に適用される情報処理装置１２の機能構成を説明する。
図２（Ｂ）に示すように、本実施形態における情報処理装置１２は、操作指示取得部４１、操作履歴取得部４２、記録部４３、共通性解析部４４、優先度解析部４５、出力部４６から構成される。
【００２５】
操作指示取得部４１は、作成装置１１で生成された文書、操作履歴情報、及び操作指示が入力され、入力された内容を操作履歴取得部４２へ出力する。操作履歴取得部４２は、操作履歴情報を抽出し、抽出した操作履歴情報を記録部４３や共通性解析部４４へ出力する。記録部４３は入力された操作履歴情報や文書をデータベースとして記録しておく。
記録部４３は例えば図３（Ｃ）に示すような操作履歴情報を記録してく。
操作履歴取得部４２は、操作指示取得部４１から文書が入力された場合、入力された文書に関連付けられた操作履歴情報を抽出し、入力された文書と抽出した操作履歴情報を記録部４３へ出力する。
操作指示取得部４１から操作履歴情報だけが入力された場合、入力された操作履歴情報を記録部４３へ出力する。
【００２６】
また、操作指示取得部４１から操作者の操作指示が入力された場合、操作指示に応じて記録部４３に保持された操作履歴情報を抽出する。
例えば、文書１を参照する操作が操作指示取得部４１に入力されたときに、図３（Ｃ）に示す操作履歴情報７１が記録部４３に既に記録されていた場合について説明する。操作指示として文書１の参照が入力されているため、操作履歴取得部４２は記録部４３に記録されている操作履歴情報７１から文書１に関するレコードを抽出する。この場合、文書名列に「文書１」という値が記録されているレコードは「Ｎｏ」列の値が「２」、「６」または「１０」のレコードであることから、これらのレコードを抽出し、共通性解析部４４へ出力する。
【００２７】
＜共通性解析部＞
次に共通性解析部４４について説明する。共通性解析部４４は抽出された操作履歴情報が入力され、操作履歴情報を解析し、解析結果としてレコメンド情報を優先度解析部４５へ出力する。共通性解析部４４は、まず操作履歴情報が入力されると既にレコメンドされている文書があるかどうかを確認する。レコメンドされている文書があるかどうかはレコメンドテーブルにレコメンド文書が存在するかどうかで判断する。
【００２８】
レコメンドテーブルの一例を図３（Ｄ）に示す。同図に示すように、レコメンドテーブルは、「対象文書」列、「レコメンド文書」列及び「保護」列を含む。「レコメンド文書」列には、現時点でレコメンドされている文書が記録されている。「対象文書」列には、どのような対象文書からレコメンド文書が特定されたかが記録されている。「保護」列の値が「あり」の場合は、現在レコメンドしている文書をレコメンドし続けることを示している。「保護」列の値の詳細については後述する。
【００２９】
レコメンドテーブルは「参照」などの操作が行われたときに順次作成されるとしても良く、またレコメンドテーブルが必要になったときに作成されるとしても良い。
操作が行われるごとに順次作成されるとは、例えば、以下のとおりである。
図３（Ｃ）の操作履歴情報７１の「Ｎｏ」列が「１」のレコードの「日時」列に記録されている日時に、図３（Ｄ）のレコメンドテーブル８１の１行目のレコードの「レコメンド文書」列に「文書１００」が記録される。
そして、操作履歴情報７１の「Ｎｏ」列が「５」のレコードの「日時」列に記録されている日時に、図３（Ｄ）のレコメンドテーブル８１の２行目のレコードの「レコメンド文書」列に「文書３」が記録される。
さらに、操作履歴情報７１の「Ｎｏ」列が「９」のレコードの「日時」列に記録されている日時に、図３（Ｄ）のレコメンドテーブル８１の３行目のレコードの「レコメンド文書」列に「文書４」が記録される。
【００３０】
必要になった際に作成されるとは、例えば、以下のとおりである。
文書１から文書３を複製したとき（操作履歴情報７１の「Ｎｏ」列が「５」のレコードの「日時」列に記録されている日時）に、「Ｎｏ」列が「５」のレコードの「関連文書名」列の値（「文書１」）と同じ値が「関連文書名」列に記憶されているレコードを探す。
「文書１」が「関連文書名」列に記憶されているレコードとして、「Ｎｏ」列が「１」のレコードが見つかるため、このときにレコメンドテーブル８１の１行目のレコードの「対象文書」列に「文書１」が記録され、「レコメンド文書」列に「文書４」が記録される。
【００３１】
レコメンドテーブルの「レコメンド文書」列に値が記録されていない場合、つまりレコメンドされている文書がない場合は、操作履歴情報から関連文書を特定し、特定した関連文書をレコメンド文書としてレコメンド情報を優先度解析部４５へ出力する。ここでは、前述の操作履歴情報７１が記録部４３に記憶されている状態で、文書１に関する操作履歴情報が入力された場合について説明する。
まずは、レコメンドテーブルを参照し、レコメンドテーブルにレコメンド済みの文書があるかどうかを確認する。
【００３２】
レコメンドテーブル８１ではレコメンド文書が存在するが、ここでは、レコメンドテーブルの「レコメンド文書」列に値がない場合に関して説明する。
「レコメンド文書」列に値がない場合、入力された操作履歴情報の「関連文書名」列の値が、入力された文書の文書名と一致するレコードを抽出し、当該レコードの「文書名」列の値を「レコメンド文書」列の値とするレコメンド情報を優先度解析部４５へ出力する。
つまり、操作履歴情報７１中で、「関連文書名」列の値が「文書１」であるレコード（「Ｎｏ」列の値が「１」、「５」、「９」であるレコード）を抽出する。そして、これらのレコードの「文書名」列の値（「文書１００」、「文書３」、「文書４」）を「レコメンド文書」列の値とするレコメンド情報を優先度解析部４５へ出力する。
【００３３】
次にレコメンドテーブルの「レコメンド文書」列に値がある場合について説明する。
共通性解析部４４は、例えばレコメンドテーブル８１のようなレコメンドテーブルの「レコメンド文書」列に値が存在することを確認すると、レコメンドテーブルの「レコメンド文書」列の文書の操作履歴情報と入力された操作履歴情報との共通性を確認する。操作履歴情報が共通性を有するとは、例えば「関連文書名」列の文書名が共通していることを意味する。
関連文書が共通する文書が存在する場合は、その共通する文書のみをレコメンド文書としてレコメンド情報を優先度解析部４５へ出力する。
なお、本実施形態では操作履歴情報の共通性を「関連文書名」列の値に基づいて判断するとして説明するが、「関連文書名」列以外の「関連文書作者」列や「操作者」列の値に基づいて共通性を解析するようにしてもよい。また、解析したい共通性の項目を操作者が指定し、操作者が意図する項目で共通性を解析するようにしてもよい。
【００３４】
ここで、操作者が文書１を参照し、次に同じ操作者が文書２を参照した場合を例として説明する。前述したように操作者が文書１を参照した場合、文書１００、文書３、文書４がレコメンドされる。
なお、後述する優先度解析部４５の解析結果によって、レコメンドされる文書が少なくなることもあるが、ここでは文書１００、文書３、文書４がレコメンドされる場合について説明する。
文書１００、文書３、文書４がレコメンドされる場合、レコメンドテーブル８１の「レコメンド文書」列には、文書１００、文書３、文書４が存在することになる。操作者が文書１を参照し、次に文書２を参照すると、文書２に関連する操作履歴情報が共通性解析部４４に入力される。前述の操作履歴情報７１を例とすると、「文書名」列に「文書２」が記録されているレコードは「Ｎｏ」列の値が「４」、「８」、「１２」のレコードである。これらのレコードが共通性解析部４４に入力される。
【００３５】
ここで、レコメンドテーブル８１を参照すると、既に「レコメンド文書」列に既に「文書１００」、「文書３」、「文書４」が存在するため、共通性解析部４４は操作履歴情報の共通性を確認する。ここでは関連文書名に関する共通性を確認することとして説明する。前記のように、操作履歴情報７１の「文書名」列に「文書２」が記録されているレコードは「Ｎｏ」列の値が「４」、「８」、「１２」のレコードであるから、これらのレコードの「関連文書名」列から「文書２００」、「文書３」、「文書４」が抽出できる。
これらの文書とレコメンドテーブルに存在する文書とで共通する文書は文書３と文書４であることが確認できる。
【００３６】
したがって、文書１００はレコメンド対象から除外し、文書３、文書４をレコメンド文書としてレコメンド情報を優先度解析部４５へ出力する。
共通性がない場合は、レコメンドする文書が存在しないと判断し、その旨を出力部４６へ出力する。
なお、文書１００が共通のレコメンド文書ではないことから、レコメンド文書から除外されたが、操作者がレコメンドテーブルの「保護」列に「あり」と設定した場合は、レコメンド対象として保護することも可能である。「保護」列の値を「あり」または「なし」のいずれとするかは、レコメンド時に操作者がラジオボタン、チェックボックス等の入力インタフェースを利用して、選択するようにする。このようにしてレコメンド文書を特定し、レコメンド情報として優先度解析部４５へ出力する。
【００３７】
＜優先度解析部＞
優先度解析部４５は共通性解析部４４からレコメンド情報が入力され、レコメンドする優先度を決定し、最終的にレコメンドする文書に関するレコメンド情報を出力部４６へ出力する。
まず、優先度解析部４５は優先度機能が有効になっているかどうかを確認する。優先度機能とは、レコメンド文書が複数存在する場合にそれらの文書に優先度をつけてレコメンドするかどうかを決定するための機能であり、操作者が有効／無効の設定を行うことができる。優先度機能によりレコメンド文書に優先度をつけることによって、レコメンド文書が大量に存在する場合に、操作者がそれら大量のレコメンド文書の中から所望の文書を探し出す手間を軽減することができる。
優先度機能が無効になっている場合は、全てのレコメンド文書を最終的なレコメンド文書とするレコメンド情報を出力部４６へ出力する。
優先度機能が有効になっている場合は、優先度解析部４５は共通性解析部４４から受け取ったレコメンド文書が複数であるかどうかを確認する。レコメンド文書が複数ではない場合、そのレコメンド文書に関するレコメンド情報をそのまま出力部４６へ出力し、最終的なレコメンド文書として決定する。レコメンド文書が複数存在する場合は、レコメンド文書の優先度を解析する。レコメンド文書の優先度は、操作履歴情報の各項目を比較することによって決定する。
【００３８】
以下、優先度の決定方法について図４を用いて説明する。図４に示す優先度情報９１は優先度を決定するための情報を示した図である。図４に示すように、例えば操作に関して優先度をつける場合、「複製」という操作のように操作元の文書と当該操作によって生成された文書との内容の関連性（類似性）が強くなる操作の優先度を高く設定する。
前述の文書１、文書２を参照した例では、文書３、文書４がレコメンドされることとなった。操作履歴情報７１の「Ｎｏ」列が「５」のレコード及び「６」のレコードが示すように、文書３は文書１から複製され、「Ｎｏ」列が「７」のレコード及び「８」のレコードが示すように、文書３は文書２からコピーされている。
これに対し、「Ｎｏ」列が「９」のレコード及び「１０」のレコードが示すように、文書４は文書１に参照され、「Ｎｏ」列が「１１」のレコード及び「１２」のレコードが示すように、文書４は文書２に参照されているにとどまっている。
そして、優先度情報９１に示すように、「複製」および「コピー」という操作は、「参照」という操作よりも優先度が高い。
これらの解析結果から、文書３を優先的にレコメンドするようにする。
【００３９】
また図４の優先度情報９１は、操作の内容が同じであった場合についても規定する。同図は、コピーの場合はよりコピーの容量が大きい場合に優先度を高くし、参照の場合はより参照時間が長い場合に優先度を高くしてレコメンドすることを示している。
本実施形態では、図４に示す観点で優先度を決定するようにしたが、この手法によらず優先順位をつけることが可能であれば、例えばレコメンドされた回数や関連文書作者によって優先度をつけるようにしてもよい。
【００４０】
優先順位が決定した場合、優先順位と合わせてレコメンド文書のレコメンド情報を出力部４６へ出力する。出力部４６は優先度解析部４５からレコメンド情報を取得すると、優先度に応じてレコメンド文書を作成装置１１へ出力する。出力方法としては、レコメンド文書の優先度に応じて、優先度の高い文書だけをレコメンドするようにしてもよいし、全ての文書を優先度の高い順に並べてレコメンドするようにしてもよい。最終的に、操作者は操作指示に応じた文書をレコメンドすることができる。
【００４１】
以下、図３（Ｅ）に示す操作履歴情報７２を用いてレコメンド文書の変化を説明する。「レコメンド文書」列に、その操作をした時点でレコメンドされる文書名を示している。
まず「Ｎｏ」列が「１」のレコードは、文書１を参照して文書１００が作成されたことを示す。
「Ｎｏ」列が「２」のレコードは、文書１が参照されたことを示す。
「Ｎｏ」列が「３」のレコードは、文書２を参照して文書２００が作成されたことを示す。
「Ｎｏ」列が「４」のレコードは、文書２が参照されたことを示す。
「Ｎｏ」列が「１」のレコードの「日時」列に記録されている日時には文書１００の操作履歴情報が存在しないため、その時点ではレコメンドされる文書はない。
また、「Ｎｏ」列が「３」のレコードの「日時」列に記録されている日時には文書２００の操作履歴情報が存在しないため、その時点ではレコメンドされる文書はない。
【００４２】
「Ｎｏ」列が「５」のレコードは、Ｅ氏が文書１を複製して文書３を作成したことを示している。Ｅ氏が文書１をオープンした時（「Ｎｏ」列が「５」のレコードの「日時」列に記録されている日時）、文書１を参照して作成された文書１００がＥ氏にレコメンドされる。
「Ｎｏ」列が「７」のレコードは、Ｅ氏が文書２から１０ＭＢのデータを文書３へコピーしたことを示している。Ｅ氏が文書２をオープンした時（「Ｎｏ」列が「７」のレコードの「日時」列に記録されている日時）、それ以前にレコメンドされていた文書１００はレコメンド文書から除外される。
なぜなら、文書１００は文書１、及び文書２の両方を参照して作成した文書ではないためである。Ｅ氏はレコメンドされている文書１００をレコメンドされたままで残しておきたい場合は、前述したレコメンドテーブル８１の「保護」列の値を「あり」に設定しておく必要がある。
【００４３】
「Ｎｏ」列が「９」のレコードは、後日（「日時」列に記録されている日時に）、Ｆ氏が文書１を参照して文書４を作成したことを示している。
「Ｎｏ」列が「１」のレコードが示すように、文書１００は文書１を参照して作成された。「Ｎｏ」列が「５」のレコードが示すように、文書３は文書１を複製して作成された。このため「Ｎｏ」列が「９」のレコードが示すように、Ｆ氏が文書１をオープンした時点で、文書１００、及び文書３がレコメンドされる。
優先度情報９１に示すように、「複製」という操作は「参照」という操作よりも優先度が高く設定されている。このため複製されて作成された文書３は、文書１００よりも優先度を上げてレコメンドされる。
【００４４】
「Ｎｏ」列が「１１」のレコードは、Ｆ氏が文書２も参照して文書４を作成したことを示している。当該レコードの「レコメンド文書」列が示すように、Ｆ氏が文書２をオープンした時点で、それ以前にレコメンドされていた文書１００はレコメンド文書から除外され、文書３だけがレコメンドされる。
なぜなら「Ｎｏ」列が「１１」のレコードの「日時」列に記録されている日時において、文書２の関連文書は、
「Ｎｏ」列が「４」のレコードが示す文書２００と、
「Ｎｏ」列が「８」のレコードが示す文書３の２つだけである。
つまり、
文書１に対するレコメンド文書は、文書３と文書１００であり、
文書２に対するレコメンド文書は、文書３と文書２００である。
すなわち、「Ｎｏ」列が「１１」のレコードの「日時」列に記録されている日時において、文書１と文書２に共通するレコメンド文書は文書３だけだからである。
このようにレコメンド文書を絞り込み、優先度をつけることで、利用者に有意義なレコメンドを実現することが可能となる。
【００４５】
＜操作履歴情報の取得フロー＞
以下、図５（Ａ）を用いて作成装置１１における操作履歴情報の取得フローについて説明する。作成装置１１は、まずＯＳにログインしたユーザと連携し、文書を作成するユーザを特定する（ステップＳ９０１）。
ユーザが特定されると、ユーザは操作指示を入力し文書を作成する（ステップＳ９０２）。ユーザが文書を作成する際に、操作履歴情報を取得する（ステップＳ９０３）。操作履歴情報の取得は、文書の作成が終了するまで常に取得し続ける（ステップＳ９０４）。文書の作成が終了すると、操作履歴情報を文書に付加して（ステップＳ９０５）文書を出力し（ステップＳ９０６）、処理を終了する。このとき、文書に操作履歴情報を付加せずに、操作履歴情報だけを出力するようにしてもよい。
【００４６】
以下、図５（Ｂ）を用いて情報処理装置１２における操作履歴情報の取得フローについて説明する。情報処理装置１２は、作成装置１１から文書が入力されると、操作履歴情報を抽出する（ステップＳ１００１）。操作履歴情報を抽出すると、データベースとして操作履歴情報と文書を関連付けて記録し（ステップＳ１００２）、処理を終了する。
【００４７】
＜レコメンド処理のフロー＞
以下、図６（Ａ）を用いて作成装置１１におけるレコメンド処理のフローについて説明する。作成装置１１は、まず文書を開く等の操作指示を入力する（ステップＳ１１０１）。作成装置１１は、入力された操作指示を情報処理装置１２に出力する（ステップＳ１１０２）。
次に、図６（Ｂ）を用いて情報処理装置１２におけるレコメンド処理のフローについて説明する。情報処理装置１２は、作成装置１１から操作指示が入力されると、入力された操作指示に関する文書を特定する（ステップＳ１２０１）。文書を特定すると情報処理装置１２は情報処理装置１２内のデータベースに問い合わせ、特定した文書に操作履歴情報があるかどうかを確認する（ステップＳ１２０２）。
【００４８】
操作履歴情報が存在しない場合は、レコメンド文書がない旨を出力し（ステップＳ１２１２）、処理を終了する。操作履歴情報がある場合はデータベースから操作履歴情報を取得する（ステップＳ１２０３）。操作履歴情報を取得すると、既にレコメンドしている文書があるかどうかを確認し（ステップＳ１２０４）、レコメンドしている文書がない場合は操作履歴情報中に記載されている全ての関連文書をレコメンド文書として特定する（ステップＳ１２０７）。
既にレコメンドされている文書が存在する場合は、共通してレコメンドする文書があるかどうかを解析する（ステップＳ１２０５）。解析した結果、共通性があるかどうかを判断し（ステップＳ１２０６）、共通性がない場合はレコメンド文書がない旨を出力し（ステップＳ１２１２）、処理を終了する。共通性がある場合は、共通する文書をレコメンド文書として特定し（ステップＳ１２０７）、レコメンド文書が複数あるかどうかを確認する（ステップＳ１２０８）。
【００４９】
レコメンド文書が複数ない場合は、現時点で特定されているレコメンド文書を最終的なレコメンド文書として決定し（ステップＳ１２１１）、作成装置１１にレコメンド情報を出力して（ステップＳ１２１２）処理を終了する。レコメンド文書が複数ある場合は、優先度機能が有効になっているかどうかを確認する（ステップＳ１２０９）。
優先度機能が有効になっていない場合は、現時点で特定されているレコメンド文書を最終的なレコメンド文書として決定し（ステップＳ１２１１）、作成装置１１にレコメンド情報を出力して（ステップＳ１２１２）処理を終了する。
優先度機能が有効になっている場合は、レコメンド文書の優先度を解析し、レコメンドの優先順位を決定する（ステップＳ１２１０）。
【００５０】
優先順位が決定すると、優先順位に基づいて現時点で特定されているレコメンド文書を最終的なレコメンド文書として決定し（ステップＳ１２１１）、作成装置１１にレコメンド情報を出力して（ステップＳ１２１２）処理を終了する。
最後に図６（Ｃ）を作成装置１１におけるレコメンド処理のフローについて説明する。作成装置１１は情報処理装置１２からレコメンド情報が入力されると（ステップＳ１３０１）、入力されたレコメンド情報に基づいて文書をレコメンドし（ステップＳ１３０２）、処理を終了する。
【００５１】
以上説明したように、本実施形態によれば、操作履歴情報を検証することによって、作業者が複数の文書を選択した場合に、選択した文書の関連性を解析し、作業者が所望の文書をレコメンドする技術を提供することが可能となる。
なお、本実施形態では文書の操作履歴情報を解析し、文書をレコメンドする方法に関して説明したが、レコメンドに限定せず、例えば文書検索や類似度判定といった用途で利用することも可能である。
また、本実施形態では「文書」ファイルに基づいて説明したが、本発明の技術的範囲は、文書作成を主目的とするソフトウェア（いわゆるワープロソフト）によって作成されるファイルに限定されない。数値データの集計・分析に用いられるソフトウェア（いわゆる表計算ソフトウェア）、スライドショー形式で情報を表示するためのソフトウェア（いわゆるプレゼンテーションソフトウェア）によって作成されるファイルなどに関しても適用可能である。
【００５２】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実
施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体
を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（または
ＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００５３】
１１  作成装置
１２  情報処理装置
３１  操作指示取得部
３２  特定部
３３  生成部
３４  操作履歴取得部
３５  出力部
４１  操作指示取得部
４２  操作履歴取得部
４３  記録部
４４  共通性解析部
４５  優先度解析部
４６  出力部
【図１】
2015162170.tif 000003
【図２】
2015162170.tif 000004
【図３】
2015162170.tif 000005
【図４】
2015162170.tif 000006
【図５】
2015162170.tif 000007
【図６】
2015162170.tif 000008