(57)【特許請求の範囲】
【請求項１】
自装置が有する補助記憶装置、自装置に着脱可能な外部記憶メディア、及び自装置とネットワークを介して接続可能なＷｅｂサーバのそれぞれに、各々が記憶するソフトウェアに対応するソフトウェア名及びソフトウェアの説明文を含むソフトウェア情報が予め格納されており、前記補助記憶装置、前記外部記憶メディア、及び前記Ｗｅｂサーバからそれぞれ前記ソフトウェア情報を取得可能な情報処理装置に実行させるソフトウェア選択支援プログラムであって、
前記情報処理装置は、ソフトウェア名及びソフトウェアの説明文を対応づけたデータベースを有し、
前記補助記憶装置のインストール状況の変化、前記外部記憶メディアの挿入状況の変化、又は前記ネットワークへの接続状況の変化を、自装置の環境の変化として検知する環境変化検知機能と、
前記環境変化検知機能が自装置の環境の変化を検知した場合に、当該環境の変化があった前記補助記憶装置、前記外部記憶メディア、又は前記Ｗｅｂサーバから前記ソフトウェア情報を取得するソフトウェア情報取得機能と、
前記ソフトウェア情報取得機能が取得した前記ソフトウェア情報を用いて前記データベースを更新するデータベース更新制御機能と、
前記ソフトウェアを特定する特定文字列の入力操作を操作者に誘導する誘導画面を表示部に表示し、入力部を介して前記特定文字列を入力させる特定文字列入力画面表示制御機能と、
前記入力部を介して入力される前記特定文字列を用いて前記更新されたデータベースを検索し、前記特定文字列を含む当該ソフトウェアの説明文及び対応するソフトウェア名を取得する特定文字列検索機能と、
前記特定文字列検索機能で取得したソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を前記表示部に表示させる検索結果画面表示制御機能と、
を前記情報処理装置に実現させることを特徴とするソフトウェア選択支援プログラム。
【請求項２】
前記データベースは、前記ソフトウェア名毎に記憶するファイルパスの項目を有し、
前記ソフトウェア情報取得機能は、ＯＳを介して前記補助記憶装置、前記外部記憶メディア、及び前記Ｗｅｂサーバからファイルパスを取得し、
前記データベース更新制御機能は、前記ソフトウェア情報取得機能が取得した前記ファイルパスを用いて前記データベースを更新する、
ことを特徴とする請求項１に記載のソフトウェア選択支援プログラム。
【請求項３】
前記検索結果画面表示制御機能は、前記表示部に表示されたソフトウェア名の一覧のうち、いずれかのソフトウェア名を前記入力部を介して操作者に選択させる選択機能をさらに有し、
前記選択されたソフトウェア名に対応するソフトウェアを前記データベースに記憶されるファイルパスを用いてインストールするインストール機能、及び当該ソフトウェアを自動起動する起動機能、
をさらに前記情報処理装置に実現させることを特徴とする請求項２に記載のソフトウェア選択支援プログラム。
【請求項４】
前記検索結果画面表示制御機能は、前記表示部に表示されたソフトウェア名の一覧のうち、いずれか複数のソフトウェア名を前記入力部を介して操作者に選択させる選択機能をさらに有し、
前記選択された複数のソフトウェア名に対応するソフトウェアを前記データベースに記憶されているファイルパスを用いて記憶媒体にパッケージ化するパッケージ生成機能と、
をさらに前記情報処理装置に実現させることを特徴とする請求項２に記載のソフトウェア選択支援プログラム。
【請求項５】
前記ソフトウェアの説明文は、少なくともソフトウェアの機能の説明文と、ソフトウェアの変更点の説明文とを有する、
ことを特徴とする請求項１ないし請求項４の何れか一項に記載のソフトウェア選択支援プログラム。
【請求項６】
前記ファイルパスは、少なくとも前記情報処理装置内でのソフトウェアの実行ファイルパス、前記外部記憶媒体内のソフトウェアのインストールファイルパス、及び前記ネットワーク上のソフトウェアのインストーラパッケージ格納Ｗｅｂアドレスのいずれかである、
ことを特徴とする請求項２に記載のソフトウェア選択支援プログラム。
【請求項７】
前記検索結果画面表示制御機能が表示させる画面は、検索結果表示欄、ソフトウェア説明文表示欄、及びソフトウェア動作実行ボタンを含む、
ことを特徴とする請求項１ないし請求項６の何れか一項に記載のソフトウェア選択支援プログラム。
【請求項８】
前記検索結果表示欄は、前記情報処理装置にインストール済みのソフトウェアを表示するインストールソフトウェア表示欄と、前記情報処理装置にインストールされていないソフトウェアを表示する未インストールソフトウェア表示欄とを有する、
ことを特徴とする請求項７に記載のソフトウェア選択支援プログラム。
【請求項９】
前記インストールソフトウェア表示欄には、少なくとも前記ソフトウェア名と、ソフトウェア更新有無情報とが表示される、
ことを特徴とする請求項８に記載のソフトウェア選択支援プログラム。
【請求項１０】
前記検索結果画面表示制御機能は、並び替え条件によって前記インストール済みのソフトウェア名の並び替えを行い、前記インストールソフトウェア表示欄に表示する、
ことを特徴とする請求項８又は請求項９に記載のソフトウェア選択支援プログラム。
【請求項１１】
前記並び替え条件とは、名前、使用頻度、及び最終使用日のいずれかである、
ことを特徴とする請求項１０に記載のソフトウェア選択支援プログラム。
【請求項１２】
前記検索結果画面表示制御機能は、並び替え条件によって前記インストールされていないソフトウェア名の並び替えを行い、前記未インストールソフトウェア表示欄に表示する、
ことを特徴とする請求項８又は請求項９に記載のソフトウェア選択支援プログラム。
【請求項１３】
前記並び替え条件とは、名前、及びファイル日時のいずれかである、
ことを特徴とする請求項１２に記載のソフトウェア選択支援プログラム。
【請求項１４】
自装置が有する補助記憶装置、自装置に着脱可能な外部記憶メディア、及び自装置とネットワークを介して接続可能なＷｅｂサーバのそれぞれに、各々が記憶するソフトウェアに対応するソフトウェア名及びソフトウェアの説明文を含むソフトウェア情報が予め格納されており、前記補助記憶装置、前記外部記憶メディア、及び前記Ｗｅｂサーバからそれぞれ前記ソフトウェア情報を取得可能なソフトウェア選択支援装置であって、
ソフトウェア名及びソフトウェアの説明文を対応づけたデータベースと、
前記補助記憶装置のインストール状況の変化、前記外部記憶メディアの挿入状況の変化、又は前記ネットワークへの接続状況の変化を、自装置の環境の変化として検知する環境変化検知部と、
前記環境変化検知部が自装置の環境の変化を検知した場合に、当該環境の変化があった前記補助記憶装置、前記外部記憶メディア、又は前記Ｗｅｂサーバから前記ソフトウェア情報を取得するソフトウェア情報取得部と、
前記ソフトウェア情報取得部が取得した前記ソフトウェア情報を用いて前記データベースを更新するデータベース更新制御部と、
前記ソフトウェアを特定する特定文字列の入力操作を操作者に誘導する誘導画面を表示部に表示し、入力部を介して前記特定文字列を入力させる特定文字列入力画面表示制御部と、
前記入力部を介して入力される前記特定文字列を用いて前記更新されたデータベースを検索し、前記特定文字列を含む当該ソフトウェアの説明文及び対応するソフトウェア名を取得する特定文字列検索部と、
前記特定文字列検索部で取得したソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を前記表示部に表示させる検索結果画面表示制御部と、
を有することを特徴とするソフトウェア選択支援装置。
【請求項１５】
自装置が有する補助記憶装置、自装置に着脱可能な外部記憶メディア、及び自装置とネットワークを介して接続可能なＷｅｂサーバのそれぞれに、各々が記憶するソフトウェアに対応するソフトウェア名及びソフトウェアの説明文を含むソフトウェア情報が予め格納されており、前記補助記憶装置、前記外部記憶メディア、及び前記Ｗｅｂサーバからそれぞれ前記ソフトウェア情報を取得可能な情報処理装置が実行するソフトウェア選択支援方法であって、
前記情報処理装置は、ソフトウェア名及びソフトウェアの説明文を対応づけたデータベースを有し、
前記補助記憶装置のインストール状況の変化、前記外部記憶メディアの挿入状況の変化、又は前記ネットワークへの接続状況の変化を、自装置の環境の変化として検知するステップと、
前記自装置の環境の変化を検知した場合に、当該環境の変化があった前記補助記憶装置、前記外部記憶メディア、又は前記Ｗｅｂサーバから前記ソフトウェア情報を取得するステップと、
前記取得した前記ソフトウェア情報を用いて前記データベースを更新するステップと、
前記ソフトウェアを特定する特定文字列の入力操作を操作者に誘導する誘導画面を表示部に表示し、入力部を介して前記特定文字列を入力させるステップと、
前記入力部を介して入力される前記特定文字列を用いて前記更新されたデータベースを検索し、前記特定文字列を含む当該ソフトウェアの説明文及び対応するソフトウェア名を取得するステップと、
前記取得したソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を前記表示部に表示させるステップと、
を実行することを特徴とするソフトウェア選択支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア選択支援プログラム、ソフトウェア選択支援装置、及びソフトウェア選択支援方法に関する。
【背景技術】
【０００２】
従来、情報処理装置（例えば、ＰＣ(Personal Computer)）にてユーザが実行したい作業がある場合には、それを実行できるソフトウェアをＰＣにインストールし、又はＰＣにインストールされていれば起動する。そのため、ユーザは、ＰＣ上で実行したい作業を実行できるソフトウェアをユーザ自身で把握しておく必要があった。
【０００３】
この問題を解決するために、ユーザが目的の機能をキーワードとして入力すると、ＰＣにインストールされているソフトウェアの中からキーワードにあてはまる機能を持つソフトウェアを一覧として表示し、一覧の中からユーザが選択したソフトウェアを起動するシステムが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−０２９９９３号公報（段落００１８〜００２８、図１）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の技術では、例えば、記憶媒体に格納されたままで、まだＰＣにインストールされていないソフトウェアや、Ｗｅｂ上に格納されているソフトウェアを一覧として表示することができない。そのため、特許文献１に記載の技術では、表示されたソフトウェアの一覧を使用して、ＰＣにインストールされていないソフトウェアをインストールし、起動することができない。したがって、ユーザは、独自にＣＤ−ＲＯＭ(Compact Disk-Read Only Memory)等の記憶媒体、又はインターネット上から、該当するソフトウェアを探し出さなければならなかった。
【０００６】
本発明は前記問題に鑑みてなされたものであり、自装置にインストールされていないソフトウェアについても、キーワードに該当するソフトウェアを一覧として表示することが可能なソフトウェア選択支援プログラム、ソフトウェア選択支援装置、及びソフトウェア選択支援方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
前記目的を達成するため、本発明に係るソフトウェア選択支援プログラムは、自装置が有する補助記憶装置、自装置に着脱可能な外部記憶メディア、及び自装置とネットワークを介して接続可能なＷｅｂサーバのそれぞれに、各々が記憶するソフトウェアに対応するソフトウェア名及びソフトウェアの説明文を含むソフトウェア情報が予め格納されており、前記補助記憶装置、前記外部記憶メディア、及び前記Ｗｅｂサーバからそれぞれ前記ソフトウェア情報を取得可能な情報処理装置に実行させるソフトウェア選択支援プログラムであって、前記情報処理装置は、ソフトウェア名及びソフトウェアの説明文を対応づけたデータベースを有し、前記補助記憶装置のインストール状況の変化、前記外部記憶メディアの挿入状況の変化、又は前記ネットワークへの接続状況の変化を、自装置の環境の変化として検知する環境変化検知機能と、前記環境変化検知機能が自装置の環境の変化を検知した場合に、当該環境の変化があった前記補助記憶装置、前記外部記憶メディア、又は前記Ｗｅｂサーバから前記ソフトウェア情報を取得するソフトウェア情報取得機能と、前記ソフトウェア情報取得機能が取得した前記ソフトウェア情報を用いて前記データベースを更新するデータベース更新制御機能と、前記ソフトウェアを特定する特定文字列の入力操作を操作者に誘導する誘導画面を表示部に表示し、入力部を介して前記特定文字列を入力させる特定文字列入力画面表示制御機能と、前記入力部を介して入力される前記特定文字列を用いて前記更新されたデータベースを検索し、前記特定文字列を含む当該ソフトウェアの説明文及び対応するソフトウェア名を取得する特定文字列検索機能と、前記特定文字列検索機能で取得したソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を前記表示部に表示させる検索結果画面表示制御機能と、を前記情報処理装置に実現させることを特徴とする。
【０００９】
前記目的を達成するため、本発明に係るソフトウェア選択支援装置は、自装置が有する補助記憶装置、自装置に着脱可能な外部記憶メディア、及び自装置とネットワークを介して接続可能なＷｅｂサーバのそれぞれに、各々が記憶するソフトウェアに対応するソフトウェア名及びソフトウェアの説明文を含むソフトウェア情報が予め格納されており、前記補助記憶装置、前記外部記憶メディア、及び前記Ｗｅｂサーバからそれぞれ前記ソフトウェア情報を取得可能なソフトウェア選択支援装置であって、ソフトウェア名及びソフトウェアの説明文を対応づけたデータベースと、前記補助記憶装置のインストール状況の変化、前記外部記憶メディアの挿入状況の変化、又は前記ネットワークへの接続状況の変化を、自装置の環境の変化として検知する環境変化検知部と、前記環境変化検知部が自装置の環境の変化を検知した場合に、当該環境の変化があった前記補助記憶装置、前記外部記憶メディア、又は前記Ｗｅｂサーバから前記ソフトウェア情報を取得するソフトウェア情報取得部と、前記ソフトウェア情報取得部が取得した前記ソフトウェア情報を用いて前記データベースを更新するデータベース更新制御部と、前記ソフトウェアを特定する特定文字列の入力操作を操作者に誘導する誘導画面を表示部に表示し、入力部を介して前記特定文字列を入力させる特定文字列入力画面表示制御部と、前記入力部を介して入力される前記特定文字列を用いて前記更新されたデータベースを検索し、前記特定文字列を含む当該ソフトウェアの説明文及び対応するソフトウェア名を取得する特定文字列検索部と、前記特定文字列検索部で取得したソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を前記表示部に表示させる検索結果画面表示制御部と、を有することを特徴とする。
【００１０】
前記目的を達成するため、本発明に係るソフトウェア選択支援方法は、自装置が有する補助記憶装置、自装置に着脱可能な外部記憶メディア、及び自装置とネットワークを介して接続可能なＷｅｂサーバのそれぞれに、各々が記憶するソフトウェアに対応するソフトウェア名及びソフトウェアの説明文を含むソフトウェア情報が予め格納されており、前記補助記憶装置、前記外部記憶メディア、及び前記Ｗｅｂサーバからそれぞれ前記ソフトウェア情報を取得可能な情報処理装置が実行するソフトウェア選択支援方法であって、前記情報処理装置は、ソフトウェア名及びソフトウェアの説明文を対応づけたデータベースを有し、前記補助記憶装置のインストール状況の変化、前記外部記憶メディアの挿入状況の変化、又は前記ネットワークへの接続状況の変化を、自装置の環境の変化として検知するステップと、前記自装置の環境の変化を検知した場合に、当該環境の変化があった前記補助記憶装置、前記外部記憶メディア、又は前記Ｗｅｂサーバから前記ソフトウェア情報を取得するステップと、前記取得した前記ソフトウェア情報を用いて前記データベースを更新するステップと、前記ソフトウェアを特定する特定文字列の入力操作を操作者に誘導する誘導画面を表示部に表示し、入力部を介して前記特定文字列を入力させるステップと、前記入力部を介して入力される前記特定文字列を用いて前記更新されたデータベースを検索し、前記特定文字列を含む当該ソフトウェアの説明文及び対応するソフトウェア名を取得するステップと、前記取得したソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を前記表示部に表示させるステップと、を実行することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、自装置にインストールされていないソフトウェアについても、キーワードに該当するソフトウェアを一覧として表示することができる。これにより、自装置にインストールされていないソフトウェアについても、一覧の中からユーザが選択したいソフトウェアを起動することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１実施形態に係るソフトウェア選択支援システムの構成図である。
【図２】第１実施形態に係るソフトウェア選択支援装置の機能構成図である。
【図３】第１実施形態に係るソフトウェア選択支援装置の記憶装置に記憶されるデータ構成図である。
【図４】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（１）である。
【図５】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（６−１）である。
【図６】第１実施形態に係るソフトウェア選択支援装置のデータベース更新処理を説明するフローチャート（１）である。
【図７】第１実施形態に係るソフトウェア選択支援装置のデータベース更新処理を説明するフローチャート（２）である。
【図８】第１実施形態に係るソフトウェア選択支援装置のデータベース更新処理を説明するフローチャート（３）である。
【図９】第１実施形態に係るソフトウェア選択支援装置のデータベース更新処理を説明するフローチャート（４）である。
【図１０】第１実施形態に係るソフトウェア選択支援装置のソフトウェア検索処理を説明するフローチャートである。
【図１１】第１実施形態に係るソフトウェア選択支援装置のソフトウェア選択処理を説明するフローチャートである。
【図１２】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（２−１）である。
【図１３】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（２−２）である。
【図１４】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（３−１）である。
【図１５】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（３−２）である。
【図１６】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（４−１）である。
【図１７】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（４−２）である。
【図１８】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（５−１）である。
【図１９】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（５−２）である。
【図２０】第１実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（６−１）である。
【図２１】第２実施形態に係るソフトウェア選択支援装置の機能構成図である。
【図２２】第２実施形態に係るソフトウェア選択支援装置の記憶装置に記憶されるデータ構成図である。
【図２３】第２実施形態に係るソフトウェア選択支援装置の出力装置に出力される表示画面（１）である。
【発明を実施するための形態】
【００１３】
≪第１実施形態に係るソフトウェア選択支援システムの構成≫
＜概要＞
図１は、第１実施形態に係るソフトウェア選択支援システム１の構成図である。
ソフトウェア選択支援システム１は、ソフトウェア選択支援装置としてのＰＣ１００、及びＷｅｂサーバ１０１を備えて構成され、ＰＣ１００、及びＷｅｂサーバ１０１は、ネットワーク１０２を介して接続される。
【００１４】
前提として、補助記憶装置２０２、外部記憶メディア２０８、及びＷｅｂサーバ１０１には、ソフトウェアの機能情報（例えば、Ｒｅａｄｍｅ．ｔｘｔ等）と共に種々のソフトウェアが格納されている。
第１実施形態に係るＰＣ（ソフトウェア選択支援装置）１００は、補助記憶装置２０２に格納される図示しないソフトウェア運用支援プログラム（ソフトウェア選択支援プログラム）を制御装置２０に読み込ませて実行することで、以下の処理を行う。
【００１５】
ＰＣ１００の環境（ＰＣ１００のインストール済みソフトウェアの状況、外部記憶メディア２０８の挿入有無、ネットワーク１０２への接続有無）の変化を検知して、補助記憶装置２０２、外部記憶メディア２０８、及びＷｅｂサーバ１０１からソフトウェアの機能情報を取得し、取得したソフトウェアの機能情報を補助記憶装置２０２内のデータベースに格納する。
【００１６】
次に、ＰＣ１００は、ソフトウェアの機能をキーワードとする検索を実行するための入力を受け付けると、補助記憶装置２０２内のデータベースに格納されるソフトウェアの機能情報を検索し、機能情報にキーワードを含むソフトウェアのソフトウェア名を表示部としての入出力装置２０７に表示する。
ユーザは、入出力装置２０７に表示されたソフトウェア名の一覧の中から任意の一つを入力部を介して選択し、ＰＣ１００は、選択されたソフトウェアのインストール、起動、パッケージ生成等を行う。以下、ソフトウェア選択支援システム１の各構成装置について図１を参照して説明する。
【００１７】
＜ＰＣ＞
ＰＣ（ソフトウェア選択支援装置）１００は、ソフトウェアを実行可能な情報処理装置である。ＰＣ１００は、制御装置２０、補助記憶装置２０２、インタフェース装置（以下、省略して「ＩＦ装置」と呼ぶときがある）２０６、入出力装置２０７、及びメディア制御装置２０９を備えている。なお、外部記憶メディア２０８は、メディア制御装置２０９に挿入され、ＰＣ１００の外部記憶装置として動作する。以下、ＰＣ１００が備える各装置を説明する。
【００１８】
（制御装置）
制御装置２０は、ＣＰＵ(Central Processing Unit)２００、メモリ装置２０１、インタフェースコントローラ２０３（以下、省略して「ＩＦコントローラ２０３」と呼ぶときがある）、入出力コントローラ２０４、及び外部記憶コントローラ２０５を含んで構成される。それぞれの装置は、システムバス２１０を介して通信する。
【００１９】
制御装置２０を構成するＣＰＵ２００は、ＰＣ１００を構成する各装置の制御、ならびにメモリ装置２０１及び補助記憶装置２０２に格納されるデータの演算を行う。メモリ装置２０１は、ＣＰＵ２００で直接処理できるデータが格納される。ＣＰＵ１００は、補助記憶装置２０２からプログラム及びデータを読み込み、メモリ装置２０１に一旦格納した後、これらのプログラム及びデータに基づいて所定の処理を行う。
ＩＦコントローラ２０３、入出力コントローラ２０４、及び外部記憶コントローラは、例えば、サウスブリッジの役割を担うチップセットである。ＩＦコントローラ２０３は、ネットワーク１０２と接続するＩＦ装置２０６を制御する。入出力コントローラ２０４は、入出力装置２０７を制御する。外部記憶コントローラ２０５は、外部記憶メディア２０８を制御する。
【００２０】
（補助記憶装置）
補助記憶装置２０２は、電源が切れてもデータを保持する不揮発性記憶装置であって、例えばＨＤＤ(Hard Disk Drive)によって構成されている。補助記憶装置２０２には、ソフトウェア運用支援プログラム（図示せず）、ソフトウェア（図示せず）、ソフトウェア名やソフトウェアの説明文等を含むソフトウェアの情報（図示せず）、データベース３０８（図２参照）に格納されるソフトウェア情報４０（図３参照）等が記憶される。
【００２１】
ソフトウェア運用支援プログラム（ソフトウェア選択支援プログラム）は、制御装置２０に読み込まれて実行されることで、図２に示す種々の機能を実現する。ソフトウェア運用支援プログラムの詳細については後記する。
【００２２】
補助記憶装置２０２に格納されるソフトウェアは、文書作成ソフトなどのアプリケーションソフトウェア、プリンタドライバなどのドライバソフトウェア等が該当する。
ソフトウェアの情報（図示せず）は、例えばＲｅａｄｍｅ．ｔｘｔ等のファイルに格納され、ソフトウェア名、ソフトウェアの説明文等が含まれる。ここで、ソフトウェア名には、ソフトウェアを一意に特定できる文字列が付加されている。例えば、検索するソフトウェア名には共通する文字列が付加される。ソフトウェアの情報は、ＯＳ(Operating System)３１６（図２参照）を用いてソフトウェアが補助記憶装置２０２にインストールされる際に、補助記憶装置２０２に同時に格納される。
ソフトウェア情報４０の詳細は後記する。
【００２３】
（ＩＦ装置、入出力装置）
ＩＦ装置２０６は、例えば、ＬＡＮ用のアダプタ装置、モデム、ＩＳＤＮ通信回線用のＴＡ等であって、Ｗｅｂサーバ１０１とデータの送受信を行う装置である。
入出力装置２０７は、説明の便宜上、入力装置と出力装置を合わせて表記したものであり、データの入出力を行う装置である。入力部としての入力装置は、例えば、キーボード、マウス等が該当する。表示部としての出力装置は、ディスプレイ等が該当する。
【００２４】
（外部記憶メディア、メディア制御装置）
外部記憶メディア２０８は、例えば、ＣＤ(Compact Disc)、ＦＤ(Flexible Disc)、ＵＳＢメモリ等である。外部記憶メディア２０８は、メディア制御装置２０９に挿入、又はメディア制御装置２０９を介してＰＣ１００に接続される。メディア制御装置２０９は、例えば、光ディスクドライブ、磁気ディスクドライブ、ＵＳＢポート等である。
【００２５】
外部記憶メディア２０８には、ソフトウェア（図示せず）、ソフトウェアの情報（図示せず）が記憶される。外部記憶メディア２０８に記憶されるソフトウェア、及びソフトウェアの情報は、補助記憶装置２０２に記憶されるものと基本的に同様である。違いとして、補助記憶装置２０２に格納されるソフトウェアのうち、検索するソフトウェアのソフトウェア名には共通する文字列が付加されていたが、外部記憶メディア２０８に格納されるソフトウェアのソフトウェア名には、共通する文字列を付加しなくてもよい。外部記憶メディアに格納されるすべてのソフトウェアを検索対象としているからである。その代わりに、外部記憶メディア２０８内には当該メディアが検索対象であることを示す、特定ファイルが格納される。例えば、外部記憶メディア２０８のルートに格納されるＲｅａｄｍｅ．ｔｘｔファイル内に特定の文字列が格納される。
【００２６】
＜Ｗｅｂサーバ＞
Ｗｅｂサーバ１０１は、ソフトウェアを配信するサーバであり、ＰＣ１００から送信された情報に基づいて格納されたデータベースを検索し、その結果を返信できる情報処理装置である。Ｗｅｂサーバ１０１には、ソフトウェア（図示せず）、ソフトウェアの情報（図示せず）が記憶される。Ｗｅｂサーバ１０１に記憶されるソフトウェア、及びソフトウェアの情報は、補助記憶装置２０２に記憶されるものと基本的に同様である。違いとして、補助記憶装置２０２に格納されるソフトウェアのうち、検索するソフトウェアのソフトウェア名には共通する文字列が付加されていたが、Ｗｅｂサーバ１０１に格納されるソフトウェアのソフトウェア名には、共通する文字列を付加しなくてもよい。その代わりに、Ｗｅｂサーバ１０１のアドレスを、補助記憶装置２０２に格納されるソフトウェア運用支援プログラム内に情報として持つようにする。例えば、ソフトウェア運用支援プログラムをＰＣ１００にインストールする際に、あらかじめ設定する。
【００２７】
≪第１実施形態に係るソフトウェア選択支援装置の機能≫
（概要）
図２は、第１実施形態に係るソフトウェア選択支援装置の機能構成図である。
ＰＣ（ソフトウェア選択支援装置）１００の補助記憶装置２０２は、データベース３０８、及びＰＣ状態記憶部３１１を記憶する。
ＰＣ（ソフトウェア選択支援装置）１００の制御装置２０は、イベント検知部３０１、ＰＣ状態取得部３０２、ＰＣ内検索部３０３、外部記憶メディア検索部３０４、Ｗｅｂデータ検索部３０５、データベース検索部３０６、データベース更新部３０７、取得情報記憶部３０９、表示情報格納部３１０、インストール部３１２、起動部３１３、パッケージ生成部３１４、画面表示制御部３１５、及びＯＳ３１６を備える。
【００２８】
＜補助記憶装置（記憶装置）に記憶される情報＞
（データベース）
図３は、第１実施形態に係るソフトウェア選択支援装置（ＰＣ１００）の記憶装置２０２に記憶されるデータベースのデータ構成図である。
図３に示すように、データベース３０８には、ソフトウェア情報４０として、ＩＤ４００、ソフトウェア名４０１、説明文パス４０２、変更点パス４０３、実行パス４０４、アップデートパス４０５、Ｗｅｂパス４０６、バージョン４０７、アップデートバージョン４０８、及びメディア名４０９が格納されている。データベース３０８は、ＰＣ１００の電源がＯＦＦになっても情報を保持する。
【００２９】
ＩＤ(identification)４００は、データベース３０８への情報登録時に、ソフトウェアに割り振られる番号である。ソフトウェア名４０１は、登録するソフトウェアの名前である。説明文パス４０２は、各ソフトウェアに関する説明文を記載したファイルの格納場所を表すパスである。変更点パス４０３は、各ソフトウェアに関する変更点を記載したファイルの格納場所を表すパスである。実行パス４０４は、各ソフトウェアの実行ファイルの格納場所を表すパスである。ただし、インストールされていないものに関しては、インストーラやインストールパッケージの格納場所を表すパスが格納される。
【００３０】
アップデートパス４０５は、既にＰＣ１００にインストールされているソフトウェアや外部記憶メディア２０８から情報を取得したソフトウェアに関して、既に情報を取得したソフトウェアのバージョンよりも高いバージョンのソフトウェアを外部記憶メディア２０８あるいはＷｅｂサーバ１０１から取得した場合に、そのインストーラやインストールパッケージの格納場所を表すパスが格納される。Ｗｅｂパス４０６は、パッケージ作成のボタンがクリックされたときに、パッケージに格納されるアイテムにおいて、Ｗｅｂ上のインストーラパッケージの格納場所を表すファイルパスが格納される。
【００３１】
バージョン４０７は、登録するソフトウェアのバージョン情報が格納される。アップデートバージョン４０８は、既にＰＣ１００にインストールされているソフトウェアや外部記憶メディア２０８から情報を取得したソフトウェアに関して、既に情報を取得したソフトウェアのバージョンよりも高いバージョンのソフトウェアを外部記憶メディア２０８あるいはＷｅｂ上から取得した場合にそのバージョンが格納される。メディア名４０９は、外部記憶メディア２０８上のソフトウェアが最新の場合に、外部記憶メディア名が格納される。
【００３２】
（ＰＣ状態記憶部）
ＰＣ状態記憶部３１１（図２参照）は、該当メディア挿入有無と、該当メディア名と、オンライン／オフラインの情報とを格納する。また、ＰＣ状態記憶部３１１は、Ｗｅｂサーバ１０１のアドレスを格納するようにしてもよい。ＰＣ状態記憶部３１１は、ＰＣ１００の電源がＯＦＦになっても情報を保持する。
【００３３】
＜制御装置が備える機能＞
図２に示す制御装置２０内の機能は、図示しないソフトウェア運用支援プログラムが制御装置２０に読み込まれて実行されることで実現される。
（イベント検知部）
イベント検知部３０１は、ユーザ操作によるイベント（入出力装置２０７の画面上のボタンクリックなど）の検知を行い、データベース検索部３０６、インストール部３１２、起動部３１３、パッケージ生成部３１４、及び画面表示制御部３１５への処理実行の命令を出す。
【００３４】
（ＰＣ状態取得部）
ＰＣ状態取得部３０２は、ＯＳ３１６を監視することにより、ＰＣ１００の環境を監視する。環境に変化があった場合に補助記憶装置２０２のＰＣ状態記憶部３１１にＰＣ１００の環境情報のデータを格納し、ＰＣ内検索部３０３や外部記憶メディア検索部３０４、Ｗｅｂデータ検索部３０５への処理実行の命令を出す。ＰＣ１００の環境とは、ＰＣ１００へのインストール済みソフトウェアの状況、外部記憶メディア２０８（図１参照）の挿入状況、ネットワーク１０２（図１参照）への接続状況等である。
【００３５】
（１）ソフトウェアがインストール（又はアンインストール）された場合
ＰＣ状態取得部３０２は、ＰＣ１００にソフトウェアがインストール（又はアンインストール）された場合に、ＰＣ内検索部３０３に処理実行の命令を出す。
【００３６】
（２）外部記憶メディアが挿入（又は取り出し）された場合
ＰＣ状態取得部３０２は、外部記憶メディア２０８がメディア制御装置２０９（図１参照）に挿入された場合に、その外部記憶メディア２０８が検索対象のメディアであるか（例えば、ルートにあるＲｅａｄｍｅ．ｔｘｔファイル内に特定の文字列が入っているか）を確認する。ＰＣ状態取得部３０２は、検索対象のメディアであると判断した場合に、外部記憶メディア検索部３０４に処理実行の命令を出し、かつ、ＰＣ状態記憶部３１１に該当メディア挿入済みであるとのデータを格納する。ＰＣ状態取得部３０２は、外部記憶メディア２０８が取り出された場合に、ＰＣ状態記憶部３１１にメディアが挿入されていないというデータを格納する。
【００３７】
（３）ネットワークへの接続が有効（オンライン）（又はネットワークへの接続が無効（オフライン））になった場合
ＰＣ状態取得部３０２は、ネットワークへの接続が有効になった場合に、ＰＣ状態記憶部３１１に格納されているＷｅｂサーバ１０１のアドレスにアクセスできるかを確認する。Ｗｅｂサーバ１０１のアドレスにアクセスできる場合に、ＰＣ状態取得部３０２は、Ｗｅｂデータ検索部３０５に処理実行の命令を出し、かつ、ＰＣ状態記憶部３１１にオンラインであるとのデータを格納する。ＰＣ状態取得部３０２は、Ｗｅｂサーバ１０１のアドレスにアクセスできない場合やネットワークへの接続が無効になった場合には、ＰＣ状態記憶部３１１にオフラインであるというデータを格納する。
【００３８】
（ＰＣ内検索部）
ＰＣ内検索部３０３は、ＰＣ１００内にインストールされたソフトウェアのソフトウェア名を取得し、ソフトウェア名に特定の文字列を含んだソフトウェアのみ、さらに詳細なソフトウェアの情報（実行ファイルパス、バージョン、説明文ファイルパスなど）を取得し、取得したソフトウェアの情報を取得情報記憶部３０９に格納する。ＰＣ内検索部３０３は、格納が終了したら、データベース検索部３０６へ処理実行の命令を出す。
【００３９】
（外部記憶メディア検索部）
外部記憶メディア検索部３０４は、外部記憶メディア２０８に格納されるソフトウェアの情報を取得し、取得情報記憶部３０９に格納する。外部記憶メディア検索部３０４は、格納が終了したら、データベース検索部３０６へ処理実行の命令を出す。
【００４０】
（Ｗｅｂデータ検索部）
Ｗｅｂデータ検索部３０５は、ＰＣ状態記憶部３１１に記憶されるＷｅｂサーバ１０１のアドレスに基づいてＷｅｂサーバ１０１にアクセスし、Ｗｅｂサーバ１０１からソフトウェアの情報を取得し、取得情報記憶部３０９に格納する。Ｗｅｂデータ検索部３０５は、格納が終了したら、データベース検索部３０６へ処理実行の命令を出す。
【００４１】
（データベース検索部）
データベース検索部３０６は、データベース更新制御部３０６Ａ、キーワード検索部３０６Ｂ、及びソフトウェア名検索部３０６Ｃ、の３つの機能を備える。
（１）データベース更新制御部
データベース更新制御部３０６Ａは、データベース３０８の情報の更新を制御する。データベース更新制御部３０６Ａは、データベース３０８からソフトウェア名をキーに１つのソフトウェアの情報を検索し、データベース３０８から情報が取得できない場合に、取得情報記憶部３０９に格納されるソフトウェアの情報に基づいてソフトウェア説明ファイル（機能説明文や変更点など）の複製を生成し、データベース更新部３０７へ送り、データベース更新部３０７に処理実行の命令を出す。一方、データベース３０８から情報が取得できた場合に、データベース更新制御部３０６Ａは、データベース３０８の情報と取得情報記憶部３０９の情報とを比較し、取得情報記憶部３０９の情報のバージョンが高いときには、取得情報記憶部３０９の情報でデータベース３０８を更新する。データベース更新制御部３０６Ａは、データベース３０８を更新する場合に、取得情報記憶部３０９の情報をデータベース更新部３０７へ送り、データベース更新部３０７に処理実行の命令を出す。
【００４２】
（２）キーワード検索部
キーワード検索部３０６Ｂは、データベース３０８から複数のソフトウェアの情報を、図示しないデバイスドライバを介して取得する。具体的には、キーワード検索部３０６Ｂは、特定文字列の入力操作を操作者に誘導する特定文字列入力画面（図４参照）で、入力されたキーワードを含む説明文ファイル（図３に示す説明文パス４０２によって指定される格納先のファイル）を持つソフトウェア情報４０を取得し、取得した情報を表示情報格納部３１０に格納する。
【００４３】
（３）ソフトウェア名検索部
ソフトウェア名検索部３０６Ｃは、データベース３０８から１つのソフトウェアの情報を、図示しないデバイスドライバを介して取得する。具体的には、ソフトウェア名検索部３０６Ｃは、取得したソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を前記表示部に表示する検索結果画面（図４参照（本実施形態では、特定文字列の入力を誘導する画面と同一であるが、異なる画面としてもよい））で、ソフトウェア名の一覧に表示されたソフトウェアの内、選択されたソフトウェアの情報を取得する。
【００４４】
（データベース更新部）
データベース更新部３０７は、データベース更新制御部３０６Ａから送られてきたデータで、図示しないデバイスドライバを介してデータベース３０８を更新する。
【００４５】
（取得情報記憶部）
取得情報記憶部３０９は、メモリ装置２０１内に領域として確保される。取得情報記憶部３０９には、ＰＣ内検索部３０３、外部記憶メディア検索部３０４、及びＷｅｂデータ検索部３０５で取得した情報が一時的に格納される。取得情報記憶部３０９は、一時的な格納場所のため、ＰＣ内検索部３０３、外部記憶メディア検索部３０４、及びＷｅｂデータ検索部３０５の各部の情報を格納する前にすべての情報が削除される。
【００４６】
（表示情報格納部）
表示情報格納部３１０は、メモリ装置２０１内に領域として確保される。表示情報格納部３１０は、データベース検索部３０６から送られてきたソフトウェアの情報を、ソフトウェアのＰＣ１００へのインストール有無によって、振り分けて格納する。表示情報格納部３１０の内、ＰＣ１００にインストール済みのソフトウェアの情報の格納場所をインストールアイテム３１０Ａとし、インストール未実行のソフトウェアの情報の格納場所を未インストールアイテム３１０Ｂとする。
【００４７】
（インストール部）
インストール部３１２は、入出力装置２０７（図１参照）の画面上に表示されるインストールボタン（例えば図１２の符号５０５）がクリックされたときに、イベント検知部３０１から処理実行命令を受け、選択されたソフトウェアの情報をデータベース検索部３０６から取得し、取得したソフトウェアの情報を基にして選択されたソフトウェアをインストールする。
【００４８】
（起動部）
起動部３１３は、入出力装置２０７の画面上に表示される起動ボタン（例えば図４の符号５０５）がクリックされたときに、イベント検知部３０１から処理実行命令を受け、選択されたソフトウェアの情報をデータベース検索部３０６から取得し、取得したソフトウェアの情報を基にして選択されたソフトウェアを起動する。
【００４９】
（パッケージ生成部）
パッケージ生成部３１４は、入出力装置２０７の画面上に表示されるパッケージ生成ボタン（例えば図５の符号６０２）がクリックされたときに、イベント検知部３０１から処理実行命令を受け、選択されたソフトウェアの情報をデータベース検索部３０６から取得し、取得したソフトウェアの情報を基にして選択されたソフトウェアをパッケージ化する。
【００５０】
（画面表示制御部）
画面表示制御部３１５は、キーワード入力画面表示制御部３１５Ａ、検索結果画面表示制御部３１５Ｂ、及びパッケージ作成画面表示制御部（図示せず）を備えて構成され、例えば、図４に示す画面を表示部に表示させる。図４は、入出力装置２０７に表示されるインストール及び起動を実行する画面である。
キーワード画面表示制御部３１５Ａは、ソフトウェアの何れかを特定する特定文字列（キーワード）の入力操作を操作者に誘導する特定文字列入力画面を表示部２０７に表示する。検索結果画面表示制御部３１５Ｂは、ソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を含んで構成される検索結果画面を表示部２０７に表示する。本実施形態では、特定文字列入力画面と検索結果画面とを同一画面（例えば、図４）としているが、異なる画面としてもよい。
【００５１】
キーワード画面表示制御部３１５Ａは、さらに、図示しないキーワード入力欄制御部、及び検索実行ボタン制御部を備えて構成される。キーワード入力欄制御部は、キーワード入力欄５００（図４参照）を表示する。検索実行ボタン制御部は、検索実行ボタン５０１（図４参照）を表示する。
キーワード入力欄５００は、入出力装置２０７を介して、ユーザからのソフトウェアの機能に関するキーワードが入力される場所である。検索実行ボタン５０１は、キーワード入力欄５００を入力後に、入出力装置２０７を介してユーザからのキーワードに基づく検索指示を実行するボタンである。
【００５２】
検索結果画面表示制御部３１５Ｂは、さらに、図示しないインストール済みソフトウェア名表示欄制御部、未インストールソフトウェア名表示欄制御部、ソフトウェア説明欄制御部、及びソフトウェア動作実行ボタン制御部を備えて構成される。
インストール済みソフトウェア名表示欄制御部は、インストール済みソフトウェア名表示欄５０２（図４参照）を表示する。未インストールソフトウェア名表示欄制御部は、未インストールソフトウェア名表示欄５０３（図４参照）を表示する。ソフトウェア説明欄制御部は、ソフトウェア説明欄５０４（図４参照）を表示する。ソフトウェア動作実行ボタン制御部は、ソフトウェア動作実行ボタン５０５（図４参照）を表示する。
【００５３】
インストール済みソフトウェア名表示欄５０２は、ＰＣ１００にインストール済みのソフトウェアの内、キーワード入力欄５００を介して入力されたキーワードと機能が一致するソフトウェアのソフトウェア名を表示する部分である。未インストールソフトウェア名表示欄５０３は、ＰＣ１００にインストールされていないが、Ｗｅｂサーバ１０１又は外部記憶メディア２０７に格納されているソフトウェアの内、キーワード入力欄５００を介して入力されたキーワードと機能が一致するソフトウェアのソフトウェア名を表示する部分である。
【００５４】
インストール済みソフトウェア名表示欄５０２、又は未インストールソフトウェア名表示欄５０３に表示されるソフトウェアは、ユーザが入出力装置２０７（図１参照）を介して選択することができる。未インストールソフトウェア名表示欄５０３は、ソフトウェア名ごとにチェックボックスを備え、チェックボックスに複数のチェックを行うことで、複数の未インストールソフトウェアを選択することができる。未インストールソフトウェア名表示欄５０３のチェックボックスは、複数ソフトウェアの一括インストールを実現するために構成されている。また、インストール済みソフトウェア名表示欄５０２には、Ｗｅｂサーバ１０１又は外部記憶メディア２０７に新しいバージョンのソフトウェアがある場合に、それがユーザに分かる表示を行う（例えば「Ｎｅｗ！」等のアイコンを表示する）。
【００５５】
ソフトウェア説明欄５０４は、インストール済みソフトウェア名表示欄５０２、又は未インストールソフトウェア名表示欄５０３に表示されるソフトウェアが、ユーザに選択された場合に、選択されたソフトウェアの説明を表示する場所である。ソフトウェア説明欄５０４には、具体的には、ソフトウェアの説明ファイルの内容を表示する。
【００５６】
ソフトウェア動作実行ボタン５０５は、インストール済みソフトウェア名表示欄５０２、又は未インストールソフトウェア名表示欄５０３に表示されるソフトウェアの内ユーザに選択されたソフトウェアに対する動作指示を実行するボタンである（警告文が表示される場合がある）。ソフトウェア動作実行ボタン５０５の表示は、選択されたソフトウェアによって変更される。例えば、インストール済みソフトウェア名表示欄５０２のソフトウェアが選択された場合に、図４に示すように「起動ボタン５０５」を表示する。また、未インストールソフトウェア名表示欄５０３のソフトウェアが選択された場合に、図示しないが、「インストールボタン」を表示したり、選択さえたインストーラにアクセスできないとき（例えば、インストーラがＷｅｂサーバ１０１に格納されているが、ネットワーク１０２の接続が無効になっているとき）には、警告文として「インターネットに接続してください」等の文字列が表示される。
【００５７】
（パッケージ作成画面表示制御部）
パッケージ作成画面表示制御部（図示せず）は、選択された複数のソフトウェアを、データベース３０８に記憶されているファイルパスを用いて記憶媒体にパッケージ化する。パッケージ作成画面表示制御部は、パッケージ用キーワード入力画面表示制御部、及びパッケージ用検索結果画面表示部（いずれも図示せず）を備えて構成され、図５に示す画面を表示する。図５は、入出力装置２０７に表示されるパッケージ作成を実行する画面である。
【００５８】
パッケージ用キーワード入力画面表示制御部は、ソフトウェアの何れかを特定する特定文字列（キーワード）の入力操作を操作者に誘導する特定文字列入力画面を表示部２０７に表示する。パッケージ用検索結果画面表示制御部は、ソフトウェア名の一覧、及び少なくとも一つのソフトウェアの説明文を含んで構成される検索結果画面を表示部２０７に表示する。本実施形態では、特定文字列入力画面と検索結果画面とを同一画面（例えば、図５）としているが、異なる画面としてもよい。なお、パッケージ用キーワード入力画面表示制御部は、キーワード入力画面表示制御部３１５Ａと同様なので説明を省略する。
【００５９】
パッケージ用検索結果画面表示制御部は、さらに、図示しない検索ソフトウェア情報表示欄制御部、パッケージ対象ソフトウェア名表示欄制御部、パッケージ用ソフトウェア説明欄制御部、及びパッケージ作成実行ボタン制御部を備えて構成される。なお、パッケージ用ソフトウェア説明欄制御部は、ソフトウェア説明欄制御部と同様なので説明を省略する。
【００６０】
検索ソフトウェア情報表示欄制御部は、検索ソフトウェア情報表示欄６００（図５参照）を表示する。パッケージ対象ソフトウェア名表示欄制御部は、パッケージ対象ソフトウェア名表示欄６０１（図５参照）を表示する。パッケージ作成実行ボタン制御部は、パッケージ作成実行ボタン６０２（図５参照）を表示する。
【００６１】
検索ソフトウェア情報表示欄６００は、ＰＣ１００、Ｗｅｂサーバ１０１、又は外部記憶メディア２０８に格納されているソフトウェアの内、キーワード入力欄５００（図５参照）を介して入力されたキーワードと機能とが一致するソフトウェアのソフトウェア名及びＰＣ１００へのインストール状態を表示する部分である。検索ソフトウェア情報表示欄６００は、ソフトウェア情報ごとにチェックボックスを備え、チェックボックスに複数のチェックを行うことで、検索された複数のソフトウェアを選択することができる。
【００６２】
パッケージ対象ソフトウェア名表示欄６０１は、検索ソフトウェア情報表示欄６００に表示されるソフトウェアの内、パッケージに格納するソフトウェア名を表示する部分である。パッケージ対象ソフトウェア名表示欄６０１には、検索ソフトウェア情報表示欄６００のチェックボックスにチェックを行い、ボタン６０３をクリックすることで、チェックされたソフトウェアが移動し、表示される。また、逆に、パッケージ対象ソフトウェア名表示欄６０１に表示されるソフトウェアを選択し、ボタン６０４をクリックすることで、検索ソフトウェア情報表示欄６００に選択されたソフトウェアが移動し、表示される。
【００６３】
パッケージ作成実行ボタン６０２は、パッケージ対象ソフトウェア名表示欄６０１に表示されるソフトウェアにおけるパッケージ作成指示を実行するボタンである。
【００６４】
≪第１実施形態に係るソフトウェア選択支援装置のデータベース更新処理≫
図６乃至図９は、第１実施形態に係るソフトウェア選択支援装置１００のデータベース３０８更新処理を説明するためのフローチャートである。以下、図６乃至図９を参照して、ソフトウェア選択支援装置１００のデータベース３０８更新処理を説明する。なお、ソフトウェア選択支援装置１００のデータベース３０８更新処理は、図２に示す、ＰＣ状態取得部３０２、ＰＣ内検索部３０３、外部記憶メディア検索部３０４、Ｗｅｂデータ検索部３０５、データベース更新制御部３０６Ａ、及び取得情報記憶部３０９により実現される。
【００６５】
図６に示す処理は、図２に示すＰＣ状態取得部３０２が、ＯＳ３１６を監視することでＰＣ１００の環境の変化を検知することにより開始する。ここで、ＰＣ１００の環境とは、ＰＣ１００へのインストール済みソフトウェアの状況、外部記憶メディア２０８の挿入状況、ネットワーク１０２への接続状況である。ＰＣ状態取得部３０２は、検地した環境変化が、ＰＣ１００のどの環境の変化であるのかを判定する（ステップＳ７０）。
【００６６】
ＰＣ１００に格納さえるインストール済みソフトウェアの状況に変化があった場合に処理はステップＳ７１に進み、外部記憶メディア２０８の挿入状況に変化があった場合に処理はステップＳ７２に進み、ネットワーク１０２の接続状況に変化があった場合に処理はステップＳ７３に進む。また、ソフトウェア運用支援プログラムがＰＣ１００にインストールされた場合には、ＰＣ１００のすべての環境が変化したものとして、ステップＳ７１、ステップＳ７２、及びステップＳ７３のすべての処理を実行するようにする。
【００６７】
図７は、ステップＳ７０で、ＰＣ１００に格納されるソフトウェアのインストール状況に変化があった場合に行われるステップＳ７１の処理を示すフローチャートである。
ＰＣ内検索部３０３は、補助記憶装置３０８に格納された検索対象であるすべてのソフトウェアの情報を取得し、取得したソフトウェアの情報を取得情報記憶部３０９に格納する（「インストール済みソフトウェア情報一覧取得」ステップＳ７００）。
【００６８】
次に、データベース更新制御部３０６Ａは、取得情報記憶部３０９に格納されたソフトウェア名を用いて、データベース３０８を検索し、ソフトウェア情報４０を取得する（ステップＳ７０１）。
【００６９】
次に、データベース更新制御部３０６Ａは、ステップＳ７０１でソフトウェア情報４０を取得できたか否かの判定を行い、これによって、取得情報記憶部３０９に格納されたソフトウェアの情報がデータベース３０８に記載済みであるか否かを判定する（「ＤＢ記載済み？」ステップＳ７０２）。取得できた場合（ステップＳ７０２“Ｙｅｓ”）に、処理はステップＳ７０４に進み、取得できなかった場合（ステップＳ７０２“Ｎｏ”）に、処理はステップＳ７０３に進む。
【００７０】
ステップＳ７０２でＮｏと判定された場合に、データベース更新制御部３０６Ａは、取得情報記憶部３０９からソフトウェアの情報を取得し、取得したソフトウェアの情報をデータベース更新部３０７に渡し、データベース更新部３０７は、新しいＩＤ４００を割り振って渡された情報をデータベース３０８に格納する（「ＤＢ新規追加」ステップＳ７０３）。
【００７１】
一方、ステップＳ７０２でＹｅｓと判定された場合に、データベース更新制御部３０６Ａは、データベース３０８の情報と取得情報記憶部３０９の情報とを比較し、ステップＳ７０２で取得したデータベース３０８の情報の中のバージョン４０７（図３参照）が、取得情報記憶部３０９の情報の中のバージョンよりも高いか否かを判定する（「ＤＢ記載バージョン最新？」ステップＳ７０４）。取得情報記憶部３０９から取得した情報の中のバージョンの方が高い場合（ステップＳ７０４“Ｎｏ”）に、処理はステップＳ７０５に進み、データベース３０８から取得した情報の中のバージョン４０７の方が高い場合（ステップＳ７０４“Ｙｅｓ”）に、処理はステップＳ７０６に進む。
【００７２】
ステップＳ７０４でＮｏと判定された場合に、データベース更新制御部３０６Ａは、取得情報記憶部３０９のソフトウェアの情報を、データベース更新部３０７に渡し、データベース更新部３０７は、渡された情報でデータベース３０８を更新する（「ＤＢ更新」ステップＳ７０５）。
【００７３】
一方、ステップＳ７０４でＹｅｓと判定された場合に、又はステップＳ７０３及びステップＳ７０５のいずれかの処理後に、データベース更新制御部３０６Ａは、ステップＳ７００で取得かつ取得情報記憶部３０９に格納したソフトウェアの情報に対して、すべてデータベース３０８と比較判定したか否かを判定する（「取得情報判定終了？」ステップＳ７０６）。すべて判定済みの場合（ステップＳ７０６“Ｙｅｓ”）に処理は終了し、比較判定していないものがある場合（ステップＳ７０６“Ｎｏ”）に、処理はステップＳ７０１に戻る。
【００７４】
図８は、図６のステップＳ７０で、外部記憶メディア２０８の挿入状況に変化があった場合におけるステップＳ７２の処理を示すフローチャートである。
ＰＣ状態取得部３０２は、ＰＣ状態記憶部３１１から該当メディア名を取得し、該当メディアが挿入されているか否かを判定する。該当メディアが挿入されている場合（ステップＳ７０７“Ｙｅｓ”）に、処理はステップＳ７０８に進み、該当メディアが挿入されていない場合（ステップＳ７０７“Ｎｏ”）に、処理は終了する。
【００７５】
ステップＳ７０７でＹｅｓと判定された場合に、外部記憶メディア検索部３０４は、外部記憶メディア２０８の名称、及び外部記憶メディア２０８に格納された検索対象であるソフトウェアの情報を取得し、取得したソフトウェアの情報を取得情報記憶部３０９に格納する（「外部記憶メディアからソフトウェア情報一覧取得」ステップＳ７０８）。
【００７６】
次に、データベース更新制御部３０６Ａは、取得情報記憶部３０９に格納されるソフトウェア名を用いて、データベース３０８を検索し、ソフトウェア情報４０（図３）を取得する（ステップＳ７０９）。
【００７７】
次に、データベース更新制御部３０６Ａは、ステップＳ７０９でソフトウェア情報４０を取得できたか否かの判定を行い、これによって、取得情報記憶部３０９に格納されたソフトウェアの情報がデータベース３０８に記載済みであるか否かを判定する（「ＤＢ記載済み？」ステップＳ７１０）。取得できた場合（ステップＳ７１０“Ｙｅｓ”）に、処理はステップＳ７１２に進み、取得できなかった場合（ステップＳ７１０“Ｎｏ”）に、処理はステップＳ７１１に進む。
【００７８】
ステップＳ７１０でＮｏと判定された場合に、データベース更新制御部３０６Ａは、取得情報記憶部３０９からソフトウェアの情報を取得し、取得したソフトウェアの情報をデータベース更新部３０７に渡し、データベース更新部３０７は、新しいＩＤ４００を割り振って渡された情報をデータベース３０８に格納し、データベース３０８のメディア名４０９に外部記憶メディアの名称を格納する（「ＤＢ新規追加＆メディア名記憶」ステップＳ７１１）。
【００７９】
一方、ステップＳ７１０でＹｅｓと判定された場合に、データベース更新制御部３０６Ａは、取得したデータベース３０８のアップデートバージョン４０８に値が格納されていないかを判定する（「新バージョンの情報なし？」ステップＳ７１２）。アップデートバージョン４０８に値が格納されている場合（ステップＳ７１２“Ｎｏ”）に、処理はステップＳ７１３に進み、アップデートバージョン４０８に値が格納されていない場合（ステップＳ７１２“Ｙｅｓ”）に、処理はステップＳ７１５に進む。
【００８０】
ステップＳ７１２でＮｏと判定された場合に、データベース更新制御部３０６Ａは、データベース３０８の情報と取得情報記憶部３０９の情報とを比較し、ステップＳ７０９で取得したデータベース３０８の情報の中のアップデートバージョン４０８が、取得情報記憶部３０９の情報の中のバージョンよりも高いか否かを判定する（「新バージョン最新？」ステップＳ７１３）。取得情報記憶部３０９から取得した情報の中のバージョンの方が高い場合（ステップＳ７１３“Ｎｏ”）に、処理はステップＳ７１４に進み、データベース３０８から取得した情報の中のアップデートバージョン４０８の方が高い場合（ステップＳ７１３“Ｙｅｓ”）に、処理はステップＳ７１７に進む。
【００８１】
ステップＳ７１３でＮｏと判定された場合に、データベース更新制御部３０６Ａは、取得情報記憶部３０９のソフトウェアの情報を、データベース更新部３０７に渡し、データベース更新部３０７は、渡された情報の中のバージョンをデータベース３０８のアップデートバージョン４０８（図３参照）に格納し、インストーラのパスをアップデートパス４０５（図３参照）に格納し、外部記憶メディア２０８の名称をメディア名４０９（図３参照）に格納する（「バージョン情報とインストーラ情報追加＆メディア名記憶」ステップＳ７１４）。
【００８２】
次に、ステップＳ７１２でＹｅｓと判定された場合に、データベース更新制御部３０６Ａは、データベース３０８の情報と取得情報記憶部３０９の情報とを比較し、ステップＳ７０９で取得したデータベース３０８の情報の中のバージョン４０７が、取得情報記憶部３０９の情報の中のバージョンよりも高いか否かを判定する（「ＤＢ記載バージョン最新？」ステップＳ７１５）。取得情報記憶部３０９から取得した情報の中のバージョンの方が高い場合（ステップＳ７１５“Ｎｏ”）に、処理はステップＳ７１６に進み、データベース３０８から取得した情報の中のバージョン４０７の方が高い場合（ステップＳ７１５“Ｙｅｓ”）に、処理はステップＳ７１７に進む。
【００８３】
ステップＳ７１５でＮｏと判定された場合に、データベース更新制御部３０６Ａは、取得情報記憶部３０９のソフトウェアの情報を、データベース更新部３０７に渡し、データベース更新部３０７は、渡された情報の中のバージョンをデータベース３０８のアップデートバージョン４０８に格納し、インストーラのパスをアップデートパス４０５に格納し、外部記憶メディア２０８の名称をメディア名４０９に格納する（「バージョン情報とインストーラ情報追加＆メディア名記憶」ステップＳ７１６）。
【００８４】
一方、ステップＳ７１５でＹｅｓと判定された場合に、又は、ステップＳ７１１、ステップＳ７１３、ステップＳ７１４及びステップＳ７１６のいずれかの処理後に、データベース更新制御部３０６Ａは、ステップＳ７０８で取得しかつ取得情報記憶部３０９に格納したすべてのソフトウェアの情報に対してデータベース３０８と比較判定したか否かを判定する（「取得情報判定終了？」ステップＳ７１７）。すべて判定済みの場合（ステップＳ７１７“Ｙｅｓ”）に処理は終了し、比較判定していないものがある場合（ステップＳ７１７“Ｎｏ”）に、処理はステップＳ７０９に戻る。
【００８５】
図９は、図６のステップＳ７０で、ネットワーク１０２の接続状況に変化があった場合におけるステップＳ７３の処理を示すフローチャートである。
ＰＣ状態取得部３０２は、ＰＣ状態記憶部３１１からＷｅｂサーバ１０１のアドレスを取得し、Ｗｅｂサーバ１０１とオンラインであるか否かを判定する。オンラインである場合（ステップＳ７１８“Ｙｅｓ”）に、処理はステップＳ７１９に進み、オンラインでない場合（ステップＳ７１８“Ｎｏ”）に、処理は終了する。
【００８６】
ステップＳ７１８でＹｅｓと判定された場合に、Ｗｅｂデータ検索部３０５は、Ｗｅｂサーバ１０１に格納された検索対象であるソフトウェアの情報を取得し、取得したソフトウェアの情報を取得情報記憶部３０９に格納する（「Ｗｅｂから該当ソフトウェア情報一覧取得」ステップＳ７１９）。次に、データベース更新制御部３０６Ａは、取得情報記憶部３０９に格納されたソフトウェア名を用いて、データベース３０８を検索し、ソフトウェア情報４０を取得する（ステップＳ７２０）。
【００８７】
次に、データベース更新制御部３０６Ａは、ステップＳ７２０でソフトウェア情報４０を取得できたか否かの判定を行い、これによって、取得情報記憶部３０９に格納されたソフトウェアの情報がデータベース３０８に記載済みであるか否かを判定する（「ＤＢ記載済み？」ステップＳ７２１）。取得できた場合（ステップＳ７２１“Ｙｅｓ”）に、処理はステップＳ７２３に進み、取得できなかった場合（ステップＳ７２１“Ｎｏ”）に、処理はステップＳ７２２に進む。
【００８８】
ステップＳ７２１でＮｏと判定された場合に、データベース更新制御部３０６Ａは、取得情報記憶部３０９からソフトウェアの情報を取得し、取得したソフトウェアの情報をデータベース更新部３０７に渡し、データベース更新部３０７は、新しいＩＤ４００を割り振って渡された情報をデータベース３０８に格納する（「ＤＢ新規追加」ステップＳ７２２）。
【００８９】
一方、ステップＳ７２１でＹｅｓと判定された場合に、データベース更新制御部３０６Ａは、取得したデータベース３０８のアップデートバージョン４０８に値が格納されていないかを判定する（「新バージョンの情報なし？」ステップＳ７２３）。アップデートバージョン４０８に値が格納されている場合（ステップＳ７２３“Ｎｏ”）に、処理はステップＳ７２４に進み、アップデートバージョン４０８に値が格納されていない場合（ステップＳ７２３“Ｙｅｓ”）に、処理はステップＳ７２６に進む。
【００９０】
ステップＳ７２３でＮｏと判定された場合に、データベース更新制御部３０６Ａは、データベース３０８の情報と取得情報記憶部３０９の情報とを比較し、ステップＳ７２０で取得したデータベース３０８の情報の中のアップデートバージョン（４０８）が、取得情報記憶部３０９の情報の中のバージョンよりも高いか否かを判定する（「新バージョン最新？」ステップＳ７２４）。取得情報記憶部３０９から取得した情報の中のバージョンの方が高い場合（ステップＳ７２４“Ｎｏ”）に、処理はステップＳ７２５に進み、データベース３０８から取得した情報の中のアップデートバージョン（４０８）の方が高い場合（ステップＳ７２４“Ｙｅｓ”）に、処理はステップＳ７２８に進む。
【００９１】
ステップＳ７２４でＮｏと判定された場合に、データベース更新制御部３０６Ａは、取得情報記憶部３０９のソフトウェアの情報を、データベース更新部３０７に渡し、データベース更新部３０７は、渡された情報の中のバージョンをデータベース３０８のアップデートバージョン４０８に格納し、インストーラのパスをアップデートパス４０５に格納し、メディア名４０９に格納されているデータを削除する（「バージョン情報とインストーラ情報追加＆メディア名削除」ステップＳ７２５）。
【００９２】
次に、ステップＳ７２３でＹｅｓと判定された場合に、データベース更新制御部３０６Ａは、データベース３０８の情報と取得情報記憶部３０９の情報とを比較し、ステップＳ７２０で取得したデータベース３０８の情報の中のバージョン（４０７）が、取得情報記憶部３０９の情報の中のバージョンよりも高いか否かを判定する（「ＤＢ記載バージョン最新？」ステップＳ７２６）。取得情報記憶部３０９から取得した情報の中のバージョンの方が高い場合（ステップＳ７２６“Ｎｏ”）に、処理はステップＳ７２７に進み、データベース３０８から取得した情報の中のバージョン（４０７）の方が高い場合（ステップＳ７２６“Ｙｅｓ”）に、処理はステップＳ７２８に進む。
【００９３】
ステップＳ７２６でＮｏと判定された場合に、データベース更新制御部３０６Ａは、取得情報記憶部３０９のソフトウェアの情報を、データベース更新部３０７に渡し、データベース更新部３０７は、渡された情報の中のバージョンをデータベース３０８のアップデートバージョン４０８に格納し、インストーラのパスをアップデートパス４０５に格納する（「バージョン情報とインストーラ情報追加」ステップＳ７２７）。
【００９４】
一方、ステップＳ７２６でＹｅｓと判定された場合に、又はステップＳ７２２、ステップＳ７２４、ステップＳ７２５及びステップＳ７２７のいずれかの処理後に、データベース更新制御部３０６Ａは、ステップＳ７１９で取得しかつ取得情報記憶部３０９に格納したすべてのソフトウェアの情報に対してデータベース３０８と比較判定したか否かを判定する（「取得情報判定終了？」ステップＳ７２８）。すべて判定済みの場合（ステップＳ７２８“Ｙｅｓ”）に処理は終了し、比較判定していないものがある場合（ステップＳ７２８“Ｎｏ”）に、処理はステップＳ７２０に戻る。
以上で、第１実施形態に係るソフトウェア選択支援装置１００のデータベース３０８更新処理の説明を終了する。
【００９５】
≪第１実施形態に係るソフトウェア選択支援装置のソフトウェア検索処理≫
図１０は、第１実施形態に係るソフトウェア選択支援装置１００のソフトウェア検索処理を説明するためのフローチャートである。以下、図１０を参照して、ソフトウェア選択支援装置１００のソフトウェア検索処理をインストール及び起動を実行する画面（図４）を用いて説明する。なお、ソフトウェア選択支援装置１００のソフトウェア検索処理は、図２に示す、イベント検知部３０１、表示情報格納部３１０、キーワード検索部３０６Ｂ、キーワード入力画面表示制御部３１５Ａ、及び検索結果画面表示制御部３１５Ｂにより実現される。
【００９６】
図１０に示す処理は、キーワード入力画面表示制御部３１５Ａが、図４に示すインストール及び起動を実行する画面を表示している状態で、キーワード入力欄５００にキーワードが入力され、検索実行ボタン５０１がクリックされることにより開始する。このとき、インストール及び起動を実行する画面の、インストール済みソフトウェア名表示欄５０２、未インストールソフトウェア名表示欄５０３、ソフトウェア説明欄５０４、及びソフトウェア動作実行ボタン５０５には、何も表示されていない状態である。
【００９７】
イベント検知部３０１は、検索実行ボタン５０１がクリックされたことを検知する。イベント検知部３０１は、キーワード入力欄５００に入力されたキーワードをキーワード検索部３０６Ｂに渡す。キーワード検索部３０６Ｂは、データベース３０８の説明文パス４０２によって指定された格納場所に格納されたファイルを開き、渡されたキーワードをキーにファイル内を検索し、合致するソフトウェア情報４０をすべて検出する（ステップＳ８００）。
【００９８】
キーワード検索部３０６Ｂは、ステップＳ８００で取得したソフトウェア情報４０において、メディア名４０９にデータが格納されておらず、かつ、実行パス４０４にＷｅｂアドレスのデータが格納されていないかを判定し、これによって、外部記憶メディア２０８（図１参照）とＷｅｂサーバ１０１（図１参照）へのアクセスが不要かを判定する（「メディアとＷｅｂ不要？」ステップＳ８０１）。メディア名４０９、又は実行パス４０４の少なくともどちらか一方にデータが格納されている場合（ステップＳ８０１“Ｎｏ”）に、処理はステップＳ８０２に進み、メディア名４０９及び実行パス４０４にデータが格納されていない場合（ステップＳ８０１“Ｙｅｓ”）に、処理はステップＳ８０４に進む。
【００９９】
ステップＳ８０１でＮｏと判定された場合に、キーワード検索部３０６Ｂは、データベース３０８の情報の中のアップデートバージョン４０８にデータが格納されているか否かを判定する（「新バージョン情報あり？」ステップＳ８０２）。アップデートバージョン４０８にデータが格納されていない場合（ステップＳ８０２“Ｎｏ”）に、処理はステップＳ８０３に進み、アップデートバージョン４０８にデータが格納されている場合（ステップＳ８０２“Ｙｅｓ”）に、処理はステップＳ８０４に進む。
【０１００】
ステップＳ８０２でＮｏと判定された場合に、キーワード検索部３０６Ｂは、表示情報格納部３１０の未インストールアイテム３１０Ｂにソフトウェア情報４０を格納する（「未インストールアイテムに格納」ステップＳ８０３）。
【０１０１】
一方、ステップＳ８０１でＹｅｓと判定された場合、又はステップＳ８０２でＹｅｓと判定された場合に、キーワード検索部３０６Ｂは、表示情報格納部３１０のインストールアイテム３１０Ａにソフトウェア情報４０を格納する（「インストールアイテムに格納」ステップＳ８０４）。
【０１０２】
ステップＳ８０３、又はステップＳ８０４の処理後に、キーワード検索部３０６Ｂは、ステップＳ８００で取得した情報をすべて比較判定したか否かを判定する（「取得情報判定終了？」ステップＳ８０５）。すべて判定済みの場合（ステップＳ８０５“Ｙｅｓ”）に処理はステップＳ８０６に進み、比較判定していないものがある場合（ステップＳ８０５“Ｎｏ”）に、処理はステップＳ８０１に戻る。
【０１０３】
ステップＳ８０５でＹｅｓと判定された場合に、検索結果画面表示制御部３１５Ｂは、表示情報格納部３１０のインストールアイテム３１０Ａにソフトウェア情報４０が格納されているか否かを判定する（「インストールアイテムにデータあり？」ステップＳ８０６）。インストールアイテム３１０Ａにデータが格納されていない場合（ステップＳ８０６“Ｎｏ”）に、処理はステップＳ８０７に進み、インストールアイテム３１０Ａにデータが格納されている場合（ステップＳ８０６“Ｙｅｓ”）に、処理はステップＳ８０９に進む。
【０１０４】
ステップＳ８０６でＮｏと判定された場合に、検索結果画面表示制御部３１５Ｂは、表示情報格納部３１０の未インストールアイテム３１０Ｂにソフトウェア情報４０が格納されているか否かを判定する（「未インストールアイテムリストにデータあり？」ステップＳ８０７）。未インストールアイテム３１０Ｂにデータが格納されていない場合（ステップＳ８０７“Ｎｏ”）に、処理は終了し、未インストールアイテム３１０Ｂにデータが格納されている場合（ステップＳ８０７“Ｙｅｓ”）に、処理はステップＳ８０８に進む。
【０１０５】
ステップＳ８０６でＹｅｓと判定された場合に、表示情報格納部３１０のインストールアイテム３１０Ａの先頭のソフトウェア情報で図１１の処理を実行する（「インストールアイテムの先頭のソフトウェアで図１１の処理実行」ステップＳ８０９）。
【０１０６】
ステップＳ８０７でＹｅｓと判定された場合に、表示情報格納部３１０の未インストールアイテム３１０Ｂの先頭のソフトウェア情報で図１１の処理を実行する（「未インストールアイテムの先頭のソフトウェアで図１１の処理実行」ステップＳ８０８）。
以上で、第１実施形態に係るソフトウェア選択支援装置１００のソフトウェア検索処理の説明を終了する。
【０１０７】
≪第１実施形態に係るソフトウェア選択支援装置のソフトウェア選択処理≫
図１１は、第１実施形態に係るソフトウェア選択支援装置１００のソフトウェア選択処理を説明するためのフローチャートである。以下、図１１を参照して、ソフトウェア選択支援装置１００のソフトウェア選択処理をインストール及び起動を実行する画面（図４）を用いて説明する。なお、ソフトウェア選択支援装置１００のソフトウェア選択処理は、図２に示す、イベント検知部３０１、ソフトウェア名検索部３０６Ｃ、表示情報格納部３１０、及び検索結果画面表示制御部３１５Ｂにより実現される。
【０１０８】
図１１に示す処理は、図１０のステップＳ８０８若しくはステップＳ８０９として、又は図４に示すインストール及び起動を実行する画面のインストール済みソフトウェア名表示欄５０２、若しくは未インストールソフトウェア名表示欄５０３のソフトウェア名がクリックされたときに実行される。
【０１０９】
イベント検知部３０１は、クリックされたソフトウェア名、表示情報格納部３１０のインストールアイテム３１０Ａ、又は未インストールアイテム３１０Ｂの先頭のソフトウェア名をソフトウェア名検索部３０６Ｃに渡す。
ソフトウェア名検索部３０６Ｃは、渡されたソフトウェア名をキーに、データベース３０８のソフトウェア名４０１を検索し、合致するソフトウェア情報４０を検出する（ステップＳ９００）。
【０１１０】
検索結果画面表示制御部３１５Ｂは、ステップＳ９００で取得したソフトウェア情報４０（図３参照）に、アップデートバージョン４０８にデータが格納されていないかを判定する（「新バージョンの情報なし？」ステップＳ９０１）。アップデートバージョン４０８にデータが格納されている場合（ステップＳ９０１“Ｎｏ”）に、処理はステップＳ９０２に進み、アップデートバージョン４０８にデータが格納されていない場合（ステップＳ９０１“Ｙｅｓ”）に、処理はステップＳ９０９に進む。
【０１１１】
ステップＳ９０１でＮｏと判定された場合に、検索結果画面表示制御部３１５Ｂは、ステップＳ９００で取得したソフトウェア情報４０のメディア名４０９に、データが格納されていないかを判定し、これにより、外部記憶メディア２０８（図１参照）へのアクセスが不要かを判定する（「メディア不要？」ステップＳ９０２）。メディア名４０９にデータが格納されている場合（ステップＳ９０２“Ｎｏ”）に、処理はステップＳ９０３に進み、メディア名４０９にデータが格納されていない場合（ステップＳ９０２“Ｙｅｓ”）に、処理はステップＳ９０６に進む。
【０１１２】
ステップＳ９０２でＮｏと判定された場合に、検索結果画面表示制御部３１５Ｂは、ＰＣ状態記憶部３１１から外部記憶メディア名を取得し、取得したＰＣ状態記憶部３１１に格納されていた外部記憶メディア名のデータと、ステップ９００で取得したソフトウェア情報４０のメディア名４０９に格納されるデートとが一致するかを判定する（「該当メディア挿入状態？」ステップＳ９０３）。
【０１１３】
一致する場合（ステップＳ９０３“Ｙｅｓ”）に、検索結果画面表示制御部３１５Ｂは、図１６に示す「画面４−１」を表示する（ステップＳ９０５）。画面４−１は、検索対象の外部記憶メディア２０８がＰＣ１００に挿入された状態で、ＰＣ１００にインストールされているソフトウェアが選択された場合の画面である。画面４−１では、ソフトウェア動作実行ボタンとして、起動ボタン５０５Ｅａ及びアップデートボタン５０５Ｅｂが表示されている。これは、ＰＣ１００にインストールされるソフトウェアよりも新しいバージョンが、挿入されている外部記憶メディア２０８（図１６に示す例ではＣＤ）にあることを示している。また、新しいバージョンの新機能が、変更点欄５０６Ｅに表示されている。
【０１１４】
一致しない場合（ステップＳ９０３“Ｎｏ”）に、検索結果画面表示制御部３１５Ｂは、図１７に示す「画面４−２」を表示する（ステップＳ９０４）。画面４−２は、検索対象の外部記憶メディア２０８がＰＣ１００に挿入されない状態で、ＰＣ１００にインストールされているソフトウェアが選択された場合の画面である。画面４−２では、ソフトウェア動作実行ボタンとして、起動ボタン５０５Ｆａ及び警告文５０５Ｆｂが表示されている。これは、ＰＣ１００にインストールされるソフトウェアよりも新しいバージョンが、挿入されていない外部記憶メディア２０８（図１７に示す例ではＣＤ）にあることを示している。また、新しいバージョンの新機能が、変更点欄５０６Ｆに表示されている。
【０１１５】
ステップＳ９０２でＹｅｓと判定された場合に、検索結果画面表示制御部３１５Ｂは、ＰＣ状態記憶部３１１からオンライン／オフラインの情報を取得しネットワーク１０２とオンライン接続されているかを判定する（「オンライン？」ステップＳ９０６）。
【０１１６】
オンライン接続されている場合（ステップＳ９０６“Ｙｅｓ”）に、検索結果画面表示制御部３１５Ｂは、図１８に示す「画面５−１」を表示する（ステップＳ９０８）。画面５−１は、検索対象のＷｅｂサーバ１０１がネットワーク１０２を介してＰＣ１００とオンライン接続された状態で、ＰＣ１００にインストールされているソフトウェアが選択された場合の画面である。画面５−１では、ソフトウェア動作実行ボタンとして、起動ボタン５０５Ｇａ及びアップデートボタン５０５Ｇｂが表示されている。これは、ＰＣ１００にインストールされたソフトウェアよりも新しいバージョンが、オンライン接続されるＷｅｂサーバ１０１にあることを示している。また、新しいバージョンの新機能が、変更点欄５０６Ｇに表示されている。
【０１１７】
オンライン接続されていない場合（ステップＳ９０６“Ｎｏ”）に、検索結果画面表示制御部３１５Ｂは、図１９に示す「画面５−２」を表示する（ステップＳ９０７）。画面５−２は、検索対象のＷｅｂサーバ１０１がＰＣ１００とオフライン状態で、ＰＣ１００にインストールされているソフトウェアが選択された場合の画面である。画面５−２では、ソフトウェア動作実行ボタンとして、起動ボタン５０５Ｈａ及び警告文５０５Ｈｂが表示されている。これは、ＰＣ１００にインストールされたソフトウェアよりも新しいバージョンが、接続されていないＷｅｂサーバ１０１にあることを示している。また、新しいバージョンの新機能が、変更点欄５０６Ｇに表示されている。
【０１１８】
ステップＳ９０１でＹｅｓと判定された場合に、検索結果画面表示制御部３１５Ｂは、ステップＳ９００で取得したソフトウェア情報４０のメディア名４０９に、データが格納されていないかを判定する（「メディア不要？」ステップＳ９０９）。メディア名４０９にデータが格納されている場合（ステップＳ９０９“Ｎｏ”）に、処理はステップＳ９１０に進み、メディア名４０９にデータが格納されていない場合（ステップＳ９０９“Ｙｅｓ”）に、処理はステップＳ９１３に進む。
【０１１９】
ステップＳ９０９でＮｏと判定された場合に、検索結果画面表示制御部３１５Ｂは、ＰＣ状態記憶部３１１から外部記憶メディア名を取得し、取得したＰＣ状態記憶部３１１に格納されていた外部記憶メディア名のデータと、ステップ９００で取得したソフトウェア情報４０のメディア名４０９（図３参照）によって指定されたデータとが一致するかを判定する（「該当メディア挿入状態？」ステップＳ９１０）。
【０１２０】
一致する場合（ステップＳ９１０“Ｙｅｓ”）に、検索結果画面表示制御部３１５Ｂは、図１２に示す「画面２−１」を表示する（ステップＳ９１２）。画面２−１は、検索対象の外部記憶メディア２０８がＰＣ１００に挿入された状態で、ＰＣ１００にインストールされていないソフトウェアが選択された場合の画面である。画面２−１では、ソフトウェア動作実行ボタンとして、インストールボタン５０５Ａが表示されている。これは、選択されたソフトウェアが、外部記憶メディア２０８からインストールできることを示している。
【０１２１】
一致しない場合（ステップＳ９１０“Ｎｏ”）に、検索結果画面表示制御部３１５Ｂは、図１３に示す「画面２−２」を表示する（ステップＳ９１１）。画面２−２は、検索対象の外部記憶メディア２０８がＰＣ１００に挿入されない状態で、ＰＣ１００にインストールされていないソフトウェアが選択された場合の画面である。画面２−２では、ソフトウェア動作実行ボタンとして、警告文５０５Ｂが表示されている。これは、選択されたソフトウェアが、挿入されていない外部記憶メディア２０８からインストールできることを示している。
【０１２２】
ステップＳ９０９でＹｅｓと判定された場合に、検索結果画面表示制御部３１５Ｂは、ステップＳ９００で取得したソフトウェア情報４０の実行パス４０４にＷｅｂアドレスのデータ（例えば、Ｗｅｂサーバ１０１のアドレス）が格納されていないかを判定する（「Ｗｅｂ不要？」ステップＳ９１３）。
実行パス４０４にＷｅｂアドレスのデータが格納されている場合（ステップＳ９１３“Ｎｏ”）に、処理はステップＳ９１４に進み、格納されていない場合（ステップＳ９１３“Ｙｅｓ”）に、処理はステップＳ９１７に進む。
【０１２３】
ステップＳ９１３でＮｏと判定された場合に、検索結果画面表示制御部３１５Ｂは、ＰＣ状態記憶部３１１からオンライン／オフラインの情報を取得しネットワーク１０２とオンライン接続されているかを判定する（「オンライン？」ステップＳ９１４）。
【０１２４】
オンライン接続されている場合（ステップＳ９１４“Ｙｅｓ”）に、検索結果画面表示制御部３１５Ｂは、図１４に示す「画面３−１」を表示する（ステップＳ９１６）。画面３−１は、検索対象のＷｅｂサーバ１０１がネットワーク１０２を介してＰＣ１００とオンライン接続された状態で、ＰＣ１００にインストールされていないソフトウェアが選択された場合の画面である。画面３−１では、ソフトウェア動作実行ボタンとして、ダウンロード＆インストールボタン５０５Ｃが表示されている。これは、選択されたソフトウェアが、接続されたＷｅｂサーバ１０１からダウンロード＆インストールできることを示している。
【０１２５】
オンライン接続されていない場合（ステップＳ９１４“Ｎｏ”）に、検索結果画面表示制御部３１５Ｂは、図１５に示す「画面３−２」を表示する（ステップＳ９１６）。画面３−２は、検索対象のＷｅｂサーバ１０１がＰＣ１００とオフライン状態で、ＰＣ１００にインストールされていないソフトウェアが選択された場合の画面である。画面３−２では、警告文５０５Ｄが表示されている。これは、選択されたソフトウェアが、Ｗｅｂサーバ１０１からダウンロード＆インストールできることを示している。
【０１２６】
ステップＳ９１３でＹｅｓと判定された場合に、検索結果画面表示制御部３１５Ｂは、図４に示す「画面１」を表示する（ステップＳ９１７）。
以上で、第１実施形態に係るソフトウェア選択支援装置１００のソフトウェア選択処理の説明を終了する。
【０１２７】
≪第１実施形態に係るソフトウェア選択支援装置のパッケージ処理≫
以下、図２０を参照してソフトウェア選択支援装置を用いたソフトウェアのパッケージ処理について説明する。
図２０のパッケージ作成ボタンがクリックされたときにパッケージ処理が開始する。最初に、イベント検知部３０１は、パッケージ作成ボタン６０２Ｉがクリックされたことを検知する。
【０１２８】
イベント検知部３０１は、図示しないパッケージ格納アイテムに格納されたソフトウェア名をソフトウェア名検索部３０６Ｃに渡す。ソフトウェア名検索部３０６Ｃは渡されたソフトウェア名をキーにデータベース３０８を検索し、合致するソフトウェア情報４０をすべて検出する。
【０１２９】
パッケージ生成部３１４は、取得したソフトウェア情報４０において、Ｗｅｂパス４０６にデータがあるかを判定する。Ｗｅｂパス４０６にデータがない場合は、実行パス４０４あるいはアップデートパス４０５にＷｅｂアドレスのデータが格納されているかを判定する。パッケージ生成部３１４は、実行パス４０４あるいはアップデートパス０５にＷｅｂアドレスのデータが格納されている場合に、データベース更新部３０７に情報を渡し、データベース更新部３０７はＷｅｂパス４０６に渡された情報を格納する。
【０１３０】
パッケージ生成部３１４は、実行パス４０４あるいはアップデートパス４０５にＷｅｂアドレスのデータが格納されていない場合に、Ｗｅｂデータ検索部３０５に処理実行命令を出す。Ｗｅｂデータ検索部３０５は、ソフトウェア名をキーにＷｅｂサーバ１０１からソフトウェア情報を取得し、取得情報記憶部３０９に格納する。
【０１３１】
データベース更新制御部３０６Ａは、取得情報記憶部３０９から情報を取得し、データベース更新部３０７に情報を渡し、データベース更新部３０７はデータベース３０８のＷｅｂパス４０６に渡された情報を格納する。
次に、パッケージ生成部３１４は、選択されたソフトウェアのデータベース３０８内のＷｅｂパス４０６をソフトウェア名検索部３０６Ｃを用いて取得し、取得したＷｅｂパス４０６の情報で、該当インストーラパッケージをダウンロードし、ソフトウェアをパッケージ化する。なお、パッケージ生成部３１４は、未インストールアイテムがダウンロードされるときは、最新のバージョンを探してダウンロードするようにするとよい。
【０１３２】
このように、第１実施形態に係るソフトウェア選択支援プログラム及びソフトウェア選択支援装置は、ＰＣ１００にインストールされていないソフトウェアでも、ユーザが目的とする機能から検索し、検索結果を画面に表示し、その画面からインストール及び起動ができる。よって、第１実施形態に係るソフトウェア選択支援プログラム及びソフトウェア選択支援装置によれば、ユーザがＣＤ−ＲＯＭ、インターネット上からソフトウェアを探し出す必要がない。さらに、ユーザが指定するソフトウェアの最新版をインターネット上から取得し、複数のソフトウェアをまとめてパッケージ化することができるため、特定のソフトウェアラインナップを他のＰＣにインストールしたいときに利用できる。
【０１３３】
≪第２実施形態に係るソフトウェア選択支援システムの構成≫
第２実施形態に係るソフトウェア選択支援プログラム及びソフトウェア選択支援装置は、ＰＣにインストールされているデバイスによって検索結果画面上のソフトウェアラインナップを変更できるような構成にしたので、ＰＣにインストールされているデバイスでソフトウェアを絞り込めるようになっている。また、ソフトウェアの使用頻度や最終使用日、インストーラのファイル作成日時によってソフトウェアを並び替えられるような構成にしてある。第２実施形態に係るソフトウェア選択支援システム１ａ（図示せず）の構成は、図１に示す第１実施形態に係るソフトウェア選択支援システム１の構成と同様なので、説明を省略する。
【０１３４】
≪第２実施形態に係るソフトウェア選択支援装置の機能≫
（概要）
図２１は、第２実施形態に係るソフトウェア選択支援装置の機能構成図である。
第２実施形態に係るソフトウェア選択支援装置と、第１実施形態に係るソフトウェア選択支援装置との構成の違いは、補助記憶装置２０２にデバイス情報記憶部１９０１が追加されている点と、制御装置２０にインストール済みデバイス情報取得部１９００が追加されている点である。また、データベース３０８ａに格納されるソフトウェア情報の構成が異なる。また、画面表示制御部３１５ａが入出力装置２０７に表示する表示画面が異なる。
なお、第１実施形態に係るソフトウェア選択支援装置と同様の構成については、同一符号を付して説明を省略する。
【０１３５】
（インストール済みデバイス情報取得部）
インストール済みデバイス情報取得部１９００は、ＰＣ１００のデバイスドライバ（例えば、プリンタドライバ）のインストール、又はアンインストールを監視する機能を有する。具体的には、インストール済みデバイス情報取得部１９００は、ＰＣ１００にデバイスドライバがインストール、又はアンインストールされた場合に、ＰＣ１００にインストールされているすべてのデバイスドライバの情報（以下「デバイスドライバ情報」と呼ぶときがある）を取得し、その情報をデバイス情報記憶部１９０１に渡す。
【０１３６】
（デバイス情報記憶部）
デバイス情報記憶部１９０１には、インストール済みデバイス情報取得部１９００から送られてきたデバイスドライバ情報が記憶される。デバイス情報記憶部１９０１は、ＰＣ１００の電源がＯＦＦになっても情報を保持する。
【０１３７】
（データベース）
図２２は、第２実施形態に係るデータベース３０８ａのデータ構成図（ソフトウェア情報４０ａ）である。
図２２に示すように、ソフトウェア情報４０ａには、サポートプリンタ２０００、使用頻度２００１、及び日時２００２が項目として追加されている。
【０１３８】
サポートプリンタ２０００には、ソフトウェアがプリンタのユーティリティだった場合に、そのサポート機種名が格納される。使用頻度２００１には、ＰＣ１００にインストール済みのソフトウェアの使用頻度が格納される。使用頻度２００１の単位には、例えば百分率（％）が用いられる。日時２００２には、ＰＣ１００にインストール済みのソフトウェアの場合は、最終使用日時が格納され、インストールされていないソフトウェアの場合は、インストーラやインストーラパッケージのファイル日時が格納される。
【０１３９】
（画面表示制御部）
画面表示制御部３１５ａは、キーワード入力画面表示制御部３１５Ａａ、及び検索結果画面表示制御部３１５Ｂａを備えて構成され、図２３に示す画面を表示する。図２３は、入出力装置２０７に表示されるインストール及び起動を実行する画面である。
キーワード入力画面表示制御部３１５Ａａは、第１実施形態に係るキーワード入力画面表示制御部３１５Ａに加えて、さらに、図示しないプリンタ選択欄制御部を備える。プリンタ選択欄制御部は、プリンタ選択欄２１００（図２３参照）を表示する。
【０１４０】
プリンタ選択欄２１００は、プリンタ名を選択する部分である。プリンタ選択欄２１００を構成するボタンが押されると、インストールされているプリンタの一覧が表示される。プリンタ選択欄２１００に表示されるプリンタの一覧の中から一つのプリンタを選択することができ、一つのプリンタが選択されると、選択されたプリンタに関連のあるソフトウェア名が、インストール済みソフトウェア名並び替え欄２１０１及び未インストールソフトウェア名並び替え欄２１０２に表示される。
【０１４１】
検索結果画面表示制御部３１５Ｂａは、第１実施形態に係る検索結果画面表示制御部３１５Ｂと比較すると、図示しないインストール済みソフトウェア名並び替え欄制御部、未インストールソフトウェア名並び替え欄制御部、インストール済みソフトウェア名並び替え条件選択欄制御部、及び未インストールソフトウェア名並び替え条件選択欄制御部を備える点が異なる。
【０１４２】
インストール済みソフトウェア名並び替え欄制御部は、インストール済みソフトウェア名並び替え欄２１０１（図２３参照）を表示する。未インストールソフトウェア名並び替え欄制御部は、未インストールソフトウェア名並び替え欄２１０２（図２３参照）を表示する。インストール済みソフトウェア名並び替え条件選択欄制御部は、インストール済みソフトウェア名並び替え条件選択欄２１０３（図２３参照）を表示する。未インストールソフトウェア名並び替え条件選択欄制御部は、未インストールソフトウェア名並び替え条件選択欄２１０４（図２３参照）を表示する。
【０１４３】
インストール済みソフトウェア名並び替え欄２１０１には、プリンタ選択欄２１００で選択されたプリンタに関連し、ＰＣ１００にインストール済みのソフトウェア名が表示される。インストール済みソフトウェア名並び替え欄２１０１に表示されるソフトウェア名は、インストール済みソフトウェア名並び替え条件選択欄２１０３で選択される条件で並び替えて表示することができる。
【０１４４】
未インストールソフトウェア名並び替え欄２１０２には、プリンタ選択欄２１００で選択されたプリンタに関連し、ＰＣ１００にインストールされていないソフトウェア名が表示される。未インストールソフトウェア名並び替え欄２１０２に表示されるソフトウェア名は、未インストールソフトウェア名並び替え条件選択欄２１０４で選択される条件で並び替えて表示することができる。
【０１４５】
インストール済みソフトウェア名並び替え条件選択欄２１０３の展開ボタンが押されると、並び替え条件が表示される。並び替え条件には、例えば、「使用頻度」、「名前」、「最終使用日」等が表示され、選択された条件に基づいてインストール済みソフトウェア名並び替え欄２１０１に表示されるソフトウェア名が並び替えられる。
【０１４６】
未インストールソフトウェア名並び替え条件選択欄２１０４の展開ボタンが押されると、並び替え条件が表示される。並び替え条件には、例えば、「ファイル日時」、「名前」等が表示され、選択された条件に基づいて未インストールソフトウェア名並び替え欄２１０２に表示されるソフトウェア名が並び替えられる。
【０１４７】
≪第２実施形態に係るソフトウェア選択支援装置のソフトウェア並び替え処理≫
第２実施形態に係るソフトウェア選択支援装置１００のソフトウェア並び替え処理を、図２３を参照しながら説明する。
「プリンタ」をキーワードとする検索が行われた状態でプリンタ選択欄２１００が選択された場合に、イベント検知部３０１は、プリンタ選択欄２１００が選択されたという情報をキーワード入力画面表示制御部３１５Ａａに送信する。キーワード入力画面表示制御部３１５Ａａは、デバイス情報記憶部１９０１からプリンタ名を取得し、取得したプリンタ名の一覧をプリンタ選択欄２１００（図２３参照）に例えばプルダウンメニューとして表示する。
【０１４８】
次に、ユーザにより表示されているプリンタ名一覧の中から任意のプリンタ名が選択された場合に、イベント検知部３０１は、選択されたプリンタ名を検索結果画面表示制御部３１５Ｂａに送信する。検索結果画面表示制御部３１５Ｂａは、表示情報格納部３１０に格納されているインストールアイテム３１０Ａの中でサポートプリンタ２０００にすでにインストールされているものだけを抜き出し、インストール済みソフトウェア名並び替え欄２１０１に表示する。表示情報格納部３１０に格納されている未インストールアイテム３１０Ｂについても同様である。
【０１４９】
次に、インストール済みソフトウェア名並び替え条件選択欄２１０３が選択された場合に、イベント検知部３０１は、その情報を検索結果画面表示制御部３１５Ｂａに送信する。検索結果画面表示制御部３１５Ｂａは、並び替え条件をインストール済みソフトウェア名並び替え条件選択欄２１０３に、例えばプルダウンメニューとして表示する。
【０１５０】
次に、ユーザにより表示されている並び替え条件の中から任意の条件が選択された場合に、イベント検知部３０１は、選択された並び替え条件を検索結果画面表示制御部３１５Ｂａに送信する。検索結果画面表示制御部３１５Ｂａは、表示情報格納部３１０に格納されているインストールアイテム３１０Ａを、選択された並び替え条件に基づいて並び替え、インストール済みソフトウェア名並び替え欄２１０１に表示する。
【０１５１】
次に、未インストールソフトウェア名並び替え条件選択欄２１０４が選択された場合に、イベント検知部３０１は、その情報を検索結果画面表示制御部３１５Ｂａに送信する。検索結果画面表示制御部３１５Ｂａは、並び替え条件を未インストールソフトウェア名並び替え条件選択欄２１０４に、例えばプルダウンメニューとして表示する。
【０１５２】
次に、ユーザにより表示された並び替え条件の中から任意の条件が選択された場合に、イベント検知部３０１は、選択された並び替え条件を検索結果画面表示制御部３１５Ｂａに送信する。検索結果画面表示制御部３１５Ｂａは、表示情報格納部３１０に格納されている未インストールアイテム３１０Ｂを、選択された並び替え条件に基づいて並び替え、未インストールソフトウェア名並び替え欄２１０２に表示する。
【０１５３】
このように、第２実施形態に係るソフトウェア選択支援プログラム及びソフトウェア選択支援装置は、ＰＣ１００にインストールされているデバイスによって画面上のソフトウェアラインナップを変更できるような構成にしたので、ＰＣ１００にインストールされているデバイスでソフトウェアを絞り込めるようになり、またソフトウェアの使用頻度や最終使用日、インストーラのファイル作成日時によってソフトウェアを並び替えられるような構成にした。よって、第２実施形態に係るソフトウェア選択支援プログラム及びソフトウェア選択支援装置によれば、ユーザが適切なソフトウェアを探しやすくなる。
【符号の説明】
【０１５４】
１          ソフトウェア選択支援システム
２０        制御装置
４０，４０ａ  ソフトウェア情報
１００      ＰＣ（ソフトウェア選択支援装置）
１０１      Ｗｅｂサーバ（外部記憶装置）
１０２      ネットワーク
２００      ＣＰＵ
２０１      メモリ装置
２０２      補助記憶装置
２０６      インタフェース装置
２０７      入出力装置（入力部、表示部）
２０８      外部記憶メディア（記憶媒体）
２０９      メディア制御装置
３０１      イベント検知部
３０２      ＰＣ状態取得部（環境変化検知機能）
３０３      ＰＣ内検索部
３０４      外部記憶メディア検索部（ソフトウェア情報取得機能）
３０５      Ｗｅｂデータ検索部（ソフトウェア情報取得機能）
３０６Ａ    データベース更新制御部（データベース更新制御機能）
３０６Ｂ    キーワード検索部
３０６Ｃ    ソフトウェア名検索部（特定文字列検索機能）
３０７      データベース更新部
３０８，３０８ａ  データベース
３０９      取得情報記憶部
３１０      表示情報格納部
３１０Ａ    インストールアイテム
３１０Ｂ    未インストールアイテム
３１１      ＰＣ状態記憶部
３１２      インストール部（インストール機能）
３１３      起動部（起動機能）
３１４      パッケージ生成部（パッケージ生成機能）
３１５，３１５Ａ  画面表示制御部
３１５Ａ，３１５Ａａ  キーワード入力画面表示制御部（特定文字列入力画面表示制御機能）
３１５Ｂ，３１５Ｂａ  検索結果画面表示制御部（検索結果画面表示制御機能）
３１６      ＯＳ
５００      キーワード入力欄
５０１      検索実行ボタン
５０２      インストール済みソフトウェア名表示欄（インストールソフトウェア表示欄）
５０３      未インストールソフトウェア名表示欄（未インストールソフトウェア表示欄）
５０４      ソフトウェア説明欄（ソフトウェア説明文表示欄）
５０５      ソフトウェア動作実行ボタン
１９００    インストール済みデバイス情報取得部
１９０１    デバイス情報記憶部
２１０１    インストール済みソフトウェア名並び替え欄
２１０２    未インストールソフトウェア名並び替え欄
２１０３    インストール済みソフトウェア名並び替え条件選択欄
２１０４    未インストールソフトウェア名並び替え条件選択欄
【図１】
0005508222.tif 000002
【図２】
0005508222.tif 000003
【図３】
0005508222.tif 000004
【図４】
0005508222.tif 000005
【図５】
0005508222.tif 000006
【図６】
0005508222.tif 000007
【図７】
0005508222.tif 000008
【図８】
0005508222.tif 000009
【図９】
0005508222.tif 000010
【図１０】
0005508222.tif 000011
【図１１】
0005508222.tif 000012
【図１２】
0005508222.tif 000013
【図１３】
0005508222.tif 000014
【図１４】
0005508222.tif 000015
【図１５】
0005508222.tif 000016
【図１６】
0005508222.tif 000017
【図１７】
0005508222.tif 000018
【図１８】
0005508222.tif 000019
【図１９】
0005508222.tif 000020
【図２０】
0005508222.tif 000021
【図２１】
0005508222.tif 000022
【図２２】
0005508222.tif 000023
【図２３】
0005508222.tif 000024