(57)【要約】　　　（修正有）【課題】ライセンス数を増やすことなく、ソフトウェアの使用拠点にライセンス数を効率的に割り当てる。【解決手段】各グループに割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶するライセンス割当数記憶手段８と、前記各グループの現在ライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末２３からの通知により更新しながら記憶するライセンス利用数記憶手段７と、前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、該第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末２３が属するグループに一時的に移譲するライセンス管理手段６とを備えた。【選択図】　　　　図２
2004126642.tif 000002
【特許請求の範囲】
【請求項１】
通信回線を介して複数台の端末に接続されて、これら複数台の端末を各々が１台もしくは複数台の端末からなる複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理装置において、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶するライセンス利用数記憶部と、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、該第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたことを特徴とするソフトウェアライセンス管理装置。
【請求項２】
通信回線を介して複数の端末に接続されたサーバ内で実行され、該サーバを、これら複数台の端末を各々が１台もしくは複数台の端末からなる複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理装置として動作させるソフトウェアライセンス管理プログラムにおいて、
前記サーバを、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶する利用数記憶部と、
前記端末からの該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、該第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたソフトウェア管理装置として動作させることを特徴とするソフトウェアライセンス管理プログラム。
【請求項３】
各々が１台もしくは複数台の端末からなる複数のグループ各々に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理方法において、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶しておくと共に、前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶しておく第１ステップと、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受け付ける第２ステップと、
該端末が属するグループとは異なるグループの中から、前記第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループを検索する第３ステップと、
検索により検出された、前記第１のソフトウェアライセンス数よりも第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲する第４ステップとを含むことを特徴とするソフトウェアライセンス管理方法。
【請求項４】
ソフトウェアのライセンスを受けて該ソフトウェアを実行する複数台の端末と、通信回線を介して該複数台の端末に接続され、該複数台の端末を各々が１台もしくは複数台の端末から複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するサーバとからなるソフトウェアライセンス管理システムにおいて、
前記端末は、ソフトウェアライセンスを取得し、ソフトウェアライセンスを取得したソフトウェアの使用状況を管理するソフトウェア管理部と、
利用しようとするソフトウェアが自分のグループに割当られるソフトウェアライセンス割当数である第１のソフトウェアライセンス数を超える場合に前記サーバに対し該ソフトウェアの利用要求を行うソフトウェア利用要求部とを備え、
前記サーバは、
前記各グループ各々に割当てられた前記第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶するライセンス利用数記憶部と、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、前記第１のソフトウェアライセンス数よりも第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたことを特徴とするソフトウェアライセンス管理システム。
【請求項５】
前記端末は、ソフトウェアライセンスを取得している間のソフトウェア未使用時間に基づいて実際の利用率を算出して保存するソフトウェア使用数記憶部を備え、
前記サーバのライセンス管理部は、前記端末から前記ソフトウェア使用数記憶部に保存された実際の利用率の情報を受けて実際の利用率が所定の使用率以下の場合には、該端末を使用していたユーザが次回ライセンス取得時に、ライセンスに使用制限を与えるものであることを特徴とする請求項４記載のソフトウェアライセンス管理システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、本発明はソフトウェアの使用許可をクライアント（ユーザ）が使用する端末に提供するソフトウェアライセンス管理装置、ソフトウェアライセンス管理プログラム、ソフトウェアライセンス管理方法およびソフトウェアライセンス管理システムに関する。
【０００２】
【従来の技術】
近年、ソフトウェアの開発投資は高額になり、特にＣＡＤなど設計業務に関わるソフトウェアプリケーションは設計機能の高度化などから、その開発投資の金額は大きくなっている。これらの事情からＣＡＤなどのソフトウェアの価格は高額になり、ユーザにとってもコスト負担となってきている。その一方、近年のネットワークの発達、また特に建築業界にとってはスピード重視への経営への変革などの背景から、設計、確認作業を複数拠点での同時並行で行うことが必須となり、ソフトウェアの必要数が多くなり、コスト増大の原因となっている。
【０００３】
そのため、ソフトウェアの必要数を最小に抑える手段として、ユーザにソフトウェアの使用許可数を一定の値に制限して提供し、ユーザの端末に使用許可であるライセンスを使用時のみ割り当てる技術が知られている。また、ライセンス数をあるグループ（拠点）により管理することで、より効率的にソフトウェアの割当を行う技術が知られている。この技術によりユーザはソフトウェア使用許可を最低数購入すればよく、複数のグループでソフトウェアを効率的に使用することができ、ソフトウェアに対するコスト負担も軽くなるという利点がある。
【０００４】
従来、あるホスト上でライセンスサーバプログラムが、ソフトウェア許諾リストファイルのライセンス情報に従ってライセンス管理を行い、他のホスト上でクライアントプログラムは、起動時に同じコンピュータのサーバアクセスリストファイルを参照し、そこに記述されているコンピュータで動作しているライセンスサーバからライセンスを取得するようにしている（例えば、特許文献１参照）。
【０００５】
また、有償ソフトウェアの導入時にＭＡＣアドレスをシステム番号として有償データに記録し有償データをサーバに送信し、サーバでは有償ソフトウェアのシリアル番号、ライセンス数、システム番号を登録し、クライアント上で有償ソフトウェアの起動する際、有償データを読み出し有償データのシステム番号とＭＡＣアドレスを比較し、クライアントで導入された有償ソフトウェアであることが確認できた場合、ライセンス数の条件を満たしているかをサーバコンピュータに問い合わせ、サーバコンピュータから起動可能であるデータを受信した場合、要求された有償ソフトウェアが起動されるようにしている（例えば、特許文献２参照。）。
【０００６】
また、ネットワークに接続されたモバイル・クライアントは、ライセンスサーバから発行されたライセンス情報を受信し、メモリに保存する。モバイル・クライアントは、ネットワークから切離されたモバイル環境下でも、メモリに保存されたライセンス情報により使用許可されたソフトウェアを実行する（例えば、特許文献３参照。）。
【０００７】
【特許文献１】
特開平６−２２３０４０号公報（第１頁、図１）
【特許文献２】
特開平１１−２４９１８号公報（第１頁、図１）
【特許文献３】
特開２０００−２７６３５０号公報（第１頁、図１）
【０００８】
【発明が解決しようとする課題】
上記各従来技術のように、ユーザに一定のライセンス数を割り当て、またユーザがソフトウェアを使用する拠点毎にライセンス数を管理する技術では、ユーザのソフトウェアに対するコスト負担を軽減することはできるが、これらの技術では以下の問題があった。
【０００９】
第１に、ユーザのグループ毎にライセンス数を割り当てるが、業務の事情などからライセンス数を超える使用数の依頼があった場合に対処できない。
【００１０】
第２に、ユーザのグループ毎の必要数以下にライセンス数を抑える必要があった場合対処できない。
【００１１】
第３に、ユーザがライセンスを取得したままで返却しない場合には他のユーザがソフトウェアの利用ができない場合がある。
【００１２】
本発明は、上記事情に鑑み、ユーザがソフトウェアのライセンス数を増やすことなく、ソフトウェアの使用拠点にライセンス数を効率的に割り当て、またソフトウェア未使用にもかかわらずライセンスを保持する不効率な使用を防止したソフトウェアライセンス管理装置、ソフトウェアライセンス管理プログラム、ソフトウェアライセンス管理方法およびソフトウェアライセンス管理システムを提供することを目的とする。
【００１３】
【課題を解決するための手段】
上記目的を達成するために、本発明のソフトウェアライセンス管理装置は、通信回線を介して複数台の端末に接続されて、これら複数台の端末を各々が１台もしくは複数台の端末からなる複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理装置において、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶するライセンス利用数記憶部と、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、該第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたことを特徴とする。
【００１４】
また、本発明のソフトウェアライセンス管理プログラムは、通信回線を介して複数の端末に接続されたサーバ内で実行され、該サーバを、これら複数台の端末を各々が１台もしくは複数台の端末からなる複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理装置として動作させるソフトウェアライセンス管理プログラムにおいて、
前記サーバを、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶する利用数記憶部と、
前記端末からの該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、該第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたソフトウェア管理装置として動作させることを特徴とする。
【００１５】
また、本発明のソフトウェアライセンス管理方法は、各々が１台もしくは複数台の端末からなる複数のグループ各々に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理方法において、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶しておくと共に、前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶しておく第１ステップと、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受け付ける第２ステップと、
該端末が属するグループとは異なるグループの中から、前記第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループを検索する第３ステップと、
検索により検出された、前記第１のソフトウェアライセンス数よりも第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲する第４ステップとを含むことを特徴とする。
【００１６】
また、本発明のソフトウェアライセンス管理システムは、ソフトウェアのライセンスを受けて該ソフトウェアを実行する複数台の端末と、通信回線を介して該複数台の端末に接続され、該複数台の端末を各々が１台もしくは複数台の端末から複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するサーバとからなるソフトウェアライセンス管理システムにおいて、
前記端末は、ソフトウェアライセンスを取得し、ソフトウェアライセンスを取得したソフトウェアの使用状況を管理するソフトウェア管理部と、
利用しようとするソフトウェアが自分のグループに割当られるソフトウェアライセンス割当数である第１のソフトウェアライセンス数を超える場合に前記サーバに対し該ソフトウェアの利用要求を行うソフトウェア利用要求部とを備え、
前記サーバは、
前記各グループ各々に割当てられた前記第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶するライセンス利用数記憶部と、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、前記第１のソフトウェアライセンス数よりも第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたことを特徴とする。
【００１７】
本発明のソフトウェアライセンス管理システムでは、あるグループの端末より、ソフトウェア起動要求を行った際に、そのグループでのソフトウェア使用数が割当数を超える場合に、サーバは、ソフトウェア利用率が低いグループのソフトウェアライセンスを上記割当数を超えるグループに送信し、そのグループのユーザが使用できる状態にする。これにより、ソフトウェアの使用を利用するグループの拠点毎にソフトウェアライセンス数を効率的に割り当てることができる。
【００１８】
前記端末は、ソフトウェアライセンスを取得している間のソフトウェア未使用時間に基づいて実際の使用率を算出して保存するソフトウェア使用数記憶部を備え、前記サーバのライセンス管理部は、前記端末から前記ソフトウェア使用数記憶部に保存された実際の利用率の情報を受けて実際の利用率が所定の使用率以下の場合には、該端末を使用していたユーザが次回ライセンス取得時に、ライセンスに使用制限を与えるものとすることができる。
【００１９】
【発明の実施の形態】
図１は、本発明のソフトウェアライセンス管理システムの実施形態を示す全体のシステム構成図である。
【００２０】
同図において、ライセンス管理サーバ（以下、サーバと称す）２０と、当該ソフトウェアを使用するグループ２１Ａ，２１Ｂ，および２１Ｃとが通信回線１２を介して接続されている。各グループ２１Ａ，２１Ｂ，および２１Ｃには任意の個数（単数又は複数）のクライアント端末（以下、端末と称す）２３およびこの端末２３を利用する複数のユーザ２４からなる。なお、ここでグループ２１Ａ，２１Ｂ，および２１Ｃとは、例えば、企業、学校その他任意の団体の部署、支店等であって、ユーザ２４同士が比較的深い関係にあるグループのことである。ここでは、３つのグループ２１Ａ，２１Ｂ，および２１Ｃの例を示しているが、管理するグループ数は任意である。また、この例では、グループ２１Ａではユーザ２５がＩＤ：００１〜００６の６人、グループ２１ＢではＩＤ：００７〜００２１の５人、グループ２１ＣではＩＤ：０１２〜０４の３人の例を示している。
【００２１】
図２は、ソフトウェアライセンス管理システムの具体的構成を示すブロック図であって、上記端末２４およびサーバ２０の詳細を示している。
【００２２】
端末２４は、各端末２３毎にライセンスの取得要求、保持あるいは変換を行うクライアントライセンス管理手段１と、ライセンス保持中のソフトウエア１４の使用状況を管理するソフトウエア管理手段２と、クライアント毎のソフトウエアの使用状況を記憶するソフトウエア使用率記憶手段３と、端末２３とサーバ２０の通信を行う通信手段４と、ソフトウエア利用率を算出する時間を計測、管理する時間計測手段５とを備えている。
【００２３】
サーバ２０は、端末２３に配布するライセンスを管理するライセンス管理手段６と、グループ２１Ａ〜２１Ｃ毎のソフトウェアライセンス利用数（第２のライセンス数）を記憶する利用数記憶手段７と、予め設定されたクライアントグループ毎の使用可能なソフトウェアライセンス割当数（第１のライセンス数）を記憶するソフトウェアライセンス割当数記憶手段８と、ソフトウェアライセンス利用数記憶部７、ソフトウェアライセンス割当数記憶手段８、時間計測手段５から時間毎のクライアントグループのソフトウエア稼働率（利用率）を算出する稼働率算出手段９と、クライアントグループの一定時間毎のソフトウエア利用率を記憶する利用率記憶手段１０と、端末２３を使用するユーザ毎のライセンスを保持していた時間を記憶するライセンス利用率記憶手段１１と、各グループ２１Ａ〜２１Ｃ間のソフトウエアライセンス貸借関係を記憶するグループ間貸借関係記憶手段１２と、端末２３を使用するユーザのＩＤ，所属グループを記憶するユーザ情報記憶手段１３と、通信手段１４とを備えている。
【００２４】
図３は、上記ユーザ情報記憶手段１３を説明するテーブル構成であって、各グループ２１Ａ，２１Ｂ，および２１ＣとユーザＩＤの対応を示している。このテーブルは上記ユーザ情報記憶手段１３に記憶されている。
【００２５】
図４は、ライセンス割当記憶手段、グループ間貸借関係記憶手段を説明するテーブル構成であって、グループ２１Ａ，２１Ｂ，および２１Ｃで第一のライセンス数は各々３、２、２であり、かつグループ２１Ａと２１Ｂでは貸借関係があり、グループ２１Ｃでは貸借関係がない、つまりグループ２１Ａ，２１Ｂとは無関係であることを示している。このテーブルは上記ライセンス割当記憶部８およびグループ間貸借関係記憶手段１２に記憶されている。
【００２６】
図５は、利用数記憶手段を説明するテーブル構成である。各グループにおける、「ライセンス使用状況」＝Ｙｅｓの合計数が、そのグループの現在の利用数（第２のライセンス数）となる。第２のライセンス数が第１のライセンス数を超える場合には、図４より貸借関係のある他のグループを選出し、そのグループからライセンスを割り当てるようにしている。
【００２７】
図６は、端末のソフトウェア起動を説明するためのフローチャートである。なお、以下の動作は特に断らない限りクライアントライセンス管理手段１で行われる。
【００２８】
先ず、ソフトウェアの起動要求（ステップＳ１）により、ＯＳ、ＭＡＣアドレス等を組合せて端末特定ＩＤ（ＭＣＩＤ１とする）を作成し（ステップＳ２）、端末２３の記憶装置からソフトウェアライセンス（ＳＬ１とする）情報を取得する（ステップＳ３）。
【００２９】
次に、ＳＬ１が存在するか否かを判定し（ステップＳ４）、ＹＥＳであれば、ＳＬ１から端末特定ＩＤ（ＭＣＩＤ２とする）を抽出する（ステップＳ５）。次に、ＭＣＩＤ１＝ＭＣＩＤ２か否かを判定し（ステップＳ６）、ＹＥＳであれば、ソフトウェアを起動し（ステップＳ７）、ＮＯであればソフトウェアを起動しない（ステップＳ８）
ステップＳ４の判定がＮＯであれば、現在の日時、ユーザＩＤとＭＣＩＤ１を組み合わせたＩＤ（ＩＤ１とする）を作成する（ステップＳ９）。次いで、ソフトウエアライセンス取得要求として、端末２３のクライアントライセンス管理部１から上記ＩＤ１をサーバヘ送信し（ステップＳ１０）、後述の図７へ進む（ステップＳ１１）。
【００３０】
図７のステップＳ２７において、サーバ２０からソフトウェアライセンス（ＳＬ２とする）が返ってくる（ステップＳ１２）。ＩＤ１を元にソフトウェアライセンス（ＳＬ３とする）を作成（図７に示すステップＳ２６と同じロジックで作成）する（ステップＳ１３）。
【００３１】
ＳＬ２＝ＳＬ３か否かを判定し（ステップＳ１４）、ＹＥＳであれば、ＳＬ２をソフトウェアライセンスとしてソフトウェアライセンス管理手段６の記憶装置に保存し（ステップＳ１５）、ソフトウェアを起動し、ＮＯであればソフトウェアを起動しない（ステップＳ８）。
【００３２】
図７は、サーバのソフトウェアライセンス発行を説明するためのフローチャートである。なお、この動作は、特に断らない限りライセンス管理手段６で行われる。
【００３３】
端末２３から、通信手段１４を介してソフトウェアライセンスの取得要求としてＩＤ１を受信し（ステップＳ２１）、ソフトウェアライセンスに使用制限を付けるかどうか決める（図１３〜１４参照）（ステップＳ２２）。
【００３４】
次に、ユーザの所属するグループを検出し（ステップＳ２３）、ユーザの所属グループのライセンスを１個発行した場合の稼働率（利用率）を以下の計算で取得する（ステップＳ２４）。
【００３５】
〔現在の利用数（第２のライセンス数）＋１〕／〔グループに割り当てられた使用可能なソフトウェアライセンス数（第１のライセンス数）〕
次に、（所属グループのライセンスを１個発行した場合の稼働率）＜＝１００であるか否かを判定し（ステップＳ２５）、ＹＥＳであれば、ＩＤ１を元にソフトウェアライセンス（ＳＬ２とする）を作成（図６〜１３と同じロジックで作成）し（ステップＳ２６）、ソフトウェアライセンスとしてＳＬ２を端末２３へ送信する（ステップＳ２７）。ステップＳ２５でＮＯであれば、別グループから、ソフトウェアライセンスを割り当てる（図８〜１２参照）（ステップＳ２８）。
【００３６】
図８（ａ）および（ｂ）は、稼働率算出方法を説明するための一例を示す概念図である。
【００３７】
図８（ａ）は、グループ２１Ａの過去の時間帯別稼働率を示すもので、黒塗りの時間帯Ｔｂのみ、クルーブ２１Ｂに割り当てられたソフトウェアライセンスを使用することを示している。図８（ｂ）は、グループ２１Ｂの過去の時間帯別稼働率を示すもので、黒塗りの時間帯Ｔａのみ、グルーフＡに割り当てられたソフトウェアライセンスを使用することを示している。
【００３８】
図９（ｃ）は、同じく稼働率（利用率）算出方法を説明するための一例を示す概念図であって、横に曜日、縦に時間を取り、各曜日における時間ごとの稼働率の例を示している。
【００３９】
図１０は、図９に示すような曜日、時間毎の稼働率を算出するフローチャートである。
【００４０】
サーバ２０のライセンス管理手段６は、各グループ毎に曜日別、時間帯別予想稼働率を過去のデータ（利用数記憶手段７に保存）を元に集計し算出（１回／１日）し、各グループ毎に、図９のテーブルができあがる。
【００４１】
スタート１で、ライセンス管理手段６は、ソフトウェアライセンス取得要求ありか否かを判定し（ステップＳ３１）、ＹＥＳであれば、利用数＝利用数＋１をログファイルＬＦ１に書き込み（ステップＳ３２）、終了する（ＥＮＤ１）。なお、このログファイルＬＦ１は利用数記憶手段７に保存される。
【００４２】
スタート２でソフトウェアライセンス返却命令ありか否かを判定し（ステップＳ３４）、ＹＥＳであれば、利用数＝利用数−１をログファイルＬＦ１に書き込み（ステップＳ３５）、終了する（ＥＮＤ２）。
【００４３】
スタート３で、０分０秒（１日に２４回通る、何分何秒でもよい）になったか否かを判定し（ステップＳ３６）、ＹＥＳであれば、ログファイルＬＦ１の情報を元に１時間の稼働率を算出し、ログファイルＬＦ２に書き込み（ステップＳ３７）、終了する（ＥＮＤ２）。なお、このログファイル、ＬＦ１，ＬＦ２は利用数記憶手段７に保存される。
【００４４】
スタート４で、１０時０分０秒（１日に１回通る、何時何分何秒でもよい）になったか否かを判定し（ステップＳ３８）、ログファイルＬＦ２の情報を元に１時間毎の稼働率を取得し（ステップＳ３９）、過去のデータとの平均値を算出し、データベースＤＢ１に書き込む（ステップＳ４０）。こうして図９に示すような内容の稼働率平均値が算出される。なお、このデータベースＤＢ１は利用率記憶手段１０に保存される。
【００４５】
図１１は、ソフトウェアライセンスの自動振り分け機能を説明するためのフローチャートである。なお、この動作は、特に断らない限りライセンス管理手段６で行われる。
【００４６】
ユーザにソフトウェアを何時間使用するか（使用予定時間）を問い合わせる（ステップＳ４１）。次に、ユーザが所属するグループ以外で、貸借関係のある全グループを検索し、以下の条件で絞込みを行う（ステップＳ４２）。
【００４７】
（１）ソフトウェアライセンスを１個発行した場合の稼働率＜＝１００％
なお、この稼働率はログファイルＬＦ１より実際の稼働率で計算する。
【００４８】
（２）使用予定時間全てにおけるソフトウェアライセンスを１個発行した場合の稼働率＜＝１００％
なお、この稼働率は、ＤＢ１よりの予想稼働率で計算する。これをグループリスト１とする。
【００４９】
次に、グループリスト１にグループが存在するか否かを判定し（ステップＳ４３）、ＹＥＳであれば、グループリスト１、ログファイルＬＦ１から、「ソフトウェアライセンスを１個発行した後の現在の稼働率」が最も低いグループを選出し（ステップＳ４４）、選定されたクループからソフトウェアライセンス（使用予定時間内しか使えない）を発行する（ステップＳ４５）。
【００５０】
ステップＳ４６で、ＮＯであれば、ユーザが所属するグループ以外で、貸借関係のある全グループを検索（ステップＳ４６）し、以下の条件で絞込みを行う。
【００５１】
（１）ソフトウェアライセンスを１個発行した場合のの稼働率＜＝１００％
なお、この稼働率はログファイルＬＦ１より実際の稼働率で計算する。
【００５２】
（２）最も長時間使える。
【００５３】
なお、この稼働率は、ＤＢ１よりの予想稼働率で計算する。
【００５４】
図１２は、ソフトウェアライセンスの自動振り分け機能を説明するための画面イメージである。
【００５５】
先ず、画面Ｄ１では、「ライセンスを取得します。終了予定時間を入力してください。」の表示が出て、例えば、２１日２１時３０分までの数値を入力し、次の画面Ｄ２で、「ライセンスを取得しました。以下の時間までライセンスの返却をお願いします。２１日２１時３０分」の表示があり、次の画面Ｄ３で、「希望時間使用できるライセンスは見つかりませんでした。」、「以下の時間まで使用可能なライセンスがあります。取得しますか。」、「２１日２０時００分」の表示が出た例である。
【００５６】
図１３は、ソフトウェア管理部、およびソフトウェア使用率記憶手段を説明するためのフローチャートである。ソフトウェア使用率の算出にはソフトウェアライセンスを取得してからの未使用時間を利用する（ステップＳ５０）。未使用時間は、例えば、ソフトウェアのドキュメント（ＣＡＤでは図面データ）が１度更新されてから、次回更新されるまでの時間とする（未使用時間の定義はソフトウェア毎に行えるようにする）。未使用時間が、あらかじめ決められている時間を超した場合に、ペナルティが１だけ増加する。
【００５７】
スタートで、未使用時間があらかじめ決められている時間を超える場合に
ペナルティ＝ペナルティ＋１とし、これを利用率記憶手段３に保存する（ステップＳ５１）。その後ソフトウェアライセンスを返却する（ステップＳ５２）。
【００５８】
図１４は、ソフトウェアライセンスの返却を説明するためのフローチャートである。
【００５９】
ペナルティの数が、あらかじめ決められている数を超した場合に、次回取得できるソフトウェアライセンスに制限が与えられる。
【００６０】
端末２３のスタートで、ソフトウェアが終了し（ステップＳ６１）、ソフトウェアライセンスを返却することをサーバに送信する（ステップＳ６２）。なお、同時に図１３の利用率記憶手段１０に保存してあるペナルティ数も送信する。
【００６１】
サーバ２０のスタートで、ペナルティ数があらかじめ決められている数を超えているか否かを判定し（ステップＳ６３）、ＹＥＳであれば、次回ソフトウェアライセンス要求時に使用制限を与えることを決定し、利用率記憶手段１０に保存する（ステップＳ６４）。この場合は、次回取得できるソフトウェアライセンスに制限が発生する。
【００６２】
以下、本発明の各種の形態について説明する。
【００６３】
（付記１）　　通信回線を介して複数台の端末に接続されて、これら複数台の端末を各々が１台もしくは複数台の端末からなる複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理装置において、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶するライセンス利用数記憶部と、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、該第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたことを特徴とするソフトウェアライセンス管理装置。
【００６４】
（付記２）　　通信回線を介して複数の端末に接続されたサーバ内で実行され、該サーバを、これら複数台の端末を各々が１台もしくは複数台の端末からなる複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理装置として動作させるソフトウェアライセンス管理プログラムにおいて、
前記サーバを、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶する利用数記憶部と、
前記端末からの該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、該第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたソフトウェア管理装置として動作させることを特徴とするソフトウェアライセンス管理プログラム。
【００６５】
（付記３）　　各々が１台もしくは複数台の端末からなる複数のグループ各々に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するソフトウェアライセンス管理方法において、
前記各グループ各々に割当てられたソフトウェアライセンス割当数である第１のソフトウェアライセンス数を記憶しておくと共に、前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶しておく第１ステップと、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受け付ける第２ステップと、
該端末が属するグループとは異なるグループの中から、前記第１のソフトウェアライセンス数よりも前記第２のソフトウェアライセンス数の方が少ないグループを検索する第３ステップと、
検索により検出された、前記第１のソフトウェアライセンス数よりも第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲する第４ステップとを含むことを特徴とするソフトウェアライセンス管理方法。
【００６６】
（付記４）　　ソフトウェアのライセンスを受けて該ソフトウェアを実行する複数台の端末と、通信回線を介して該複数台の端末に接続され、該複数台の端末を各々が１台もしくは複数台の端末から複数のグループに分けたときの各グループ毎に許可され各グループ内の端末で実行されるソフトウェアのライセンスを管理するサーバとからなるソフトウェアライセンス管理システムにおいて、
前記端末は、ソフトウェアライセンスを取得し、ソフトウェアライセンスを取得したソフトウェアの使用状況を管理するソフトウェア管理部と、
利用しようとするソフトウェアが自分のグループに割当られるソフトウェアライセンス割当数である第１のソフトウェアライセンス数を超える場合に前記サーバに対し該ソフトウェアの利用要求を行うソフトウェア利用要求部とを備え、
前記サーバは、
前記各グループ各々に割当てられた前記第１のソフトウェアライセンス数を記憶するライセンス割当数記憶部と、
前記各グループで現在利用中のソフトウェアライセンス利用数である第２のソフトウェアライセンス数を、該各グループを構成する端末からの通知により更新しながら記憶するライセンス利用数記憶部と、
前記端末からの、該端末が属するグループに許可された前記第１のソフトウェアライセンス数を超えるソフトウェアの利用要求を受けて、前記第１のソフトウェアライセンス数よりも第２のソフトウェアライセンス数の方が少ないグループのソフトウェアライセンスを、ソフトウェア利用要求を行った端末が属するグループに一時的に移譲するライセンス管理部とを備えたことを特徴とするソフトウェアライセンス管理システム。
【００６７】
（付記５）　　前記端末は、ソフトウェアライセンスを取得している間のソフトウェア未使用時間に基づいて実際の利用率を算出して保存するソフトウェア使用数記憶部を備え、
前記サーバのライセンス管理部は、前記端末から前記ソフトウェア使用数記憶部に保存された実際の利用率の情報を受けて実際の利用率が所定の使用率以下の場合には、該端末を使用していたユーザが次回ライセンス取得時に、ライセンスに使用制限を与えるものであることを特徴とする付記４記載のソフトウェアライセンス管理システム。
【００６８】
（付記６）　　前記第２ステップは、前記端末からソフトウェアの利用要求を受け取ると同時に該端末による該ソフトウェアの使用時間帯の情報を受け取るステップであり、さらに該第２ステップで受け取った情報を基に、該端末が属するグループのソフトウェア使用率を算出する第５ステップを含むことを特徴とする付記３記載のソフトウェアライセンス管理方法。
【００６９】
（付記７）　　前記グループの端末からのソフトウェアライセンスを返却する旨を受信すると同時に該端末が属するグループでのソフトウェアの使用率を受信する第６ステップと、受信した使用率が所定の使用率以下の場合には、次回のソフトウェアライセンスの許諾の際に使用時間を制限したソフトウェアライセンスを送信する旨を書き留めておく第７ステップを含むことを特徴とする付記３記載のソフトウェアライセンス管理方法。
【００７０】
（付記８）　　前記ライセンス利用数記憶部は、さらに前記グループ毎にソフトウェアライセンスの予想利用数を曜日別、時間帯別に記憶するものであり、前記ライセンス管理部は、前記グループの実際の利用数が予め決められた値を下回る場合にはユーザにライセンスの使用制限を与えるものであることを特徴とする付記４記載ソフトウェアライセンス管理システム。
【００７１】
【発明の効果】
以上、説明したように、本発明によれば、あるグループでのソフトウェア使用数が割当数を超える場合に、ソフトウェア使用数が低いグループのソフトウェアライセンスを上記割当数を超えるグループに送信し、そのグループのユーザが使用できる状態にするの、ソフトウェアの使用拠点毎にソフトウェアライセンス数を効率的に割り当てることができ、ソフトウェアのユーザはソフトウェアのライセンス数を増やすことなく、ソフトウェアの使用拠点にライセンス数を効率的に割り当て、またソフトウェア未使用にもかかわらずライセンスを保持する不効率な使用を防止することができ、したがって、必要なソフトウェアのみの導入によりコスト削減が可能となる。
【図面の簡単な説明】
【図１】本発明のソフトウェアライセンス管理システムの実施形態を示す全体のシステム構成図である。
【図２】ソフトウェアライセンス管理システムの具体的構成を示すブロック図である。
【図３】ユーザ情報記憶部を説明するテーブル構成である。
【図４】ライセンス割当記憶部、グループ間貸借関係記憶部を説明するテーブル構成である。
【図５】利用数記憶部を説明するテーブル構成である。
【図６】端末のソフトウェア起動を説明するためのフローチャートである。
【図７】サーバのソフトウェアライセンス発行を説明するためのフローチャートである。
【図８】稼働率算出部を説明するための一例を示す概念図である。
【図９】同じく稼働率算出部を説明するための一例を示す概念図である。
【図１０】曜日、時間毎の稼働率を算出するフローチャートである。
【図１１】ソフトウェアライセンスの自動振り分け機能を説明するためのフローチャートである。
【図１２】ソフトウェアライセンスの自動振り分け機能を説明するための画面イメージである。
【図１３】ソフトウェア管理部、およびソフトウェア使用率記憶部を説明するためのフローチャートである。
【図１４】ソフトウェアライセンスの返却を説明するためのフローチャートである。
【符号の説明】
１　　クライアントライセンス管理手段
２　　ソフトウェア管理手段
３　　ソフトウェア使用率記憶手段
４　　通信手段
５　　時間計測手段
６　　ライセンス管理手段
７　　ライセンス利用数記憶手段
８　　ライセンス割当数記憶手段
９　　利用率算出手段
１０　　利用率記憶手段
１１　　ライセンス使用率記憶手段
１２　　グループ間貸借関係記憶手段
１３　　ユーザ情報記憶手段
２０　　サーバ
２１Ａ，２１Ｂ，２１Ｃ　　グループ
２３　　端末
２４　　ユーザ
【図１】
2004126642.tif 000003
【図２】
2004126642.tif 000004
【図３】
2004126642.tif 000005
【図４】
2004126642.tif 000006
【図５】
2004126642.tif 000007
【図６】
2004126642.tif 000008
【図７】
2004126642.tif 000009
【図８】
2004126642.tif 000010
【図９】
2004126642.tif 000011
【図１０】
2004126642.tif 000012
【図１１】
2004126642.tif 000013
【図１２】
2004126642.tif 000014
【図１３】
2004126642.tif 000015
【図１４】
2004126642.tif 000016