(57)【要約】【課題】ソフトウェアを削除する際に、ソフトウェアから共有されソフトウェアの利用管理をする手段の削除と、削除対象のソフトウェアの利用に関する特定情報の返却とを、セキュリティを保ちつつ実行する。【解決手段】複数のソフトウェアにより共有されるライセンス管理共通モジュール１３が、ライセンスサーバ２からライセンスを取得してソフトウェアの利用管理を行う。削除モジュール１２が、ソフトウェアが削除されるときに、このソフトウェアがライセンスを利用しているかを判断し、この判断結果に基づいてライセンスをライセンスサーバ２に対して返却する。また、削除モジュール１２が、削除されるソフトウェア以外のソフトウェアが利用管理されているかを判断し、削除されるソフトウェア以外のソフトウェアが利用管理されていないと判断した場合に、ライセンス管理共通モジュール１３を削除する。【選択図】図２
2011138335.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアの利用に関する特定情報を管理する管理装置とネットワークを介して接続される情報処理装置であって、
複数のソフトウェアにより共有され、前記管理装置から前記ソフトウェアが利用する前記特定情報を取得してソフトウェアの利用管理を行う利用管理手段と、
前記ソフトウェアが削除されるときに、該ソフトウェアが前記特定情報を利用しているかを判断し、該ソフトウェアが前記特定情報を利用していると判断した場合に該特定情報を前記管理装置に対して返却し、前記削除されるソフトウェア以外のソフトウェアが前記利用管理手段によって利用管理されているかを判断し、前記削除されるソフトウェア以外のソフトウェアが前記利用管理手段によって利用管理されていないと判断した場合に、該利用管理手段を削除する削除手段とを備える
ことを特徴とする情報処理装置。
【請求項２】
前記ソフトウェアの利用に関する特定情報が、該ソフトウェアが利用するライセンスである
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記削除手段が、更に、前記削除されるソフトウェアが利用するライセンスの種別に応じて、前記ライセンスを前記管理装置に対して返却するかを判断する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記削除手段が、更に、前記削除されるソフトウェア以外のソフトウェアが前記利用管理手段によって利用管理されていると判断した場合に、該利用管理されているソフトウェアが利用するライセンスの種別に応じて、前記利用管理手段を削除するかを判断する
ことを特徴とする請求項２又は請求項３に記載の情報処理装置。
【請求項５】
ソフトウェアの利用に関する特定情報を管理する管理装置とネットワークを介して接続される情報処理装置の制御方法であって、
前記情報処理装置が、複数のソフトウェアにより共有され、前記管理装置から前記ソフトウェアが利用する前記特定情報を取得してソフトウェアの利用管理を行う利用管理手段と、前記ソフトウェアを削除する削除手段とを備えており、
前記ソフトウェアを削除するときに、該ソフトウェアが前記特定情報を利用しているかを判断し、該ソフトウェアが前記特定情報を利用していると判断した場合に該特定情報を前記管理装置に対して返却する工程と、
前記削除されるソフトウェア以外のソフトウェアが前記利用管理手段によって利用管理されているかを判断し、前記削除されるソフトウェア以外のソフトウェアが前記利用管理手段によって利用管理されていないと判断した場合に、該利用管理手段を削除する工程とを有する
ことを特徴とする情報処理装置の制御方法。
【請求項６】
請求項５に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
コンピュータが、ネットワークを介して、分散した資源にアクセスすることが提案されている。コンピュータが実行するソフトウェアに関しても、ネットワーク環境で使用されることが多くなり、コンピュータが何処からでもネットワークを介してソフトウェアを実行できるようになってきている。このようなネットワーク環境で使用するソフトウェアは、不特定多数の人がアクセスできるので、ライセンスによって、使用できるコンピュータやソフトウェアの本数を制限しているものが多い。ソフトウェアライセンスの方式として、ノードロックライセンス方式とフローティングライセンス方式という２種類の方式が主に使用されている。ノードロックライセンス方式は、ライセンスを特定のコンピュータに登録して、ソフトウェアの使用を可能とするライセンス方式である。フローティングライセンス方式は、ライセンスサーバでライセンスを管理し、ネットワーク上の複数のコンピュータからこのライセンスを取得してソフトウェアを使用するライセンス方式である。すなわち、フローティングライセンス方式は、複数のコンピュータをネットワークにより相互に通信可能に接続したシステムに適用されるライセンス方式である。
【０００３】
フローティングライセンス方式では、例えば、ネットワークを介して複数のクライアント装置と接続されたライセンスサーバにライセンス確認プログラムが常駐している。クライアント装置がアプリケーションを起動すると、そのアプリケーションがライセンスサーバのライセンス確認プログラムを呼び出す。呼び出されたライセンス確認プログラムは、クライアント装置のアプリケーションから送信される情報に基づいて動作環境をチェックし、動作環境が適正である場合に、アプリケーションに動作許可を与える。
【０００４】
下記の特許文献１は、複数の共有主体により共有される共有プログラムをアンインストールするにあたり、共有主体が存在しなくなった場合にこの共有プログラムをアンインストールするコンピュータのプログラム管理方法を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−２１９２８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１に開示されるプログラムをアンインストールする技術は、ライセンスサーバ上で管理されているライセンス情報を考慮していないので、以下に述べるような問題がある。即ち、アンインストールされたソフトウェアに対応するライセンス情報が、ライセンスサーバ上に残ってしまう。ライセンス情報はクライアント装置においてソフトウェアが利用されていることを示すので、ソフトウェアが削除されたのにもかかわらずソフトウェアのライセンス情報がライセンスサーバ上に残ると、適切なライセンス管理ができなくなる。
【０００７】
本発明は、ソフトウェアを削除する際に、ソフトウェアから共有されソフトウェアの利用管理をする手段の削除と、削除対象のソフトウェアの利用に関する特定情報の返却とを、セキュリティを保ちつつ実行する情報処理装置の提供を目的とする。
【課題を解決するための手段】
【０００８】
本発明の一実施形態の情報処理装置は、ソフトウェアの利用に関する特定情報を管理する管理装置とネットワークを介して接続される情報処理装置である。前記情報処理装置が、複数のソフトウェアにより共有され、前記管理装置から前記ソフトウェアが利用する前記特定情報を取得してソフトウェアの利用管理を行う利用管理手段と、前記ソフトウェアが削除されるときに、該ソフトウェアが前記特定情報を利用しているかを判断し、該ソフトウェアが前記特定情報を利用していると判断した場合に該特定情報を前記管理装置に対して返却し、前記削除されるソフトウェア以外のソフトウェアが前記利用管理手段によって利用管理されているかを判断し、前記削除されるソフトウェア以外のソフトウェアが前記利用管理手段によって利用管理されていないと判断した場合に、該利用管理手段を削除する削除手段とを備える。
【発明の効果】
【０００９】
本発明によれば、ソフトウェアを削除する際に、ソフトウェアから共有されソフトウェアの利用管理をする手段の削除と、削除対象のソフトウェアの利用に関する特定情報の返却とを、セキュリティを保ちつつ実行することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態のシステム構成例を示す図である。
【図２】クライアント装置の機能構成例とハードウェア構成例とを示す図である。
【図３】ライセンスサーバのハードウェア構成例を示す図である。
【図４】ソフトウェア削除時のクライアント装置の動作処理フローの一例である。
【図５】他の実施形態のシステム構成例を示す図である。
【図６】複数の異なるソフトウェア間で同じフローティングライセンス体系を持つシステムの例を示す図である。
【発明を実施するための形態】
【００１１】
図６は、複数の異なるソフトウェア間で同じフローティングライセンス体系を持つシステムの例を示す図である。図６に示すように、互いに異なるソフトウェアであるソフトウェアＡ（ソフトウェア１０１）とソフトウェアＢ（ソフトウェア１０２）が、クライアント装置１００にインストールされているものとする。クライアント装置１００が備えるライセンス管理共通モジュール１０３が、ライセンスサーバ１０５からライセンスを取得し、ソフトウェアの使用を可能とする。ライセンス管理共通モジュール１０３は、ライセンス確認プログラムを含み、ソフトウェアＡ、Ｂから共有される共有プログラムである。すなわち、ライセンス管理共通モジュール１０３は、ソフトウェアの利用管理（例えば、ライセンス管理）をする手段であって、ソフトウェアＡ、Ｂへライセンスの機能を提供する。ライセンス管理共通モジュール１０３は、クライアント装置１００上の全てのソフトウェアのライセンス状況を把握しており、このライセンス状況を示す情報をライセンス管理ツール１０４へ渡す。ライセンス管理ツール１０４は、ライセンス管理共通モジュール１０３から渡されたライセンス状況を示す情報を表示する。
【００１２】
ライセンスサーバ１０５は、ネットワークを介してクライアント装置１００と接続している。ライセンスサーバ１０５は、ライセンス情報を管理する。ライセンス情報は、クライアント装置１００にインストールされているソフトウェアが利用される際にソフトウェアに対して発行するライセンスの情報である。そして、ライセンスサーバ１０５は、現在、どのクライアント装置１００でライセンスが使用されているかに関する情報、全体で何個のライセンスが使用されているかに関する情報を管理する。クライアント装置１００にインストールされているソフトウェアＡ、Ｂは、起動する際に、ライセンス管理共通モジュール１０３を介してライセンスサーバ１０５からライセンスを取得して使用する。ソフトウェアが取得したライセンスは、そのソフトウェアの使用を止めたときに、自動的にライセンスサーバ１０５に返却される。クライアント装置１００のユーザがライセンス管理ツール１０４を用いて操作入力を行うことで、クライアント装置１００がライセンスをライセンスサーバ１０５に返却するようにしてもよい。
【００１３】
クライアント装置１００上で、ソフトウェアＡを削除する場合を想定する。ソフトウェアＡに関連するライセンス管理共通モジュール１０３をソフトウェアＡとともに削除してしまうと、クライアント装置１００において、ライセンス管理共通モジュール１０３を利用しているソフトウェアＢのライセンス管理ができなくなってしまう。従って、クライアント装置１００が、インストールされているソフトウェアを削除する場合にライセンス管理共通モジュール１０３を削除しないように処理することが考えられる。しかし、クライアント装置１００に一旦ライセンス管理共通モジュール１０３がインストールされると、ライセンス管理されているソフトウェアが全て削除されるにもかかわらずライセンス管理共通モジュール１０３が削除されないのは好ましくない。また、ライセンス管理共通モジュール１０３に関連するライセンス管理ツール１０４の実体や、それに付随するショートカットなどの情報がクライアント装置１００に残ることも好ましくない。
【００１４】
ここで、従来技術を利用してクライアント装置１００からソフトウェアを削除する際にライセンス管理共通モジュール１０３を削除することを考えてみる。クライアント装置１００からソフトウェアを削除する際にライセンス管理共通モジュール１０３を削除すると、ライセンスサーバ１０５上で管理されているライセンス情報を考慮していないので、以下に述べるような新たな問題が生じる。例えば、図６に示すクライアント装置１００にソフトウェアＡのみがインストールされているものとする。ここで、クライアント装置１００がソフトウェアＡを削除し、かつ、クライアント装置１００が、特許文献１に開示される方法を適用してライセンス管理共通モジュール１０３、ライセンス管理ツール１０４を削除した場合を想定する。しかし、この場合においても、ライセンスサーバ１０５が管理している、削除されたソフトウェアに対応するライセンス情報が、ライセンスサーバ１０５上に残ってしまう。ライセンス情報はクライアント装置１００においてソフトウェアが利用されていることを示すので、ソフトウェアＡが削除されたのにもかかわらずソフトウェアＡのライセンス情報がライセンスサーバ１０５上に残ると、適切なライセンス管理ができなくなる。
【００１５】
また、ソフトウェアの削除に伴うライセンスの返却についても、以下のような問題が生じる。クライアント装置１００がライセンス管理ツール１０４を用いてライセンスを返却しても、ソフトウェアの削除と同時にライセンス管理共通モジュール１０３、ライセンス管理ツール１０４が削除されるとライセンスを返却できなくなる。クライアント装置１００が、ソフトウェアの削除を行う前にライセンスを返却するようにしても、クライアント装置１００がライセンスの返却手続を誤るという問題がある。また、クライアント装置１００のユーザが、ライセンスの返却手続きが誤っていることに気付いた後に、ライセンスの返却を行いたい場合は、クライアント装置１００にソフトウェアを再度インストールすることが必要となる。上述したような問題は、ライセンスについてのみならず、例えば、ソフトウェアを利用しているユーザの個人情報などの、ソフトウェアの利用に関する任意の特定情報についても問題が生じ得る。
【００１６】
次に、クライアント装置に、ライセンスが必要な複数の種類のソフトウェアとライセンス管理モジュールとが存在する場合に、ソフトウェアのアンインストールの実行またはライセンス管理モジュールの削除を行ったときに生じる課題を解決する実施形態を説明する。
【００１７】
図１は、本実施形態のシステム構成例を示す図である。図１に示すシステムは、ライセンスサーバ２と、ライセンスサーバ２とＬＡＮ（Local Area Network）３を介して接続される複数のクライアント装置１とを備える。ライセンスサーバ２とクライアント装置１とは、例えば、ＴＣＰ／ＩＰ等の所定のプロトコルを用いて、ＬＡＮ３を介してファイルの送受信等の通信を行うことができる。なお、ＴＣＰ／ＩＰは、Transmission Control Protocol/Internet
Protocol の略語である。なお、本実施形態のシステムが備えるクライアント装置１とライセンスサーバ２とが、ＬＡＮ以外の任意のネットワークで接続されるようにしてもよい。
【００１８】
クライアント装置１は、本実施形態の情報処理装置である。クライアント装置１は、例えば、デスクトップ型ＰＣ（Personal Computer ）、携帯型ＰＣ等のコンピュータである。本実施形態において、クライアント装置１は、ライセンスサーバ２によって、フローティングライセンス方式で管理されているものとする。クライアント装置１は、クライアント装置１にインストールされたソフトウェアが利用するライセンスをライセンスサーバ２から取得した上で、このソフトウェアを実行する。ライセンスサーバ２は、クライアント装置１にインストールされたソフトウェアが利用するライセンスを管理（ライセンス管理）する管理装置である。ライセンスは、ソフトウェアの利用に関する特定情報の一つであり、クライアント装置１は、ライセンスサーバ２からライセンスを取得することでソフトウェアを利用することができる。
【００１９】
図２は、クライアント装置の機能構成例とハードウェア構成例とを示す図である。図２（Ａ）は、クライアント装置の機能構成例を示す。図２（Ａ）には、クライアント装置１が備える処理部のうち、ソフトウェアの削除処理に関する処理部を示す。クライアント装置１は、ソフトウェアアンインストーラ１１、削除モジュール１２、ライセンス管理共通モジュール１３、ライセンス管理ツール１４を備える。また、図２（Ａ）に示す例では、クライアント装置１には図示を省略するソフトウェアインストーラによってソフトウェア１５がインストールされているものとする。ソフトウェア１５は、例えば、ワードプロセッサソフト、表計算ソフト、データベースソフト、画像編集ソフト、ゲームソフト、エディタソフト等の任意のソフトウェアである。ライセンス管理共通モジュール１３は、図６を参照して前述したライセンス管理共通モジュール１０３と同様の機能を有する。すなわち、ライセンス管理共通モジュール１３は、複数のソフトウェアにより共有される。そして、ライセンス管理共通モジュール１３は、図１に示すライセンスサーバ２からソフトウェアの利用に関する特定情報（ライセンス）を取得してソフトウェアの利用管理を行う利用管理手段として機能する。具体的には、ライセンス管理共通モジュール１３は、実行対象のソフトウェアから依頼を受けて、クライアント装置１の識別情報、クライアント装置１の機器情報、ライセンスアクセス番号をライセンスサーバ２に送信する。ライセンスアクセス番号は、ソフトウェアのパッケージに一意に付された番号であり、ライセンスサーバ２にライセンスの発行を要求する際に必要となる番号である。
【００２０】
ライセンスサーバ２は、上記識別番号、機器情報、ライセンスアクセス番号をライセンスサーバ２に予め記憶されているデータベースと照合することによって、ライセンス認証の可否を判断する。ライセンスサーバ２によってライセンス認証がされると、ライセンス管理共通モジュール１３が、ライセンスサーバ２からライセンスを取得して、ソフトウェアの利用を可能とする。ライセンス管理ツール１４は、図６を参照して前述したライセンス管理ツール１０４と同様の機能を有する。具体的には、ライセンス管理ツール１４は、クライアント装置１にインストールされているソフトウェアのライセンス状況を示す情報を表示する。
【００２１】
ソフトウェアアンインストーラ１１は、ソフトウェア１５を削除する。ソフトウェアアンインストーラ１１は、ソフトウェア１５の削除を実行するときに、削除モジュール１２を呼び出す。ソフトウェアアンインストーラ１１は、例えば、クライアント装置１がソフトウェア１５をインストールしたときにクライアント装置１の所定の記憶部に格納される。削除モジュール１２は、ソフトウェアアンインストーラ１１に呼び出されたとき、すなわち、ソフトウェア１５が削除されるときに、以下の処理を行う。削除モジュール１２は、削除対象のソフトウェアがライセンスを利用しているかを判断し、該ソフトウェアがライセンスを利用していると判断した場合に、ライセンスをライセンスサーバ２に対して返却する。ライセンスの返却は、ライセンス管理共通モジュール１３が利用管理している上記削除対象のソフトウェアのライセンスを削除することと、ライセンスサーバ２に、ライセンスサーバ２が管理しているライセンス情報を更新させることである。このライセンス情報の更新は、クライアント装置１における上記削除対象のソフトウェアについてのライセンスを未使用状態にすることである。
【００２２】
また、削除モジュール１２は、削除されるソフトウェア以外のソフトウェアがライセンス管理共通モジュール１３によって利用管理されているかを判断する。そして、削除モジュール１２は、削除されるソフトウェア以外のソフトウェアがライセンス管理共通モジュール１３によって利用管理されていないと判断した場合に、ライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除する。削除モジュール１２が、更に、削除されるソフトウェアが利用するライセンスの種別に応じて、ライセンスをライセンスサーバ２に対して返却するかを判断するようにしてもよい。削除モジュール１２が、削除されるソフトウェア以外のソフトウェアがライセンス管理共通モジュール１３によって利用管理されている場合に、以下のようにしてライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除するかを判断してもよい。削除モジュール１２は、利用管理されていると判断されたソフトウェア（削除されるソフトウェア以外のソフトウェア）が利用するライセンスの種別に応じて、ライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除するかを判断する。本実施形態の情報処理装置の制御方法及びそのコンピュータプログラムは、図２（Ａ）に示すクライアント装置１が備える各構成要素によって実現される。
【００２３】
図２（Ａ）に示す例では、削除モジュール１２はソフトウェアアンインストーラ１１から呼び出しを受けてライセンス管理共通モジュール１３及びライセンス管理ツール１４の削除処理を実行するが、本発明の適用例は図２（Ａ）に示す例に限定されない。すなわち、クライアント装置１のユーザがどのソフトウェアを削除するかを指定し、この指定に応じて、削除モジュール１２がライセンス管理共通モジュール１３及びライセンス管理ツール１４の削除処理を実行するようにしてもよい。
【００２４】
図２（Ｂ）は、クライアント装置のハードウェア構成例を示す。クライアント装置１は、制御手段２００、入力手段２０４、出力手段２０５、通信制御手段２０６、記憶手段２０８、記憶媒体駆動手段２０９、入出力Ｉ／Ｆ（Interface）２１０を備える。制御手段２００乃至入出力Ｉ／Ｆ２１０は、バスライン２０７を介して接続されている。バスライン２０７は、制御手段２００とその他の構成要素との間のデータ信号、制御信号等の送受信を媒介する。
【００２５】
制御手段２００は、クライアント装置１の動作を制御する。制御手段２００は、ＣＰＵ２０１、ＲＯＭ（Read Only Memory）２０２、ＲＡＭ（Random Access Memory）２０３を備える。ＣＰＵ２０１は、所定のプログラムに従って、各種の演算、情報処理、及びクライアント装置全体の制御処理を行う。本実施形態に特有の動作として、ＣＰＵ２０１は、図２（Ａ）に示すソフトウェアアンインストーラ１１、削除モジュール１２、ライセンス管理共通モジュール１３、ライセンス管理ツール１４の動作を制御する。また、ＣＰＵ２０１は、クライアント装置１にインストールされたソフトウェアを実行する。
【００２６】
ＲＯＭ２０２は、ＣＰＵ２０１が各種演算や制御を行うために用いる各種プログラム、データ及びパラメータ等を記憶する記憶装置である。ＲＡＭ２０３は、ＣＰＵ２０１にワーキングメモリとして使用されるランダムアクセス可能な記憶装置である。本実施形態では、ＲＡＭ２０３には、ＣＰＵ２０１がライセンスの取得やソフトウェアの起動などを行うためのエリアが確保される。
【００２７】
入力手段２０４は、例えばキーボードやマウスなどの入力装置を備える。キーボードは、クライアント装置１に対して文字や数字などの情報を入力する装置である。キーボードは、例えば、仮名や英文字などを入力するキーや数字を入力するためのテンキー、各種機能キー、カーソルキー及びその他のキーを備える。キーボードは、ユーザの操作に従って、例えば、ライセンスサーバ２に送信されるライセンスアクセス番号を入力する。マウスは、ポインティングデバイスである。ユーザが、ＧＵＩ（Graphical User Interface）などを用いてクライアント装置１を操作する場合、表示装置上に表示されたボタンやアイコンなどをマウスでクリックすることにより、所定の情報の入力を行うことができる。例えば、クライアント装置１が、インストールされたソフトウェアを表すアイコンを表示装置上に表示し、ユーザがアイコンをマウスでクリックすることに応じて、ＣＰＵ２０１がソフトウェアを起動する。
【００２８】
出力手段２０５は、例えば表示装置、印刷装置等を備える。表示装置は、例えばＣＲＴ（Cathode Ray Tube）ディスプレイ、液晶ディスプレイ、又はプラズマディスプレイを備える画面上に各種情報を表示する。表示装置は、キーボードやマウスの入力結果や、ソフトウェアが提供する画面（例えばユーザインターフェース）等を表示する。印刷装置は、例えば、インクジェットプリンタ、レーザプリンタ、熱転写プリンタ、又はドットプリンタ等の各種プリンタ装置を備える。印刷装置は、出力結果（文書や画像など）を紙などの印刷媒体に印刷する。
【００２９】
通信制御手段２０６は、ネットワーク（例えば、ＬＡＮ３、インターネット）を介してクライアント装置１を各種サーバ装置（ライセンスサーバ２、Ｗｅｂサーバ、メールサーバなど）に接続する。通信制御手段２０６は、例えば、モデム、ターミナルアダプタ等の装置を備える。通信制御手段２０６がインターネットを介した通信を行う場合には、例えば、ＴＣＰ／ＩＰ等のプロトコルが用いられる。通信制御手段２０６は、クライアント装置１とライセンスサーバ２との通信を確立・維持し、ソフトウェアが利用するライセンスをライセンスサーバ２から受信する。記憶手段２０８は、読み書き可能な記憶媒体と、その記憶媒体に対してプログラムやデータを読み書きするための駆動装置を備える。本実施形態では、記憶手段２０８は、ハードディスクを備えるローカルディスクである。なお、記憶手段２０８が備える記憶媒体が、光磁気ディスク、磁気ディスク、半導体メモリ等であってもよい。
【００３０】
記憶手段２０８には、ライセンスサーバ２から取得されたライセンスに関する情報、ソフトウェア、図２（Ａ）に示すライセンス管理モジュール１３、ライセンス管理ツール１４が記憶されている。また、記憶手段２０８には、例えば、仮名を漢字に変換するための漢字仮名変換ソフト、各種サーバ装置から受信したＷｅｂページを表示装置に表示するためのブラウザソフトが記憶されている。また、記憶手段２０８には、通信制御手段２０６を制御し、ネットワークを介した通信を維持する通信プログラムが記憶されている。また、記憶手段２０８には、メモリ管理やファイル入出力管理などのクライアント装置１を動作させるための基本ソフトウェアであるＯＳ（Operating System）などが記憶されている。記憶媒体駆動手段２０９は、着脱可能な記憶媒体を駆動してデータの読み書きを行う駆動装置である。着脱可能な記憶媒体は、例えば、光磁気ディスク、磁気ディスク、磁気テープ、半導体メモリ、データをパンチした紙テープ、ＣＤ−ＲＯＭ等である。入出力ＩＦ２１０は、例えば、シリアルインターフェース等の規格のインターフェースである。入出力ＩＦ２１０に、入出力ＩＦ２１０の規格に対応した外部機器を接続することにより、クライアント装置１の機能を拡張することができる。上記外部機器は、例えば、ハードディスクなどの記憶装置、スピーカ、マイクロフォン等である。
【００３１】
図３は、ライセンスサーバのハードウェア構成例を示す図である。ライセンスサーバ２は、制御手段３０１、記憶手段３０５、入力手段３０７、出力手段３０８、通信制御手段３０９、記憶媒体駆動手段３１０を備える。制御手段３０１乃至記憶媒体駆動手段３１０は、バスライン３１１を介して接続されている。制御手段３０１は、ライセンスサーバ２の動作を制御する。制御手段３０１は、ＣＰＵ３０２、ＲＯＭ３０４、ＲＡＭ３０３を備える。ＣＰＵ３０２は、所定のプログラムに従って、各種の演算、情報処理、及びライセンスサーバ全体の制御処理を行う。具体的には、ＣＰＵ２０１は、クライアント装置１によるソフトウェアの利用に関するライセンス認証処理を行う。また、ＣＰＵ２０１は、クライアント装置１からのライセンスの返却に応じて、ライセンスサーバ２が管理しているこのクライアント装置１に対応するライセンス情報を更新する。ＲＡＭ３０３は、ＣＰＵ３０２にワーキングメモリとして使用されるランダムアクセス可能な記憶装置である。ＲＯＭ３０４は、ＣＰＵ３０２が各種演算や制御を行うために用いる各種プログラム、データ、及びパラメータ等を記憶する記憶装置である。
【００３２】
記憶手段３０５は、例えば、大容量のハードディスクなどで構成された読み書き可能な記憶媒体である。記憶手段３０５は、プログラム格納部３０６を備える。プログラム格納部３０６は、ＯＳ３２１、ライセンス管理プログラム３２２等を格納する。ライセンス管理プログラム３２２は、クライアント装置１に関するライセンス認証処理を実行するための機能をＣＰＵ３０２に発揮させるためのプログラムである。ライセンス認証処理は、ライセンスの発行を許可するか否かを判断する処理である。ＣＰＵ３０２は、ライセンス管理プログラムに従って動作して、クライアント装置１から送信されてきたクライアント装置１の識別情報、機器情報、ライセンスアクセス番号と予めＲＯＭ３０４内に記憶されているデータベースとを照合する。このデータベースは、予め決められた、クライアント装置とその識別情報、機器情報との対応情報を含む。また、このデータベースは、予め決められた、ライセンス認証を許可するクライアント装置１とライセンスアクセス番号との対応情報を含む。ＣＰＵ３０２は、上記照合結果に基づいて、クライアント装置１の識別判定処理を実行したり、ライセンスの発行の許否を判断したりする。また、ＣＰＵ３０２は、クライアント装置１の識別判定処理結果、ライセンスの発行の許否の判断結果を通信制御手段３０９、ネットワークを介してクライアント装置１に送信する。ＣＰＵ３０２がライセンスの発行を許可する場合、ライセンスの発行の許否の判断結果は、クライアント装置１が実行するソフトウェアが利用するライセンスを含む。
【００３３】
入力手段３０７、出力手段３０８、記憶媒体駆動手段３１０は、それぞれ、図２（Ｂ）を参照して説明したクライアント装置１が備える入力手段２０４、出力手段２０５、記憶媒体駆動手段２０９と同様であるので、説明を省略する。通信制御手段３０９は、ネットワークを介してクライアント装置１等と通信する。具体的には、通信制御手段３０９は、クライアント装置１からクライアント装置１の識別情報、機器情報、ライセンスアクセス番号を受信する。また、通信制御手段３０９は、クライアント装置１に対して、クライアント装置１の識別判定処理結果、ライセンス認証の可否の判断結果を送信する。
【００３４】
図４は、ソフトウェア削除時のクライアント装置の動作処理フローの一例を示す図である。まず、クライアント装置１が備えるソフトウェアアンインストーラ１１が、利用管理すなわちライセンス管理されたソフトウェアの削除を開始し（ステップＳ１）、削除モジュール１２を呼び出す。次に、削除モジュール１２が、削除対象のソフトウェアがライセンスサーバ２から正式ライセンスを取得しているかを判断する（ステップＳ２）。削除モジュール１２が、削除対象のソフトウェアがライセンスサーバ２から正式ライセンスを取得していないと判断した場合はステップＳ４に進む。例えば、削除対象のソフトウェアが取得しているライセンスの種別が、所定の期間に限って利用できる、お試しライセンスである場合は、削除モジュール１２は、削除対象のソフトウェアが正式ライセンスを取得していないと判断する。削除モジュール１２が、削除対象のソフトウェアが正式ライセンスを取得していると判断した場合は、ステップＳ３に進む。
【００３５】
ステップＳ３において、削除モジュール１２が、削除対象のソフトウェアの正式ライセンスをライセンスサーバ２に返却する（ステップＳ３）。これにより、ライセンスサーバ２上でライセンス情報が更新される。続いて、削除モジュール１２が、削除対象のソフトウェア以外のソフトウェアがライセンス管理共通モジュール１３によって利用管理されているかを判断する（ステップＳ４）。削除モジュール１２が、削除されるソフトウェア以外のソフトウェアがライセンス管理共通モジュール１３によって利用管理されていないと判断した場合に、ライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除する（ステップＳ５）。これにより、削除されるソフトウェア以外のソフトウェアが利用管理されていないことが確認されてからライセンス管理共通モジュール１３及びライセンス管理ツール１４が削除される。従って、ライセンス管理共通モジュール１３及びライセンス管理ツール１４をセキュリティを保ちつつ削除することができる。
【００３６】
削除モジュール１２が、削除対象のソフトウェア以外のソフトウェアがライセンス管理共通モジュール１３によって利用管理されていると判断した場合には、削除モジュール１２は以下の処理を行う。削除モジュール１２は、利用管理されているソフトウェア（削除対象のソフトウェア以外のソフトウェア）が取得しているライセンスの種別をライセンス管理共通モジュール１３に問い合わせて取得する。そして、削除モジュール１２は、取得したライセンスの種別に基づいて、利用管理されているソフトウェアのライセンスが全てお試しライセンスであり、かつ、そのソフトウェアについてお試しライセンスの使用履歴がないかを判断する（ステップＳ６）。利用管理されているソフトウェアのライセンスが全てお試しライセンスであり、かつ、お試しライセンスの使用履歴がない場合にはステップＳ５に進む。利用管理されているソフトウェアのライセンスが正式ライセンスか、または、ソフトウェアがお試しライセンスを１つ以上使用中である場合は、削除モジュール１２はライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除しない（ステップＳ７）。
【００３７】
なお、上記ステップＳ６及びＳ７の処理に替えて、削除モジュール１２が、ユーザに対してライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除するかを確認するＵＩ（User Interface）を表示するようにしてもよい。そして、削除モジュール１２が、このＵＩに従ったユーザの操作入力に応じてライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除するようにしてもよい。また、削除モジュール１２がソフトウェアアンインストーラ１１とは別個に動作するようにしてもよい。すなわち、上記ステップＳ２において、削除モジュール１２が、ユーザによって削除対象のソフトウェアの指定があるかを判断し、削除対象のソフトウェアの指定がない場合に、上記ステップＳ４の処理を実行する。また、図４では、削除モジュール１２がライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除する例について説明したが、削除モジュール１２による削除対象はライセンス管理共通モジュール１３及びライセンス管理ツール１４に限定されない。例えば、削除モジュール１２が、利用管理されているソフトウェア間で共通に使用されているユーザデータなどを削除するようにしてもよい。
【００３８】
図５は、他の実施形態のシステム構成例を示す図である。図５に示すシステムにおいては、複数のクライアント装置１がネットワーク（インターネット４）を介してライセンスサーバ２と接続される。クライアント装置１は、クライアント装置１上でソフトウェアが起動するときに、インターネット４を介してライセンスサーバ２に対してライセンスの取得要求をする。図５に示す実施形態においても、クライアント装置１は、図４を参照して前述した処理フローに従って、ライセンス管理共通モジュール１３及びライセンス管理ツール１４の削除処理を実行する。
【００３９】
なお、本発明の適用例は、ライセンスサーバ２がクライアント装置１上で利用されるソフトウェアのライセンス管理を実行する例に限定されない。ライセンスサーバ２が、ソフトウェアを利用しているユーザの個人情報などの、ライセンス以外のソフトウェアの利用に関する任意の特定情報を管理するようにしてもよい。また、ライセンス管理共通モジュール１３が、ライセンスサーバ２からソフトウェアが利用する特定情報を取得してソフトウェアの利用管理を行うようにしてもよい。そして、クライアント装置１上でソフトウェアが削除されるときに、削除モジュール１２（図２（Ａ）を参照）が、該ソフトウェアが特定情報を利用しているかを判断し、該判断結果に基づいて該特定情報をライセンスサーバ２に返却するようにしてもよい。これにより、ソフトウェアの削除の実行時に、ライセンスサーバ２が管理している上記ソフトウェアの利用に関する特定情報が残らないようにすることができる。
【００４０】
また、削除モジュール１２が、削除対象のソフトウェア以外のソフトウェアが利用管理されているかを判断し、このソフトウェアが利用管理されていないと判断した場合に、ライセンス管理共通モジュール１３及びライセンス管理ツール１４を削除してもよい。また、削除モジュール１２が、利用管理されているソフトウェア間で共通のデータを削除するようにしてもよい。これにより、クライアント装置１が、ライセンス管理共通モジュール１３、又は、利用管理されているソフトウェア間で共通のデータを、セキュリティを保ちつつ削除することが可能となる。
【００４１】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００４２】
１  クライアント装置
２  ライセンスサーバ
３  ＬＡＮ
【図１】
2011138335.tif 000003
【図２】
2011138335.tif 000004
【図３】
2011138335.tif 000005
【図４】
2011138335.tif 000006
【図５】
2011138335.tif 000007
【図６】
2011138335.tif 000008