(57)【要約】【課題】  インストールされたまま利用されていないソフトウエアがアンインストールされずに放置される。【解決手段】  複数の情報処理装置からインストールソフトウェア情報と使用ソフトウェア情報を収集し、期間指定を含む任意の条件の入力を受付け、インストールソフトウェア情報と使用ソフトウェア情報と期間指定を含む任意の入力条件から遊休ソフトウェアを判定し、遊休ソフトウェアに対するアンインストール指示を受付け、遊休ソフトウェアをアンインストールするための指示を情報処理装置に送信する。【選択図】  図１
2005301379.tif 000002
【特許請求の範囲】
【請求項１】
資産管理サーバと少なくとも一つの情報処理装置とをネットワークで接続し、前記資産管理サーバで前記情報処理装置のソフトウエア情報を管理するソフトウェア資産管理システムにおいて、
前記資源管理サーバは、
前記情報処理装置から送られてくるインストールソフトウェア情報と使用ソフトウェア情報を登録する資産情報登録部と、
前記インストールソフトウェア情報と使用ソフトウェア情報から遊休ソフトウェアを判定する遊休ソフトウェア判定部と、
遊休ソフトウェアをアンインストールするための指示を送信する指示受付部とを有し、
前記情報処理装置は、
前記情報処理装置にインストールされているソフトウェアを監視するインストールソフトウェア情報監視部と、
情報処理装置で使用されるソフトウェアを監視する使用ソフトウェア情報監視部と、
情報処理装置のインストールソフトウェアをアンインストールするアンインストール処理部とを有することを特徴とするソフトウェア資産管理システム。
【請求項２】
資産管理サーバと少なくとも一つの情報処理装置とをネットワークで接続し、前記資産管理サーバで前記情報処理装置のソフトウエア情報を管理するソフトウェア資産管理方法であって、
前記情報処理装置からインストールソフトウェア情報と使用ソフトウェア情報を収集し、
期間指定を含む所定の条件の入力を受付け、
前記インストールソフトウェア情報と使用ソフトウェア情報と前記期間指定を含む所定の入力条件から遊休ソフトウェアを判定し、
前記遊休ソフトウェアに対するアンインストール指示を受付け、
遊休ソフトウェアをアンインストールするための指示を前記情報処理装置に送信することを特徴とするソフトウェア資産管理方法。
【請求項３】
資産管理サーバと少なくとも一つの情報処理装置とをネットワークで接続し、前記資産管理サーバで前記情報処理装置のソフトウエア情報を管理するソフトウェア資産管理方法であって、
前記資産管理サーバからのソフトウェア情報の収集指示を受付け、
前記情報処理装置にインストールされているソフトウェアの情報と、情報処理装置で使用されるソフトウェアの情報を前記資産管理サーバに送信し、
前記資産管理サーバからの遊休ソフトウェアのアンインストール指示を受付け、
前記指示に基づいて、前記情報処理装置のインストールソフトウェアをアンインストールすることを特徴とするソフトウェア資産管理方法。
【請求項４】
前記資産管理サーバは、収集したソフトウェア情報の使用開始時刻、使用終了時刻、メモリ使用量、ページフォルト、及びＩ／Ｏ回数の少なくとも一つを用いて、指定条件以下なら遊休ソフトウェアと判定することを特徴とする請求項１記載のソフトウェア資産管理システム。
【請求項５】
前記情報処理装置は、前記資源管理サーバからのアンインストール指示を受取り、当該情報処理装置にインストールされているソフトウェアをアンインストールすることを特徴とする請求項１記載のソフトウェア資産管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遊休ソフトウェア資産の管理を行うためのソフトウェア資産管理方法及びシステムに関するものである。
【背景技術】
【０００２】
従来のソフトウェアライセンス管理方法には、インストールライセンス（ライセンスの保有につき、保有ライセンス数を超えない範囲でインストールが許可される）契約方式のソフトウェアを管理する方法（例えば、特許文献１参照。）と、同時実行ライセンス（ライセンスの保有につき、保有ライセンス数を超えない範囲で同時に利用することが許可される）契約方式のソフトウェアを管理する方法（例えば、特許文献２参照。）がある。
【０００３】
特許文献１は、上記インストールライセンス契約方式のソフトウェアを管理する方法であり、企業、団体またはグループの組織全体が保有するソフトウェアライセンス数を記憶し管理する手段と、組織内のコンピュータに実際にインストールされているソフトウェアを含むインベントリ情報をネットワークを介して自動収集する手段と、前記組織全体が保有するソフトウェアライセンス数と前記収集したソフトウェアのインベントリ情報に基づいて算出した実際に使用しているソフトウェアライセンス数との差を計算し、ソフトウェアライセンス数の過不足に関するライセンス使用状況またはソフトウェアライセンス数の追加購入情報を出力する手段とを備えることにより、その組織全体におけるソフトウェアライセンスの適切な購入を実現する。
【０００４】
特許文献２は、上記同時実行ライセンス契約方式のソフトウェアを管理する方法であり、ライセンス管理サーバがライセンスを発行し、ネットワークを介してユーザ端末に配信するので、ユーザが複数のユーザ端末を保有している場合でも、端末毎にライセンスを購入することなく複数の端末でソフトウェアを使用することができる。
【０００５】
【特許文献１】特開２００１−２２２４２４号公報
【特許文献２】特開２００３−８４８５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ソフトウェアライセンス管理の主な目的は、以下の２点である。
【０００７】
（1）ソフトウェアの購入ライセンス数の遵守
（2）ソフトウェアの購入ライセンス数の適正化
本発明は、インストールライセンス契約方式のソフトウェアライセンス管理について、主に上記（2）に関与する発明である。
【０００８】
インストールライセンス契約方式のソフトウェア管理方法は、従来技術でも開示されているように、コンピュータに実際にインストールされているソフトウェアの数の合計とソフトウェアライセンスの保有数を比較するのが一般的であり、この方法によって、不正コピーや過剰購入が生じない適正なソフトウェアライセンスの購入を実現することができる。
【０００９】
しかしながら、ソフトウェアライセンスやマシンリソースなどを無駄に使用している、インストールされているだけで利用されていないソフトウェアの存在を確認することはできない。
【００１０】
また、同時実行ライセンス契約方式のソフトウェア管理方法は、購入ライセンス数は実際に利用している数に応じて設定されるため、購入ライセンスには無駄が生じないが、上記管理方法同様、マシンリソースなどを無駄に使用している、インストールされているだけで利用されていないソフトウェアの存在を確認することはできない。
【００１１】
インストールライセンス契約方式のソフトウェア管理方法では、このようなインストールされているだけで利用されていないソフトウェアがあった状態で、新たな利用希望などによりインストール数が購入ライセンス数を超えるような場合は、ライセンスを追加購入しなければならないが、ライセンス購入には一定の期間が必要となり、その間はソフトウェアを利用したくても利用することができない。
【００１２】
インストールされているだけで利用されていないソフトウェアをアンインストールすれば問題が解決する。しかし、頻繁に利用するソフトウェアは認知度も高いが、利用していないソフトウェアの認知度は低い。インストールしてあることすら把握されていないために、アンインストールもされずにそのまま放置されてしまう。あるいは、利用してないと判断してアンインストールしたら、頻繁に利用するソフトウェアが動かなくなるといったことも起こり得る。
【００１３】
本発明は、上記事情に鑑みてなされたものであり、インストールしているが利用されていないソフトウェアを検出し、また、それの排除を支援する手段を提供することで、利用していないソフトウェアを排除し、より有効にライセンスを活用する、あるいは、購入ライセンスの適正化を実現することが可能なソフトウェア資源管理方法及びシステムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
資産管理サーバと複数の情報処理装置とをネットワークで接続し、資産管理サーバで複数の情報処理装置の情報を管理する本発明のソフトウェア資産管理方法では、複数の情報処理装置からインストールソフトウェア情報と使用ソフトウェア情報を収集し、期間指定を含む任意の条件の入力を受付け、前記インストールソフトウェア情報と使用ソフトウェア情報と前記期間指定を含む任意の入力条件から遊休ソフトウェアを判定し、前記遊休ソフトウェアに対するアンインストール指示を受付け、遊休ソフトウェアをアンインストールするための指示を情報処理装置に送信する。
【発明の効果】
【００１５】
本発明によって、インストールしているが利用していないソフトウェアを容易に検出できるだけでなく、利用していないソフトウェアの排除を効率的に実施することが可能となり、ソフトウェアの購入ライセンス数を適正化し、TCO（Total Cost of Ownership）を削減することが可能となる。
【００１６】
また、保有ライセンスの範囲内で、利用頻度の低いソフトウェアをアンインストールし、新たな利用希望に割り振るといった柔軟なライセンス運用が可能となり、保有ライセンスをより有効に活用することが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を用いて説明する。
【００１８】
図１は、ソフトウェア資源管理システムにおける計算機のシステム構成を示した図である。本ソフトウェア資源管理システムは、資産管理サーバ１００を有し、複数の資産エージェント１１０とネットワークを介して接続されている。資産管理サーバ１００には、オペレータが操作するための端末１２０が接続されている。また、資産管理サーバ１００には、データベース１５１、１５２、１５３、１５４、１５５、１５６、１５７、１５８、１５９が接続されている。
【００１９】
本ソフトウェア資源管理システムで管理対象とするソフトウェアは、資産管理サーバ１００と通信するための通信機能、メモリなどの記憶機能、ＣＰＵ（中央演算処理装置）などの処理機能を有するコンピュータなどのＯＡ機器（以下、これらを総称して「情報処理装置」と称す。）にインストールされている。本システムで管理対象とするソフトウェアをインストールしている情報処理装置は、資産エージェントと呼ぶプログラムが組み込まれている。
【００２０】
本システムでは、資産エージェント１１０から送信されてくるソフトウェア情報やソフトウェアの利用状況などを元に、インストールしているが利用していないソフトウェアかどうかを資産管理サーバで判定し候補を挙げ、該当するソフトウェアに対してアンインストールを促すことができる。これにより、利用実態に即したソフトウェア資源管理を実現し、インストールしているが利用していないソフトウェアを検出してアンインストールを促すことで余分なソフトウェアライセンスやハードディスクリソースを減らし、コスト削減を支援することが可能である。
【００２１】
尚、本実例で「遊休ソフトウェア」とは、情報処理装置にインストールされているソフトウェアで利用していないソフトウェアである。
【００２２】
次に、システム全体の動作について説明する。
【００２３】
図１に示すシステムにおいて資産管理サーバ１００は、情報処理装置からインストールされているソフトウェア情報を収集し遊休ソフトウェアかどうかを判定するサーバであり、遊休ソフトウェアと判定した場合はアンインストールを促すための情報を資産管理者へ提供するサーバである。
【００２４】
以下、資産管理サーバ１００、資産エージェント１１０について説明する。
【００２５】
資産管理サーバ１００は、情報処理装置の情報や情報処理装置にインストールされているソフトウェア情報を管理し、遊休ソフトウェアかどうかを判定するためのサーバであり、情報処理装置の情報やインストールされているソフトウェア情報をデータベース１５１、１５２、１５３、１５４、１５５、１５６、１５７、１５８、１５９へ登録するための資産情報登録部１０１、遊休ソフトウェアかどうかを判定するための遊休ソフトウェア判定部１０２、資産エージェント１１０にアンインストールする指示を処理するための指示受付部１０３とを有している。各部の動作については、後述する。
【００２６】
また、資産管理サーバ１００には、情報処理装置、インストールソフトウェアや使用ソフトウェアなどに関する情報を登録するデータベース１５１、１５２、１５３、１５４、１５５、１５６、１５７、１５８と、遊休条件などを登録するデータベース１５９が接続されている。各データベースには、それぞれ以下に示す情報が格納されている。各データベースの詳細は図２から１０に示す。
【００２７】
１５１：ハードウエア情報
１５２：ネットワーク情報
１５３：インストール済みソフトウエア情報
１５４：ソフトウエア管理情報（インストール、購入ソフトウエアの対応）
１５５：購入ソフトウエア管理情報
１５６：ソフトウエア資産管理情報
１５７：ソフトウエア使用履歴情報
１５８：ソフトウエア管理情報（インストール、使用ソフトウエアの対応）
１５９：遊休ソフトウエア判定条件
図２は、データベース１５１の内容を示したものである。このデータベースには、資産管理サーバ１００で管理されている情報処理装置に関するハードウェア情報が登録されている。このデータベースは、機器番号２０１、利用者２０２、部署２０３、設置場所２０４、金額２０５、製品名称２０６、製造元２０７、型名２０８、ＣＰＵ２０９、メモリ２１０、ＨＤＤ２１１が登録される。機器番号２０１は、情報処理装置を特定するための番号であり、資産管理システム上唯一つである。ＨＤＤ２１１は、ハードディスクドライブである。
【００２８】
図３は、データベース１５２の内容を示したものである。このデータベースには、資産管理サーバ１００で管理されている情報処理装置に関するネットワーク情報が登録されている。このデータベースは、機器番号３０１、ホスト名３０２、ＩＰアドレス３０３、ＭＡＣアドレス３０４が登録される。
【００２９】
図４は、データベース１５３の内容を示したものである。このデータベースには、資産管理サーバ１００で管理されている情報処理装置にインストールされているソフトウェア情報が登録されている。このデータベースは、機器番号４０１、インストールソフトウェアＩＤ４０２、プロダクトキー４０３、ＣＤキー４０４、シリアル番号４０５、状態フラグ４０６、アンインストール回数４０７が登録される。インストールソフトウェアＩＤ４０２は、インストールソフトウェアを特定するためのＩＤであり、資産管理システム上唯一である。状態フラグ４０６は、インストールソフトウェアの状態を表すものであり、０（インストール）、１（アンインストール）が登録される。なお、アンインストール回数４０７は、ユーザがソフトウエアを不正にインストールした状態を監視するためのもので、このような不正にインストールされたソフトウエアを管理者がアンインストールした回数が多いものはアンインストールできる可能性が高い。
【００３０】
図５は、データベース１５４の内容を示したものである。このデータベースには、インストールソフトウェア情報と購入ソフトウェア情報を対応付けるための情報が登録されている。このデータベースは、インストールソフトウェアＩＤ５０１、インストールソフトウェア名称５０２、バージョン５０３、ＧＵＩＤ(Globally Unique IDentifier：ソフトウエアに固有のＩＤ)５０４、購入ソフトウェアＩＤ５０５が登録される。ＧＵＩＤ５０４は、インストールソフトウェアに割当てられているユニークなＩＤである。購入ソフトウェアＩＤ５０５は、購入ソフトウェアを特定するためのＩＤであり、資産管理システム上唯一であり、これによって、後述の図６のデータベース１５５と対応付けられる。
【００３１】
図６は、データベース１５５の内容を示したものである。このデータベースには、購入ソフトウェア情報が登録されている。このデータベースは、購入ソフトウェアＩＤ６０１、購入ソフトウェア名称６０２、製造元６０３が登録される。
【００３２】
図７は、データベース１５６の内容を示したものである。このデータベースには、組織内で購入したソフトウェア資産情報が登録されている。このデータベースは、購入ソフトウェアＩＤ７０１、部署７０２、購入ライセンス数７０３、金額７０４、購入日付７０５が登録される。
【００３３】
図８は、データベース１５７の内容を示したものである。このデータベースには、資産管理サーバ１００で管理されている情報処理装置で実際に使用されたソフトウェア情報の履歴が登録されている。このデータベースは、機器番号８０１、使用ソフトウェアＩＤ８０２、使用開始時間８０３、使用終了時間８０４、メモリ使用量８０５、ページフォルト８０６、Ｉ／Ｏ回数８０７、取得日付８０８が登録される。使用ソフトウェアＩＤ８０２は、使用ソフトウェアを特定するためのＩＤであり、資産管理システム上唯一である。Ｉ／Ｏ回数８０７は、ソフトウェアがファイルへ入出力した回数である。これらの情報は、履歴としてすべて登録する。これにより、管理者はソフトウェアが過去どのくらい利用されていたかを知ることができる。
【００３４】
図９は、データベース１５８の内容を示したものである。このデータベースには、使用ソフトウェア情報とインストールソフトウェア情報を対応付けるための情報が登録されている。このデータベースは、使用ソフトウェアＩＤ９０１、使用ソフトウェア名称９０２、ファイル名９０３、ファイルバージョン９０４、ファイルサイズ９０５、ファイル作成日付９０６、インストールソフトウェアＩＤ９０７が登録される。
【００３５】
図１０は、データベース１５９の内容を示したものである。このデータベースには、遊休ソフトウェアであると判定するための遊休条件が登録されている。このデータベースは、条件名称１００１、利用時間１００２、メモリ使用量１００３、ページフォルト１００４、Ｉ／Ｏ回数１００５が登録される。
【００３６】
次に、資産管理サーバ１００の各部の動作について説明する。
【００３７】
図１１は、資産情報登録部１０１の処理を示したものである。
【００３８】
資産情報登録部１０１は、資産エージェントを用いて収集した情報処理装置のハードウェア情報(図２)、ネットワーク情報(図３)、インストールソフトウェア情報(図４、図５)、使用ソフトウェア情報(図８、図９)をデータベース１５１、１５２、１５３、１５４、１５７、１５８へ登録する。
【００３９】
まず、資産管理サーバは、資産エージェントへ情報の収集実行指示を送信(１２０１)をする。送信する伝文は、図１７とする。この伝文は、フラグ、ＩＰアドレス、ソフトウェア名、バージョン、ＧＵＩＤから構成されている。フラグは、実行指示を表し、１はインストールソフトウェア情報と使用ソフトウェア情報の両方の情報収集、２はインストールソフトウェア情報の収集、３は使用ソフトウェア情報の収集、４はアンインストールとする。ＩＰアドレスは、実行対象の情報処理装置のＩＰアドレスである。また、フラグがアンインストール指示の時だけ、ソフトウェア名、バージョン、ＧＵＩＤの領域を使用する。
【００４０】
資産エージェントでは、受付けた伝文を解析し(１２０２)、指示がソフトウェア情報収集ならばソフトウェア情報を抽出する(１２０３)。一方、解析した伝文の指示がアンインストールならば該当ソフトウェアをアンインストールする処理を実行する。アンインストール処理については後述する。資産エージェントがソフトウェア情報を抽出した後は、リストを作成する(１２０４)。ここで作成するリストは、図１８である。このリストは、ハードウェア情報とネットワーク情報のＩＰアドレス、ホスト名、ＭＡＣアドレス、型名、ＣＰＵ、メモリ、ＨＤＤ、インストールソフトウェア情報のインストールソフトウェア名、バージョン、ＧＵＩＤ、プロダクトキー、ＣＤキー、シリアル番号、使用ソフトウェア情報のファイル名、バージョン、サイズ、作成日付、使用開始時刻、使用終了時刻、メモリ使用量、ページフォルト、Ｉ／Ｏ回数から構成されている。ＧＵＩＤを取得できないソフトウェアも存在するので、ＧＵＩＤは空も在り得る。収集指示がインストールソフトウェア情報を収集しない場合は、インストールソフトウェア名、バージョン、ＧＵＩＤ、プロダクトキー、ＣＤキー、シリアル番号が空となり、また、使用ソフトウェア情報を収集しない場合は、ファイル名、バージョン、サイズ、作成日付、使用開始時刻、使用終了時刻、メモリ使用量、ページフォルト、Ｉ／Ｏ回数が空となる。このリストは、該当する分だけの複数レコードを持ち、インストールソフトウェア情報に関しては、インストールソフトウェア名、バージョンで、使用ソフトウェア情報に関しては、ファイル名、バージョン、サイズ、作成日付で昇順にソートされているものである。このリストは取得するデータがない場合、空となる。
【００４１】
資産エージェントは、作成したリスト(以下、「リスト」と称す)を資産管理サーバへ送信する(１２０５)。
【００４２】
資産管理サーバは、資産エージェントから図１８のリストを受信し(１２０６)、初期更新として、リストのハードウェア情報とネットワーク情報を登録する(１２０７)。
【００４３】
次に、資産管理サーバは、受信したリストのＩＰアドレスまたはホスト名を元にデータベース１５２(図３)から機器番号を引当て、インストールソフトウェア情報に関する既存リストを抽出する(１２０８)。インストールソフトウェア情報の既存リストは、該当機器番号が持つインストールソフトウェアＩＤ４０２を元にデータベース１５３(図４)、１５４(図５)からインストールソフトウェア名称５０２、バージョン５０３、インストールソフトウェアＩＤ５０１、状態フラグ４０６を抽出したものである。この既存リストは、該当する分だけの複数レコードを持ち、インストールソフトウェア名称、バージョンで昇順にソートされているものである。また、資産管理サーバから資産エージェントに送信した実行指示によって、該当する情報以外の既存リストは生成されない。既存リストは取得するデータがない場合、空となる。
【００４４】
以下の処理は、インストールソフトウェア情報に関するリストに対して行う処理である。使用ソフトウェア情報に関するリストに対しての処理は後述する。生成してないリストは処理対象とならない。
【００４５】
既存データとは、既存リストから抽出したデータであり、リストデータとは、リストから抽出したデータである。それぞれ抽出するデータは、インストールソフトウェア名、バージョンである。既存リスト、リスト、それぞれ次に取得するデータがない場合は、既存データ、リストデータ、それぞれデータなしとなる。
【００４６】
既存データとリストデータの比較とは、大小比較をするものである。まず、既存データのインストールソフトウェア名とリストデータのインストールソフトウェア名の比較をする。大小判定がつけば、既存データとリストデータの大小判定とする。インストールソフトウェア名が同じ場合は、既存データのバージョンとリストデータのバージョンを比較する。大小判定がつけば、既存データとリストデータの大小判定とする。バージョンも同じ場合は、同一インストールソフトウェアであり、既存データとリストデータの大小判定を＝（同一）判定とする。
【００４７】
処理１２０９では、既存リストのトップのデータを既存データに、リストのトップのデータをリストデータに代入し、処理１２１０を実行する。
【００４８】
処理１２１０では、既存データなし、かつ、リストデータなしの場合(Ｙ)、資産情報登録部の処理を終了する。そうでない場合(Ｎ)、処理１２１１を実行する。
【００４９】
処理１２１１では、既存データなし、かつ、リストデータありの場合(Ｙ)、処理１２２５を実行する。そうでない場合(Ｎ)、処理１２１２を実行する。処理１２２５−１２２７は、リストデータはあるが、このことが既存データに反映されてない場合の処理である。
【００５０】
処理１２１２では、既存データあり、かつ、リストデータなしの場合(Ｙ)、処理１２２８を実行する。そうでない場合(Ｎ)、処理１２１３を実行する。処理１２２８−１２３２は、リストデータはアンインストールされているが、このことが既存データに反映されていない場合の処理である。
【００５１】
処理１２１３では、既存データとリストデータを比較する。この大小判定が、「既存データ＝リストデータ」判定の場合(Ｙ)、処理１２１４を実行する。そうでない場合(Ｎ)、処理１２１８を実行する。処理１２１８−１２２４は、リストデータと既存データとを比較している途中の段階での処理である。
【００５２】
処理１２１４では、該当機器番号で既存データのインストールソフトウェアＩＤであるレコードの状態フラグ４０６が０(インストール)の場合(Ｙ)、処理１２１５を実行する。そうでない場合(Ｎ)、処理１２１７を実行する。
【００５３】
処理１２１５では、リストデータを元にリストから該当するソフトウェア情報を取得して、それらをデータベースに登録し、処理１２１６を実行する。データベース１５３のプロダクトキー４０３、ＣＤキー４０４、シリアル番号４０５を更新する。
【００５４】
処理１２１６では、既存リストの次のデータを既存データに、リストの次のデータをリストデータに代入し、処理１２１０へ戻る。
【００５５】
処理１２１７では、リストデータを元にリストから該当するソフトウェア情報を取得して、それらをデータベースに登録し、処理１２１６を実行する。データベース１５３のプロダクトキー４０３、ＣＤキー４０４、シリアル番号４０５を更新する。また、状態フラグ４０６が１(アンインストール)なので、０(インストール)に更新する。
【００５６】
処理１２１８では、既存データとリストデータを比較する。この大小判定が、「既存データ＜リストデータ」判定の場合(Ｙ)、処理１２１９を実行する。そうでない場合(Ｎ)、処理１２２３を実行する。（Ｙ）の場合、既存データに対応するデータが実際はリストデータから削除、即ちアンインストールされていることを示す。それ故、以下の処理１２２０では、アンインストール回数４０７を加算する。
【００５７】
処理１２１９では、該当機器番号で既存データのインストールソフトウェアＩＤであるレコードの状態フラグ４０６が０(インストール)の場合(Ｙ)、処理１２２０を実行する。そうでない場合(Ｎ)、処理１２２２を実行する。
【００５８】
処理１２２０では、該当機器番号で既存データのインストールソフトウェアＩＤであるレコードのアンインストール回数４０７を取得し、１加算し、処理１２２１を実行する。
【００５９】
処理１２２１では、既存データを元に既存リストから該当するソフトウェア情報を取得して、それらをデータベースに登録し、処理１２２２を実行する。データベース１５３の状態フラグ４０６を１(アンインストール)に、アンインストール回数４０７を処理１２２０で加算した値に更新する。
【００６０】
処理１２２２では、既存リストの次のデータを既存データに代入し、処理１２１０へ戻る。
【００６１】
処理１２２３では、リストデータを元にリストから該当するソフトウェア情報を取得して、それらをデータベースに登録し、処理１２２４を実行する。状態フラグ４０６が０(インストール)を、データベース１５３に追加する。即ち、リストデータには、既存データにはない新しいソフトウエアの情報が格納されているので、処理１２２３では、この新しいソフトウエア情報を登録する。
【００６２】
処理１２２４では、リストの次のデータをリストデータに代入し、処理１２１０へ戻る。
【００６３】
処理１２２５では、リストデータなしの場合(Ｎ)、処理１２１０へ戻る。一方、リストデータありの場合(Ｙ)、処理１２２６を実行する。
【００６４】
処理１２２６では、リストデータを元にリストから該当するソフトウェア情報を取得して、それらをデータベースに登録し、処理１２２７を実行する。状態フラグ４０６が０(インストール)を、データベース１５３に追加する。
【００６５】
処理１２２７では、リストの次のデータをリストデータに代入し、処理１２２５へ戻る。つまり、リストデータがなくなるまでこの処理を繰り返す。
【００６６】
処理１２２８では、既存データなしの場合(Ｎ)、処理１２１０へ戻る。一方、既存データありの場合(Ｙ)、処理１２２９を実行する。
【００６７】
処理１２２９では、該当機器番号で既存データのインストールソフトウェアＩＤであるレコードの状態フラグ４０６が０(インストール)の場合(Ｙ)、処理１２３０を実行する。そうでない場合(Ｎ)、処理１２３２を実行する。
【００６８】
処理１２３０では、該当機器番号で既存データのインストールソフトウェアＩＤであるレコードのアンインストール回数４０７を取得し、１加算し、処理１２３１を実行する。この処理によって、リストデータではソフトウエアがアンインストールされていることが既存データに反映される。
【００６９】
処理１２３１では、既存データを元に既存リストから該当するソフトウェア情報を取得して、それらをデータベースに登録し、処理１２３２を実行する。データベース１５３の状態フラグ４０６を１(アンインストール)に、アンインストール回数４０７を処理１２３０で加算した値に更新する。
【００７０】
処理１２３２では、既存リストの次のデータを既存データに代入し、処理１２２８へ戻る。つまり、既存データがなくなるまでこの処理を繰り返す。
【００７１】
以上の処理を対象データがなくなるまで繰り返し、インストールソフトウェア情報を登録する。
【００７２】
使用ソフトウェア情報の登録に関しては、リストの使用ソフトウェア情報全てをデータベース１５７に追加する。
【００７３】
図１２は、遊休ソフトウェア判定部１０２の処理を示したものである。
【００７４】
遊休ソフトウェア判定部１０２は、遊休ソフトウェア検索条件の入力画面(図１３)を表示し、資産管理者によって入力された期間指定を含む任意の条件で遊休ソフトウエアを検索する。ここで、指定条件以下なら遊休ソフトウェアと判定する。検索後、遊休ソフトウェアをインストールしている情報処理装置の一覧(図１４)を表示する。また、遊休ソフトウェアをアンインストールする場合は、検索結果からアンインストール対象を資産管理者が選択し決定することで、遊休ソフトウェア判定部１０２は指示受付部１０３にアンインストール指示を出すことができる。
【００７５】
まず、遊休ソフトウェア判定部１０２は、検索条件入力画面(図１３)を表示する(１３０１)。ここで、オペレータは、資産管理サーバに接続されている端末１２０を用いて検索条件を入力し、検索ボタンを押下する。検索条件の入力を受付け、処理１３０２を実行する。
【００７６】
処理１３０２では、検索条件に期間指定がない場合(Ｎ)、処理１３０１へ戻る。一方、期間指定がある場合(Ｙ)、期間条件を検索条件に追加し(１３０３)、処理１３０４を実行する。
【００７７】
処理１３０４では、検索条件に部署指定がない場合(Ｎ)、処理１３０６を実行する。一方、部署指定がある場合(Ｙ)、部署条件を検索条件に追加し(１３０５)、処理１３０６を実行する。
【００７８】
処理１３０６では、検索条件にソフトウェア名称指定がない場合(Ｎ)、処理１３０８を実行する。一方、ソフトウェア名称指定がある場合(Ｙ)、ソフトウェア名称条件を検索条件に追加し(１３０７)、処理１３０８を実行する。
【００７９】
処理１３０８では、遊休条件を遊休条件リストから読込む場合(Ｙ)、リストから選択した遊休条件を検索条件に追加し(１３１７)、処理１３１８を実行する。一方、遊休条件をリストから読込まない場合(Ｎ)、処理１３０９を実行する。
【００８０】
処理１３０９では、検索条件に利用時間指定がない場合(Ｎ)、処理１３１１を実行する。一方、利用時間指定がある場合(Ｙ)、利用時間を検索条件に追加し(１３１０)、処理１３１１を実行する。
【００８１】
処理１３１１では、検索条件にメモリ使用量指定がない場合(Ｎ)、処理１３１３を実行する。一方、メモリ使用量指定がある場合(Ｙ)、メモリ使用量を検索条件に追加し(１３１２)、処理１３１３を実行する。
【００８２】
処理１３１３では、検索条件にページフォルト指定がない場合(Ｎ)、処理１３１５を実行する。一方、ページフォルト指定がある場合(Ｙ)、ページフォルトを検索条件に追加し(１３１４)、処理１３１５を実行する。
【００８３】
処理１３１５では、検索条件にＩ／Ｏ回数指定がない場合(Ｎ)、処理１３１８を実行する。一方、Ｉ／Ｏ回数指定がある場合(Ｙ)、Ｉ／Ｏ回数を検索条件に追加し(１３１６)、処理１３１８を実行する。
【００８４】
上記の処理で追加したメモリ使用量、ページフォルト及びＩ／Ｏ回数を調べることにより、ソフトウエアがメモリにロードされただけか、それともメモリにロードされて実際に実行（使用）されたかを区別することができる。
【００８５】
期間指定を含む指定条件以下という範囲で検索を実行し結果を取得し(１３１８)、検索結果を画面(図１４)に表示して(１３１９)、処理１３２０を実行する。その際、図８のデータベース１５７の使用履歴に基づいて、条件で指定された期間内での使用時間の合計をチェックする。
【００８６】
処理１３２０では、オペレータが検索結果一覧からアンインストールするソフトウェアを選択し、アンインストールボタンを押下した場合(Ｙ)、アンインストール指示を資産エージェントに送信し(１３２１)、処理１３２２を実行する。送信する伝文は、図１９とする。資産エージェントでは、受付けた伝文を解析し、アンインストール指示ならば該当ソフトウェアをアンインストールする処理を実行する。アンインストール処理については後述する。一方、処理１３２０でアンインストールしない場合(Ｎ)、処理１３２２を実行する。
【００８７】
処理１３２２では、検索結果の遊休条件を保存するため、条件保存ボタンを押下した場合(Ｙ)、遊休条件をデータベース１５９に登録し(１３２３)、遊休判定部の処理を終了する。一方、遊休条件を保存しない場合(Ｎ)、遊休判定部の処理を終了する。
【００８８】
検索時に使用した検索条件を履歴として保存しておきたい場合は、図１３の条件保存ボタンを押下することで、利用時間、メモリ使用量、ページフォルト、Ｉ／Ｏの条件値をデータベース１５９に保存することができる。
【００８９】
遊休ソフトウェアの検索方法は、ソフトウェア利用時間、メモリ使用量、ページフォルトやＩ／Ｏを遊休条件(図１３)として用いて検索し一覧を表示(図１４)したが、他にも検索結果としては、例えば、図１５、図１６のような表示も可能である。
【００９０】
図１５は、通常のライセンス数集計を拡張して、ソフトウェアの未使用数(利用時間がないインストールライセンス数)を表示する図である。該当未使用数からインストールしている機器一覧を表示し、遊休ソフトウェアの是正を行うことができる。
【００９１】
図１６は、ソフトウェア利用時間のみからの集計方法で、一定以下の利用時間のソフトウェアを遊休と判定し、表示する図である。遊休ソフトウェアと判定された機器一覧に対して、是正を行うことができる。
【００９２】
また、遊休ソフトウェア一覧の出力項目に、データベース１５３のアンインストール回数４０７を追加することにより、アンインストール指示を選択する時の判断材料となる。
【００９３】
次に、資産エージェント１１０の説明をする。
【００９４】
資産エージェント１１０は、情報処理装置のインストールソフトウェア情報や使用ソフトウェア情報を監視し、資産管理サーバ１００へ資産情報を送信するためのエージェントであり、情報処理装置のインストールソフトウェア情報を監視するためのインストールソフトウェア情報監視部１１１、情報処理装置の使用ソフトウェア情報を監視するための使用ソフトウェア情報監視部１１２、資産管理サーバ１００と情報を送受信するための情報通信部１１３、アンインストールするためのアンインストール処理部１１４とを有している。インストールソフトウェア情報監視部１１１と使用ソフトウェア情報監視部１１２は、既存技術を用いて実現可能なので、説明は省略する。
【００９５】
図２０は、アンインストール処理部１１４の処理を示したものである。
【００９６】
アンインストール処理部１１４は、資産管理サーバから送信されてきた伝文(図１９)を解析し、フラグがアンインストールの指示の場合のみ処理を行う。
【００９７】
まず、アンインストール処理部は、サーバから受付けたアンインストール指示の伝文から、ソフトウェア名、バージョン、ＧＵＩＤを抽出し(２００２)、処理２００３を実行する。
【００９８】
処理２００３では、ＧＵＩＤがある場合(Ｙ)、処理２００４を実行する。一方、ＧＵＩＤがない場合(Ｎ)、処理２００５を実行する。
【００９９】
処理２００５では、抽出したソフトウェア名とバージョンを用いて、レジストリで一致する項目を検索し、該当する項目のアンインストール実行パスを抽出し、処理２００４を実行する。
【０１００】
処理２００４では、生成したアンインストール実行パスを実行し、処理２００６を実行する。
【０１０１】
処理２００６では、アンインストール処理の終了状態を資産管理サーバに送信する。
【０１０２】
以上により、該当するソフトウェアをアンインストールする。
【図面の簡単な説明】
【０１０３】
【図１】ソフトウェア資源管理システムの構成を示した図である。
【図２】ハードウエア情報のデータベースの内容を示した図である。
【図３】ネットワーク情報のデータベースの内容を示した図である。
【図４】インストール済みソフトウエア情報のデータベースの内容を示した図である。
【図５】ソフトウエア管理情報（インストール、購入ソフトウエアの対応）のデータベースの内容を示した図である。
【図６】購入ソフトウエア管理情報のデータベースの内容を示した図である。
【図７】ソフトウエア資産管理情報のデータベースの内容を示した図である。
【図８】ソフトウエア使用履歴情報のデータベースの内容を示した図である。
【図９】ソフトウエア管理情報（インストール、使用ソフトウエアの対応）のデータベースの内容を示した図である。
【図１０】遊休ソフトウエア判定条件のデータベースの内容を示した図である。
【図１１】資産情報収集部の処理を示した図である。
【図１２】遊休判定部の処理を示した図である。
【図１３】遊休ソフトウェア検索条件を設定する画面を示した図である。
【図１４】遊休ソフトウェア候補のリスト一覧の画面を示した図である。
【図１５】ライセンス数集計結果のリスト一覧の画面を示した図である。
【図１６】使用時間による遊休ソフトウェア候補のリスト一覧の画面を示した図である。
【図１７】通信部で送受信する情報を示した図である。
【図１８】通信部で送受信する情報を示した図である。
【図１９】通信部で送受信する情報を示した図である。
【図２０】アンインストール処理部の処理を示した図である。
【符号の説明】
【０１０４】
１００：資産管理サーバ
１１０：資産エージェント
１２０：端末
【図１】
2005301379.tif 000003
【図２】
2005301379.tif 000004
【図３】
2005301379.tif 000005
【図４】
2005301379.tif 000006
【図５】
2005301379.tif 000007
【図６】
2005301379.tif 000008
【図７】
2005301379.tif 000009
【図８】
2005301379.tif 000010
【図９】
2005301379.tif 000011
【図１０】
2005301379.tif 000012
【図１１】
2005301379.tif 000013
【図１２】
2005301379.tif 000014
【図１３】
2005301379.tif 000015
【図１４】
2005301379.tif 000016
【図１５】
2005301379.tif 000017
【図１６】
2005301379.tif 000018
【図１７】
2005301379.tif 000019
【図１８】
2005301379.tif 000020
【図１９】
2005301379.tif 000021
【図２０】
2005301379.tif 000022