(57)【特許請求の範囲】
【請求項１】
表示装置に表示された複数のファイルを管理するファイル管理プログラムであって、
コンピュータに、
前記複数のファイルのうち、第一のファイルと第二のファイルとの間でユーザによる操作対象が切り替えられた場合であって、切り替え後の前記第一のファイル又は前記第二のファイルがデータベースに登録されているときに、切り替えられた回数を取得するステップと、
前記取得した切り替えられた回数に基づいて、前記第一のファイルと前記第二のファイルとの関連性を判定するステップと、
前記判定した結果に基づいて、前記第一のファイルと前記第二のファイルとを関連付けた情報を生成するステップと
を実行させることを特徴とするファイル管理プログラム。
【請求項２】
前記コンピュータに、さらに、
前記生成するステップののちに、
前記第一のファイルを指定した命令をユーザから受付けるステップと、
前記受付けた命令に基づいて、前記生成した前記関連付けた情報を前記表示装置に表示させるステップと
を実行させることを特徴とする請求項１に記載のファイル管理プログラム。
【請求項３】
前記判定するステップにおいて、
前記取得した切り替えられた回数が、予め定められた閾値よりも大きい場合に、前記第一のファイルと前記第二のファイルとが関連性を有すると判定することを特徴とする請求項１又は２に記載のファイル管理プログラム。
【請求項４】
前記判定するステップにおいて、
前記取得した切り替えられた回数から、前記操作対象が所定時間以内に切り替えられた回数を除いた回数に基づいて、前記第一のファイルと前記第二のファイルとの関連性を判定することを特徴とする請求項１又は２に記載のファイル管理プログラム。
【請求項５】
前記取得するステップにおいて、
前記複数のファイルのうち、最大化したウィンドウに表示された第一のファイルと最小化したウィンドウに表示された第二のファイルとの間でユーザによる操作対象が切り替えられた場合であって、切り替え後の前記第一のファイル又は前記第二のファイルがデータベースに登録されているときに、切り替えられた回数を取得することを特徴とする請求項１乃至請求項４のいずれか一項に記載のファイル管理プログラム。
【請求項６】
前記コンピュータに、
前記生成するステップののちに、
前記生成した前記関連付けた情報および、前記第一のファイルと前記第二のファイルとのそれぞれに関連づいたファイルの数に基づき、該第一のファイルと該第二のファイルとを含む複数のファイルのノードを有するツリー構造を作成するステップを
実行させることを特徴とする請求項１乃至請求項５のいずれか一項に記載のファイル管理プログラム。
【請求項７】
前記コンピュータに、さらに、
前記ツリー構造を作成するステップののちに、
前記第一のファイルを指定した命令をユーザから受付けるステップと、
前記受付けた命令に基づいて、前記作成したツリー構造を前記表示装置に表示させるステップと
を実行させることを特徴とする請求項６に記載のファイル管理プログラム。
【請求項８】
表示装置に表示された複数のファイルを管理するファイル管理装置であって、
前記複数のファイルのうち、第一のファイルと第二のファイルとの間でユーザによる操作対象が切り替えられた場合であって、切り替え後の前記第一のファイル又は前記第二のファイルがデータベースに登録されているときに、切り替えられた回数を取得する切り替え回数取得部と、
前記取得した切り替えられた回数に基づいて、前記第一のファイルと前記第二のファイルとの関連性を判定する関連性判定部と、
前記判定した結果に基づいて、前記第一のファイルと前記第二のファイルとを関連付けた情報を生成する関連情報生成部と、を備えるファイル管理装置。
【請求項９】
表示装置に表示された複数のファイルを管理するファイル管理方法であって、
コンピュータが、
前記複数のファイルのうち、第一のファイルと第二のファイルとの間でユーザによる操作対象が切り替えられた場合であって、切り替え後の前記第一のファイル又は前記第二のファイルがデータベースに登録されているときに、切り替えられた回数を取得する切り替え回数取得ステップと、
前記取得した切り替えられた回数に基づいて、前記第一のファイルと前記第二のファイルとの関連性を判定する関連性判定ステップと、
前記判定した結果に基づいて、前記第一のファイルと前記第二のファイルとを関連付けた情報を生成する関連情報生成ステップと、を実行するファイル管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、ファイル管理プログラム、ファイル管理装置及びファイル管理方法に関する。
【背景技術】
【０００２】
近年、製品設計などの現場においては、ＰＣ（Personal computer）上で設計図等を作製することが増えてきている。この場合、作業者は、ＰＣ上で設計図のファイルを開くとともに、その他のファイル（例えば、製品仕様書や部品表など）も開き、当該その他のファイルを参照しながら、設計図を作成する場合が多い。このような場合、一般的には、作業者は利便性を考慮して、同一の作業で用いるファイルを１つのフォルダに一纏めで格納しておくなどする。しかし、他のファイルが、他のフォルダに格納されている場合などは、作業者は、目的のファイルを検索する作業が必要となる。なお、ファイルとは、データファイルである。
【０００３】
作業者があるファイルと他のファイルとを参照する作業が、複数回発生する場合がある。例えば、作業者が、あるファイルの作成を途中で中断して、あるファイルや他のファイルを閉じ、その後、ファイルの作成を再開する場合などである。しかるに、作業者がフォルダ作成を忘れたり、別のフォルダ内のファイルを参照したような場合には、作業者は、再度ファイルを検索する必要が生じる。例えば、作業者は、検索キーワードを用いて、以前に参照したファイルを検索することもあるが、検索には時間が掛かる。さらには、検索キーワードが適当でない場合には、当該検索では必要とするファイルが見つからない場合もある。
【０００４】
これに対し、最近では、リンク関係を持たないファイル群から、ファイルの関連を特定する技術も提案されつつある。特許文献１に開示の技術は、サーバにアクセスした履歴を用いて、作業者が作業していた時間帯を推定し、その作業時間帯に使用していた複数のファイルを関連ありとして判定するものである。また、特許文献２に開示の技術は、コピー・ペーストの発生頻度が高いファイル間を、関連性の強い組み合わせと判断するものである。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−３５５３号公報
【特許文献２】特開２００６−２６８５９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記特許文献１では、検索キーワード入力が不要となるものの、ファイルを開いている時間が一定以上重複する複数のファイルを関連ありと判定するため、マルチタスク環境では、正確に関連性を特定することができない。すなわち、上記特許文献１では、作業とは無関係のファイルを開いたまま作業を行った場合に、当該無関係なファイルも作業に関連性があるものと判定されるおそれがある。また、特許文献２に開示の技術では、作業において参照等しただけのファイルは、関連性が低く判断されるため、ファイル間の関連性を正確に特定することができない。
【０００７】
そこで本件は上記の課題に鑑みてなされたものであり、表示装置に複数のファイルが表示される場合に、ファイル同士を適切に関連付けることが可能なファイル管理プログラム、ファイル管理装置及びファイル管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本明細書に記載のファイル管理プログラムは、表示装置に表示された複数のファイルを管理するファイル管理プログラムであって、コンピュータに、前記複数のファイルのうち、第一のファイルと第二のファイルとの間でユーザによる操作対象が切り替えられた場合であって、切り替え後の前記第一のファイル又は前記第二のファイルがデータベースに登録されているときに、切り替えられた回数を取得するステップと、前記取得した切り替えられた回数に基づいて、前記第一のファイルと前記第二のファイルとの関連性を判定するステップと、前記判定した結果に基づいて、前記第一のファイルと前記第二のファイルとを関連付けた情報を生成するステップとを実行させることを特徴とするファイル管理プログラムである。
【０００９】
本明細書に記載のファイル管理装置は、表示装置に表示された複数のファイルを管理するファイル管理装置であって、前記複数のファイルのうち、第一のファイルと第二のファイルとの間でユーザによる操作対象が切り替えられた場合であって、切り替え後の前記第一のファイル又は前記第二のファイルがデータベースに登録されているときに、切り替えられた回数を取得する切り替え回数取得部と、前記取得した切り替えられた回数に基づいて、前記第一のファイルと前記第二のファイルとの関連性を判定する関連性判定部と、前記判定した結果に基づいて、前記第一のファイルと前記第二のファイルとを関連付けた情報を生成する関連情報生成部と、を備えるファイル管理装置である。
【００１０】
本明細書に記載のファイル管理方法は、表示装置に表示された複数のファイルを管理するファイル管理方法であって、コンピュータが、前記複数のファイルのうち、第一のファイルと第二のファイルとの間でユーザによる操作対象が切り替えられた場合であって、切り替え後の前記第一のファイル又は前記第二のファイルがデータベースに登録されているときに、切り替えられた回数を取得する切り替え回数取得ステップと、前記取得した切り替えられた回数に基づいて、前記第一のファイルと前記第二のファイルとの関連性を判定する関連性判定ステップと、前記判定した結果に基づいて、前記第一のファイルと前記第二のファイルとを関連付けた情報を生成する関連情報生成ステップと、を実行するファイル管理方法。である。
【発明の効果】
【００１１】
本明細書に記載のファイル管理プログラム、ファイル管理装置及びファイル管理方法は、表示装置に複数のファイルが表示される場合に、ファイル同士を適切に関連付けることができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】一実施形態に係るファイル管理装置の構成を示すブロック図である。
【図２】制御部及び記憶部のシステム構成図である。
【図３】制御部における全体処理を示すフローチャートである。
【図４】ファイルＤＢのデータ構造を示す図である。
【図５】ファイル切り替えテーブルのデータ構造を示す図である。
【図６】図３のステップＳ２６の具体的処理を示すフローチャートである。
【図７】図６のステップＳ３０の具体的処理を示すフローチャートである。
【図８】切り替え回数テーブルのデータ構造を示す図である。
【図９】閾値テーブルのデータ構造を示す図である。
【図１０】図６のステップＳ５０の具体的処理を示すフローチャートである。
【図１１】関連ファイルテーブルのデータ構造を示す図である。
【図１２】図６のステップＳ６０の具体的処理を示すフローチャートである。
【図１３】結果テーブルのデータ構造を示す図である。
【図１４】図１３の結果テーブルに基づいて表示されるツリー構造を示す図である。
【図１５】図１５（ａ）は、結果テーブルの別例（その１）であり、図１５（ｂ）は、図１５（ａ）の結果テーブルに基づいて表示されるツリー構造を示す図であり、図１５（ｃ）は、結果テーブルの別例（その２）であり、図１５（ｄ）は、図１５（ｃ）の結果テーブルに基づいて表示されるツリー構造を示す図である。
【図１６】図１６（ａ）は、結果テーブルの別例（その３）であり、図１６（ｂ）は、図１６（ａ）の結果テーブルに基づいて表示されるツリー構造を示す図である。
【図１７】変形例に係る関連ファイルテーブルのデータ構造を示す図である。
【発明を実施するための形態】
【００１３】
以下、ファイル管理装置の一実施形態について、図１〜図１６に基づいて詳細に説明する。図１にはファイル管理装置を含むＰＣ（Personal Computer）１００の構成がブロック図にて示されている。この図１に示すようにＰＣ１００は、入力装置１０と、表示装置２０と、制御部３０と、記憶部５０と、を備える。なお、制御部３０と記憶部５０とによりファイル管理装置が実現されている。
【００１４】
入力装置１０は、キーボードやマウスなどを含むユーザインタフェースであり、ユーザからの操作に応じて制御部３０への指示を出力する。表示装置２０は、液晶ディスプレイや有機ＥＬディスプレイ等を含む。制御部３０が所定のアプリケーションを実行することで、表示装置２０はファイルを表示する。なお、ファイルは、ユーザの入力に基づいて所定のアプリケーションによって作成されたデータと、その作成を行った所定のアプリケーションを識別する情報とを有する。つまり、ファイルは、所定のアプリケーションによって、当該アプリケーションに割り当てられた領域に表示される。なお、割り当てられた領域を、ウィンドウと称する。そして、表示装置は、複数のウィンドウを表示する。そして、各ウィンドウにユーザの入力に基づいてそれぞれのファイルを表示する。複数のウィンドウを表示することを、マルチウィンドウと称する。また、各ウィンドウが最小化されても、ウィンドウが閉じられない限り、マルチウィンドウと称されることは言うまでもない。この表示装置２０の画面上には、複数のファイルを表示することができ、そのうちの１つのファイルを、ユーザはマウス等により選択することが可能である。選択されたファイルに対しては、文字入力や図形作成などの入力操作が可能であるとともに、ページのスクロール操作等も可能となっている。
【００１５】
制御部３０及び記憶部５０は、図２に示すようなシステム構成を有する。図２に示すように、制御部３０は、中央処理装置（ＣＰＵ:Central Processing Unit）３０１、ＲＯＭ(Read Only Memory)３０２、ＲＡＭ（Random Access Memory）３０３、ＨＤＤ（Hard Disk Drive）３０４等を含んでおり、各部は、バスにより接続されている。ＲＯＭ３０２又はＨＤＤ３０４に格納されているプログラムをＣＰＵ３０１が読み込んで実行することで、図１に示す制御部３０の各部の機能が実現される。具体的には、制御部３０では、ファイル実行部３２と、切り替え回数テーブル作成部３４と、切り替え回数取得部３６と、関連性判定部３８と、関連情報生成部４０と、表示制御部４２と、の機能が実現される。また、記憶部５０は、ＲＡＭ３０３又はＨＤＤ３０４により実現され、制御部３０による処理の際に使用されるデータ等を保存する。記憶部５０は、具体的には、ファイルＤＢ格納部５２と、ファイル切り替えテーブル格納部５４と、切り替え回数テーブル格納部５６と、閾値テーブル格納部５８と、関連ファイルテーブル格納部６０と、結果テーブル格納部６２と、を有する。
【００１６】
以下、制御部３０の各部と、記憶部５０の各部について、具体的に説明する。
【００１７】
ファイル実行部３２は、入力装置１０から入力されるユーザの指示に基づいて、所定のアプリケーションを用いて、表示画面にファイル内のデータを出力する。ファイルは、ユーザにより作成されたデータと、当該ファイルを使用するアプリケーションの識別子情報とを有する。また、ファイルを識別するファイル識別子は、例えば、「ＣＡＤデータ.icd」や、「製品仕様書.doc」、「部品表.xls」などである。
【００１８】
また、ファイル実行部３２は、ユーザによる指示に基づいて出力されたファイルのファイル名を、記憶部５０のファイルＤＢ格納部５２に格納されているファイルＤＢに登録する。詳細は後述するが、ユーザの指定によらず自動実行されたファイルは、ファイルＤＢには登録されない。
【００１９】
ファイル実行部３２は、更に、ユーザによる操作の対象となっているファイルが切り替えられたときに、当該切り替え前のファイル名と切り替え後のファイル名をファイル切り替えテーブル格納部５４に格納する。ユーザによる操作の対象となっているファイルを、操作対象ファイルと称する。
【００２０】
なお、操作対象ファイルとは、マルチウィンドウ環境下で、アクティブウィンドウに表示されているファイルを指す。よって、操作対象ファイルの切り替えは、アクティブウィンドウの切り替えである。例えば、ファイル実行部３２は、ユーザによるクリック位置を検出する。そして、クリック位置に表示されたウィンドウが、アクティブウィンドウと異なるウィンドウである場合、アクティブウィンドウが切り替わったと判定する。
【００２１】
なお、表示画面における各ウィンドウの表示領域を示す座標などは、従来技術を用いて特定することができる。また、ユーザは、操作対象であるファイルに対して、表示範囲の変更（スクロール操作）や、入力、複写・転写などの種々の操作を行うことができる。
【００２２】
したがって、ファイル実行部は、アクティブウィンドウの切り替えを検出したときに、切り替えの前後でアクティブである各ウィンドウに表示された各ファイルの組み合わせをファイル切り替えテーブル格納部５４に格納する。
【００２３】
切り替え回数テーブル作成部３４は、ファイル切り替えテーブル格納部５４に格納されているファイル切り替えテーブル（図５参照）から、操作対象のファイルの切り替え回数を取得して、切り替え回数テーブル格納部５６に送信する。
【００２４】
切り替え回数取得部３６は、切り替え回数テーブル格納部５６に格納されている切り替え回数テーブル（図８参照）から、操作対象のファイルの切り替え回数を取得し、関連性判定部３８に送信する。
【００２５】
関連性判定部３８は、操作対象のファイルの切り替え回数と、閾値テーブル格納部５８に格納されている閾値テーブル（図９参照）で定義されている閾値と、に基づいて、ファイル間の関連性を判定する。そして、関連性判定部３８は、当該判定結果を関連ファイルテーブル格納部６０に格納されている関連ファイルテーブル（図１１参照）に格納する。
【００２６】
関連情報生成部４０は、関連ファイルテーブルに基づいて、複数のファイルを関連付けた情報を生成し、結果テーブル格納部６２に格納されている結果テーブル（図１３参照）に格納する。
【００２７】
表示制御部４２は、結果テーブルに基づいて、複数のファイルを関連付けた情報を表示装置２０に表示する。
【００２８】
次に、制御部３０による具体的な処理について、図３〜図１６に基づいて詳細に説明する。図３には、制御部３０における全体処理が示されている。この図３の処理は、ＰＣ１００上でユーザが入力装置を介してファイル管理プログラムを起動した時点から開始される。例えば、ユーザがＰＣを起動したことを受けて、ＣＰＵがファイル管理プログラムを読み出し、実行することとしても良い。
【００２９】
図３のステップＳ１０では、ファイル実行部３２が、ユーザが、入力装置１０を介して関連度レベルを入力したか否かを判断する。ここでの判断が否定されると、ステップＳ１０の処理が繰り返されるが、判断が肯定されると、ステップＳ１２に移行する。なお、関連度レベルとしては、例えば、「高」、「中」、「低」の３段階で入力することが可能であるものとする。なお、関連度レベルが高いほど、ファイル間の切り替えを多数回行ったときにのみファイル間に関連性があると判断され、関連度レベルが低いほど、ファイル間の切り替えをあまり行っていなくてもファイル間に関連性があると判断される。ユーザは、関連性の判定において自己の意思を反映することができる。ファイル管理装置１００は、ユーザが望む程度の関連性を有したファイルをユーザに提供することができる。
【００３０】
また、ステップＳ１０において、ユーザによる入力は、ファイル管理処理が実行される度に実行される必要はない。例えば、ファイル実行部３２は、予め記憶部（図示せず）に格納された関連度レベルが存在する場合に、ステップＳ１０において判断が肯定されるようにしても良い。記憶部に格納された関連度レベルは、ユーザごとに設定されても良いし、ユーザが所属する部門や会社ごとに設定されていても良い。
【００３１】
ステップＳ１０の判断が肯定されて、ステップＳ１２に移行すると、ファイル実行部３２が、ユーザにより入力されたレベルを取得する。つまり、ユーザにより入力された関連度レベルを入力レベルとして取得する。次いで、ステップＳ１４では、ファイル実行部３２が、ユーザが新たなファイルを開いたか否かを判断する。ここでの判断が否定された場合には、ステップＳ１８に移行するが、判断が肯定された場合には、ステップＳ１６に移行する。ステップＳ１６に移行すると、ファイル実行部３２は、開いたファイルをファイルＤＢに登録する。ここで、ファイルＤＢには、図４に示すように、ファイル名とそのファイルが格納されている場所を示すフォルダ名とが対応付けて記憶される。このファイルＤＢには、実行されているファイルの情報が格納される。例えば、表示装置２０上に表示されている（又は表示可能な状態とされている）ファイルの情報が格納されることになる。
【００３２】
図３に戻り、ステップＳ１８では、ファイル実行部３２が、操作可能なファイルの切り替えがあったか否かを判断する。ここでは、アクティブウィンドウの切り替えがあったか否かに基づいて、ステップＳ１８の判断を行う。ここでの判断が否定された場合には、ステップＳ１４に戻る。一方、ステップＳ１８の判断が肯定された場合（操作可能なファイルの切り替えがあった場合）には、ステップＳ２０に移行する。
【００３３】
ステップＳ２０に移行した場合、ファイル実行部３２は、切り替え後のファイルがファイルＤＢに登録されているか否かを判断する。ここでの判断が否定された場合には、ステップＳ１４に戻り、判断が肯定された場合には、ステップＳ２２に移行する。なお、ステップＳ２０において、切り替え後のファイルがファイルＤＢに登録されているか否かを確認するのは、ＰＣ上においては、ユーザが実行したファイル以外のファイルが自動的に起動される場合があるからである。つまり、このようなに自動的に起動されたファイルを、操作可能なファイルの切り替えと判断しないようにするためである。なお、自動的に起動されたファイルとは、起動時刻が設定されており、他のアプリケーションとは無関係に実行されるウイルスチェックプログラムファイルなどである。他には、メールサーバへのメールの着信の有無を問い合わせるメーラプログラムファイルなどである。
【００３４】
ステップＳ２２に移行すると、ファイル実行部３２は、切り替え前及び切り替え後のファイルをファイル切り替えテーブルに登録する。ここで、ファイル切り替えテーブルには、図５に示すように、切り替え前のファイル情報と、切り替え後のファイル情報とを登録することができるようになっている。したがって、ファイル実行部３２は、切り替え前のファイル情報を左欄に登録するとともに、切り替え後のファイル情報を右欄に登録する。なお、ファイル情報は、ファイルＤＢに格納されているフォルダ名とファイル名とを有する情報である。さらに、ファイルを使用するアプリケーションを識別する識別子情報を有しても良い。また、ファイル情報は、ファイルを一意に識別する情報であってもよい。
【００３５】
図３に戻り、次のステップＳ２４では、ユーザがシステムを終了したか否かを、ファイル実行部３２が判断する。ここでの判断が否定された場合には、ステップＳ１４に戻り、ステップＳ１４〜ステップＳ２４の処理・判断を繰り返す。一方、ステップＳ２４の判断が肯定された場合には、ステップＳ２６に移行する。なお、本実施例においては、システムの終了をもって、関連付け処理が開始されることとして説明したが、これに限られるものではない。例えば、システムの終了前であっても、ファイル管理装置は、所定時間毎に関連付け処理を実行することとしても良い。この場合は、ユーザは、ファイル間の関連性をリアルタイムで把握することができる。
【００３６】
ステップＳ２６では、ファイル管理装置１００は、関連付け処理のサブルーチンを実行する。この関連付け処理のサブルーチンでは、図６の処理が実行される。図６のステップＳ３０では、ファイル管理装置１００は、切り替え回数カウント処理のサブルーチンを実行する。具体的には、ファイル管理装置１００は、図７に示す処理を実行する。
【００３７】
図７の切り替え回数カウント処理のサブルーチンでは、まず、ステップＳ３１において、切り替え回数テーブル作成部３４がｎを１に設定する。次いで、ステップＳ３２では、切り替え回数テーブル作成部３４が、ファイル切り替えテーブルのｎ段目の切り替え前のファイル情報及び切り替え後のファイル情報を読み込む。例えば、ｎ＝１のときは、図５の一段目の切り替え前のファイル情報「Ｄ：￥Ｄａｔａ￥ＣＡＤデータ.icd」と、切り替え後のファイル情報「Ｄ：￥Ｄａｔａ￥製品仕様書.doc」とが読み込まれる。
【００３８】
次いで、ステップＳ３３では、切り替え回数テーブル作成部３４が、ｎ段目の切り替え前のファイル情報、及び切り替え後のファイル情報を切り替え回数テーブルに登録する。ここで、切り替え回数テーブルは、図８に示すようなテーブルとなっている。具体的には、切り替え回数テーブルでは、切り替え前のファイルから切り替え後のファイルに、何回切り替えられたかが集計される。例えば、ステップＳ３２において、図５の１段目が読み込まれた場合には、ステップＳ３３では、図８の太枠で囲まれた部分に記載されている数字がカウントアップされることになる。
【００３９】
なお、図８の切り替え回数テーブルは、関連ファイルテーブルに登録されている全ファイル情報に対して、操作対象ファイルの切り替え前後のファイルの組み合わせを全て有する。以下、切り替え回数テーブルの作成処理について、説明する。
【００４０】
切り替え回数テーブル作成部３４は、切り替え回数読み込み・関連付け処理の開始を受けて、関連ファイルテーブルを参照する。そして、切り替え回数テーブル作成部３４は、関連ファイルテーブルに存在する全てのファイル名を、切り替え回数テーブルの「前」と「後」のそれぞれに設定する。
【００４１】
しかし、これに限らず、切り替え前と切り替え後のファイルの組み合わせごとに、レコードを設け、レコードごとに切り替え回数を管理することとしてもよい。この場合は、新たな組み合わせが関連ファイルテーブルに追加されることで、レコードが随時増えてゆく。
【００４２】
次いで、ステップＳ３４では、切り替え回数テーブル作成部３４が、全ての段の読み込みが終了したか否かを判断する。ここでの判断が否定された場合には、ステップＳ３５において、切り替え回数テーブル作成部３４がｎを１インクリメント（ｎ←ｎ＋１）した後、ステップＳ３２に戻る。その後は、ステップＳ３４の判断が肯定されるまで、ステップＳ３２〜Ｓ３５の処理・判断が繰り返される。そして、ステップＳ３４の判断が肯定されると、切り替え回数テーブル作成部３４は、図８の切り替え回数テーブルへの登録処理を終了して、図６のステップＳ４０に移行する。
【００４３】
図６のステップＳ４０では、関連性判定部３８が、図９の閾値テーブルから閾値を読み込む。ここで、前述したステップＳ１２（図３）で取得された入力レベルが「高」であった場合には、閾値テーブルに基づいて、閾値「２０」を読み込む。また、入力レベルが「中」であった場合には、閾値テーブルに基づいて、関連性判定部３８は、閾値「１０」を読み込む。また、入力レベルが「低」であった場合には、関連性判定部３８は、閾値テーブルに基づいて、閾値「５」を読み込む。なお、本実施形態では、入力レベルが「中」であったものとし、関連性判定部３８が、閾値「１０」を読み込んだものとして説明する。
【００４４】
次いで、図６のステップＳ５０に移行し、切り替え回数読み込み・関連付け処理のサブルーチンを実行する。具体的には、ファイル管理装置１００は、図１０の処理を実行する。まず、ステップＳ５１では、切り替え回数取得部３６が新たな２つのファイルの組み合わせを取得する。具体的には、切り替え回数テーブル格納部５６に図８の切り替え回数テーブルが格納されている場合には、製品仕様書、部品表、ＣＡＤデータ、解析データのうちから２つのファイルの組み合わせを取得する。例えば、製品仕様書と部品表との組み合わせが取得される。
【００４５】
次いで、ステップＳ５２では、切り替え回数取得部３６が、２つのファイルの組み合わせに係る切り替え回数を図８の切り替え回数テーブルから読み込んで、関連性判定部３８に送信する。例えば、２つのファイルの組み合わせが、製品仕様書と部品表であったとする。この場合、切り替え回数取得部３６は、切り替え前ファイルが製品仕様書で、切り替え後ファイルが部品表である切り替え回数（１０回）を読み込む。さらに、切り替え回数取得部３６は、切り替え前ファイルが部品表で、切り替え後ファイルが製品仕様書である切り替え回数（１１回）を読み込む。そして、切り替え回数取得部３６は、読み込んだ切り替え回数（１０回と１１回）を、二つのファイルの組み合わせ情報とともに関連性判定部３８に送信する。
【００４６】
次いで、ステップＳ５３では、関連性判定部３８が、切り替え回数取得部３６から送信されてきた切り替え回数を合計する。上記の例では、関連性判定部３８は、１０回と１１回とを合計して、２１回という値を得る。
【００４７】
次いで、ステップＳ５４では、関連性判定部３８は、ステップＳ５３で得た合計値が、閾値（ここでは、１０）を超えているか否かを判断する。上記の例では、ステップＳ５３で得られた合計値が２１であるため、ステップＳ５４の判断が肯定される。ここでの判断が肯定された場合には、ステップＳ５５に移行して、関連性判定部３８は、２つのファイルの組み合わせを関連ファイルテーブルに追加する。ここで、関連ファイルテーブルには、図１１に示すように、元ファイル名と関連ファイル名の項目が登録される。本実施形態では、ステップＳ５４の判断が肯定された場合、関連性判定部３８は、２つのファイルの組み合わせの一方を元ファイル名、他方を関連ファイル名として登録する。さらに、関連性判定部３８は、他方を元ファイル名、一方を関連ファイル名として登録する。上記の例（製品仕様書と部品表）であれば、図１１の矢印（１）、（２）で示す２つの行のデータが登録されることになる。このステップＳ５５の処理が終了すると、関連性判定部３８は、ステップＳ５６に移行する。また、前述したステップＳ５４の判断が否定された場合にも、ステップＳ５６に移行する。
【００４８】
ステップＳ５６では、関連性判定部３８が、全ての組み合わせについての処理が終了したか否かを判断する。ここでの判断が否定された場合には、ステップＳ５１に移行し、切り替え回数取得部３６は、新たな２つのファイルの組み合わせ（例えば、製品仕様書とＣＡＤデータなどの組み合わせ）を取得して、以降の処理・判断を繰り返す。そして、ステップＳ５６の判断が肯定された段階、すなわち、図１１のように、閾値を超える全ての組み合わせを関連ファイルテーブルに登録した段階で、関連性判定部３８は、図６のステップＳ６０に移行する。
【００４９】
図６のステップＳ６０では、ファイル管理装置１００はリンク付け処理のサブルーチンを実行する。このリンク付け処理のサブルーチンにおいては、ファイル管理装置１００は、図１２のような処理を実行する。
【００５０】
図１２の処理では、まず、ステップＳ６１において、関連情報生成部４０が、新たな元ファイルを１つ選択する。例えば、ここでは、「ＣＡＤデータ」が選択されたものとする。次いで、ステップＳ６２では、関連情報生成部４０が、図１１の関連ファイルテーブルの元ファイルに対応する関連ファイル数を取得する。例えば、元ファイルが「ＣＡＤデータ」の場合、関連ファイル数は３つとなる（図１１の１〜３段目参照）。
【００５１】
次いで、ステップＳ６３では、関連情報生成部４０が、関連ファイル数は２以上であるか否かを判断する。ここでの判断が肯定された場合には、ステップＳ６４に移行し、判断が否定された場合には、ステップＳ６５に移行する。なお、元ファイルが「ＣＡＤデータ」の場合（関連ファイル数＝３）には、ステップＳ６３の判断は肯定される。
【００５２】
ステップＳ６４では、関連情報生成部４０は、結果テーブルに、親ノードを「関連情報」、子ノードを元ファイルとして追加する。具体的には、図１３の結果テーブルでは、親ノードと子ノードの項目が用意されている。したがって、上記の例のように元ファイルが「ＣＡＤデータ」である場合には、関連情報生成部４０は、親ノードの項目に「関連情報」と登録し、子ノードの項目に、「ＣＡＤデータ」と登録する。なお、登録する情報は、ファイル名であってもよく、ファイル情報であっても良い。
【００５３】
なお、ステップＳ６１で選択される元ファイルが「製品仕様書」の場合であっても、関連ファイル数は２である。したがって、この場合にも、関連情報生成部４０は、ステップＳ６４において、親ノードの項目に「関連情報」と登録し、子ノードの項目に、「製品仕様書」と登録する。更に、元ファイルが「部品表」であっても、関連ファイル数は２であるため、関連情報生成部４０は、ステップＳ６４において、親ノードの項目に「関連情報」と登録し、子ノードの項目に、「部品表」と登録する。
【００５４】
一方、ステップＳ６５に移行した場合には、関連情報生成部４０は、結果テーブルに、親ノードを関連ファイル、子ノードを元ファイルとして追加する。例えば、ステップＳ６１で選択される元ファイルが「解析データ」であった場合には、関連ファイル数は１であるためステップＳ６５に移行する。この場合には、関連情報生成部４０は、ステップＳ６５において、親ノードの項目に「ＣＡＤデータ」と登録し、子ノードの項目に、「解析データ」と登録する（図１３の最下段参照）。
【００５５】
上記ステップＳ６１〜Ｓ６５は、全ての元ファイルが選択されるまで行われる。そして、全ての元ファイルが選択され、ステップＳ６６の判断が肯定された場合には、図１２の全処理（ステップＳ６０の処理）を終了する。これにより、図６の全処理も終了するので、図３の全処理も終了することになる。
【００５６】
以上の処理により、図１の表示制御部４２は、図１３の結果テーブルに基づいて、図１４に示すようなツリー構造を作成することができる。なお、本実施例においては、ファイル管理装置１００は、結果テーブルを作成し、結果テーブルに基づいてツリー構造を作成することとした。しかし、これに限らず、例えば、関連ファイルテーブルの作成後、ファイル管理装置１００は、関連ファイルテーブルに登録された情報を表示しても良い。
【００５７】
ツリー構造の作成においては、表示制御部４２は、関連情報という親ノードに、第１ノード、すなわち、親ノードの直下にぶら下がるノードとして、ＣＡＤデータ、製品仕様書、部品表という３つのファイルをぶら下げる。さらに、第１ノードのＣＡＤデータのファイルに、解析データのファイルを第２ノード、すなわち、第１ノードの直下にぶら下がるノードとして、ぶら下げる。以上のようなツリー構造を作成することができる。
【００５８】
したがって、表示制御部４２は、ユーザからの指示に基づいて、当該ツリー構造を表示装置２０上に表示することができる。ユーザは、このツリー構造を参照することで、自己が作業しているファイルに関連するファイル（過去にそのファイルで作業していたときに参照したファイル）を、確認することができるようになる。なお、ユーザは、例えば、ファイルを開いた後に、例えばマウスを右クリックしてメニューを表示させ、そのメニューの中から「関連情報」の項目を選択することで、開いたファイルに対応するファイル情報が含まれるツリー構造を参照することができるようになる。また、ファイル実行部３２が、ユーザが新たなファイルを開いたことを検知した場合に、新たに開かれたファイルのファイル名を含む結果テーブルを参照する。そして、表示制御部４２は、結果テーブルに基づいたツリー構造を表示することとしてもよい。
【００５９】
なお、図１５（ａ）に示すような結果テーブルが得られた場合には、表示制御部４２は、図１５（ｂ）に示すようなツリー構造を表示装置２０上に表示する。また、図１５（ｃ）に示すような結果テーブルが得られた場合には、表示制御部４２は、図１５（ｄ）に示すようなツリー構造を表示装置２０上に表示する。更に、図１６（ａ）に示すような結果テーブルが得られた場合には、表示制御部４２は、図１６（ｂ）に示すようなツリー構造を表示装置２０上に表示する。
【００６０】
以上、詳細に説明したように、本実施形態によると、切り替え回数取得部３６が、ユーザによる操作対象が、複数のファイルのうち一のファイル（第一のファイル）と他のファイル（第二のファイル）との間で切り替えられた回数を取得すし、関連性判定部３８が、取得した切り替えられた回数に基づいて、第一のファイルと第二のファイルとの関連性を判定し、関連情報生成部４０が、判定した結果に基づいて、第一のファイルと第二のファイルとを関連付けた情報（ツリー構造や関連ファイルテーブル）を生成するので、第一のファイルと、第一のファイル作成の際に参照した第二のファイルなどとを適切に関連付けた情報を生成することができる。
【００６１】
また、本実施形態によると、表示制御部４２は、ユーザからの命令に従って、関連情報生成部４０で生成された情報を表示装置２０に表示させる。これにより、ユーザは、当該情報を参照することで、ファイル作成の際に参照したファイルを、後で特定することが容易となる。これにより、過去の作業において、互いに関連する複数ファイルを参照した場合、後の作業においても、関連する複数のファイルを容易に把握することが出来る。例えば、ユーザが、ある製品の前回の版の設計図を参照しながら、新たな版の設計図を作成している場合に、アクティブなファイルの切り替えを検出することで、新たな設計図と前回の設計図とを関連ありと判断できる。
【００６２】
また、本実施形態によると、関連情報生成部４０は、操作可能なファイルが一のファイルと他のファイルとの間で切り替えられた回数が予め定められた閾値よりも大きい場合に、両ファイルが関連性を有すると判定する（ステップＳ５４，Ｓ５５）。したがって、簡易な方法で適切な関連性の判定を行うことができる。
【００６３】
また、本実施形態によると、関連情報生成部４０は、一のファイルとの関連性を有するファイルが複数ある場合に、当該一のファイルをツリー構造の第１ノードとし、第１ノードとされた一のファイルとの関連性を有する他のファイルが１つである場合には、当該他のファイルをツリー構造における一のファイルの下層に位置する第２ノードとする。これにより、複数のファイルを適切なツリー構造で表すことが可能となる。また、ファイルの関連性をツリー構造で表示することで、ファイル間の関連性を分かりやすく表示することができる。
【００６４】
なお、上記実施形態では、ステップＳ５３において切り替え回数の合計値を算出し、当該合計値が閾値を超えていた場合に、２つのファイルの組み合わせを関連ファイルテーブルに追加する場合について説明した。しかしながらこれに限られるものではなく、例えば、切り替え回数を合計せずに、各切り替え回数を閾値と比較することとしても良い。この場合、閾値としては、図９の閾値テーブルに示している値の半分の値などを用いることができる。このようにしても、上記実施形態と同様の効果を得ることができる。
【００６５】
なお、上記実施形態では、切り替え回数の合計値が閾値を超えていた場合に、図１１の関連ファイルテーブルでは、矢印（１）、（２）で示すように、元ファイル名と関連ファイル名とを入れ替えたものを登録することとした。しかしながら、これに限られるものではなく、いずれか一方のみ（すなわち、切り替え前後のファイルの組み合わせ）を登録することとしても良い。このようにしても、図１７に示すような関連ファイルテーブルができるので、当該テーブルにおける各ファイルの出現回数（トータルの出現回数）をステップＳ６２の関連ファイル数として取り扱うことで、上記実施形態と同様の処理を実現することができる。
【００６６】
なお、上記実施形態では、閾値を、ユーザの入力レベルと、図９の閾値テーブルとに基づいて決定する場合について説明したが、これに限らず、閾値は固定値であっても良い。
【００６７】
なお、上記実施形態では、表示装置２０の画面上にあるファイルを表示するウィンドウのみを表示し、他のファイルを表示するウィンドウを最小化した場合であっても、上記と同様の処理を行うことができる。つまり、一画面にはアクティブウィンドウのみが表示されている場合である。最小化したウィンドウを表示する場合は、アクティブウィンドウの切り替えが発生する。したがって、複数のウィンドウを画面上に表示する場合と同様に、一画面に一つのウィンドウを表示する場合においても、ファイル管理装置はファイル同士の関連付けを行うことができる。
【００６８】
なお、上記実施形態では、操作可能なウィンドウの切り替えがあったときに、全てカウントする場合について説明した。しかしながら、これに限らず、操作可能となっている時間が極端に短い場合には、切り替えが無かったものと取り扱うこととしても良い。
【００６９】
また、上記実施形態では、本明細書に記載のファイル管理装置が、設計の現場で用いられる場合について説明したが、これに限らず、種々の現場、状況で用いることが可能である。また、上記実施形態では、図４に示すように同時に実行されるファイルが、別々の拡張子のファイルである場合について説明した。しかしながら、これに限られるものではなく、同時に実行されるファイルには、同一の拡張子のファイルが含まれていても勿論良い。
【００７０】
なお、上記実施形態では、図１の制御部３０の一部及び／又は記憶部５０の一部が、別のＰＣ（サーバ）に設けられても良い。例えば、ファイル実行部３２においてデータを出力するファイルを格納する格納部や、結果テーブル格納部６２がサーバに設けられていても良い。この場合、複数のユーザで、ファイルの関連性の情報を共有することが可能となる。なお、複数のユーザでファイルの関連性の情報を共有する場合には、当該関連性の情報が作成されたときにファイルを作成していたユーザの情報や作成日時の情報などを、関連性の情報と関連付けて保存しておいても良い。
【００７１】
また、ファイルＤＢ格納部は、複数の記憶部を有しても良い。そして、各記憶部を備える装置が異なっても良い。例えば、設計図などのファイルを記憶する記憶部を端末装置が備え、ＣＡＤ図面などのファイルを記憶する記憶部をサーバ装置が備えても良い。
【００７２】
なお、上記実施形態では、本件のファイル管理プログラムが、ＰＣ１００に組み込まれ、図１の各部の各機能を実現する。しかしながら、これに限らず、例えば、インターネット等の通信網に接続されたサーバコンピュータを本件のファイル管理装置とし、これに接続されたＰＣ等の表示部にツリー構造表示を行うサービスをサーバコンピュータから提供するようにしても良い（ＡＳＰ(Application Service Provider)）。
【００７３】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。
【００７４】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ（Digital Versatile Disc）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【００７５】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【００７６】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【符号の説明】
【００７７】
２０  表示装置
３６  切り替え回数取得部
３８  関連性判定部
４０  関連情報生成部
４２  表示制御部
【図１】
0005515914.tif 000002
【図２】
0005515914.tif 000003
【図３】
0005515914.tif 000004
【図４】
0005515914.tif 000005
【図５】
0005515914.tif 000006
【図６】
0005515914.tif 000007
【図７】
0005515914.tif 000008
【図８】
0005515914.tif 000009
【図９】
0005515914.tif 000010
【図１０】
0005515914.tif 000011
【図１１】
0005515914.tif 000012
【図１２】
0005515914.tif 000013
【図１３】
0005515914.tif 000014
【図１４】
0005515914.tif 000015
【図１５】
0005515914.tif 000016
【図１６】
0005515914.tif 000017
【図１７】
0005515914.tif 000018