(57)【要約】      （修正有）【課題】ユーザの利便性を向上させ、かつ確実にライセンス管理を行うことができるようにする。【解決手段】ライセンス管理部１０１がソフトウェア動作管理サーバからライセンス許可または許可データを取得する。オフラインでアプリケーションを利用する場合、利用条件判定部１０３が許可データとオフライン利用状況データに基づいて、アプリケーションの利用可否を判定し、その判定結果に基づいて、アプリケーション起動制御部がアプリケーションの起動を制御する。利用状況モニタ部１０４はオフライン利用状況データ１０７を記録し、利用状況送信部１０５が、ソフトウェア動作管理サーバにオフライン利用状況データを送信する。【選択図】図６
2006031211.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された第１の情報処理装置および第２の情報処理装置を含むソフトウェア利用管理システムであって、
前記第１の情報処理装置は、
前記第１の情報処理装置と前記第２の情報処理装置との接続状態が第１の接続状態であるときに前記第２の情報処理装置に所定のプログラムを実行させるための第１の情報を、前記第２の情報処理装置に提供する提供手段と、
前記第１の情報処理装置と前記第２の情報処理装置との接続状態が第２の接続状態であるときに前記第２の情報処理装置に前記所定のプログラムの実行させるための第２の情報を生成し、前記第２の情報を前記第２の情報処理装置に付与する付与手段と、
を備え、
前記第２の情報処理装置は、
前記所定のプログラムを実行するために必要な前記第１の情報を、前記第１の情報処理装置から取得する第１の取得手段と、
前記第１の情報処理装置との接続状態が前記第１の接続状態である場合、前記第１の取得手段により取得された前記第１の情報に基づいて、前記所定のプログラムを実行する第１の実行手段と、
前記所定のプログラムを実行するために必要な前記第２の情報を、前記第１の情報処理装置から取得する第２の取得手段と、
前記第１の情報処理装置との接続状態が前記第２の接続状態である場合、前記第２の取得手段により取得された前記第２の情報に基づいて、前記所定のプログラムを実行する第２の実行手段と
を備える
ことを特徴とするソフトウェア利用管理システム。
【請求項２】
ネットワークを介して接続された第１の情報処理装置および第２の情報処理装置を含むソフトウェア利用管理システムのソフトウェア利用管理方法であって、
前記第１の情報処理装置は、
前記第１の情報処理装置と前記第２の情報処理装置との接続状態が第１の接続状態であるときに前記第２の情報処理装置に所定のプログラムを実行させるための第１の情報を、前記第２の情報処理装置に提供し、
前記第１の情報処理装置と前記第２の情報処理装置との接続状態が第２の接続状態であるときに前記第２の情報処理装置に前記所定のプログラムを実行させるための第２の情報を生成して、前記第２の情報を前記第２の情報処理装置に付与し、
前記第２の情報処理装置は、
前記所定のプログラムを実行するために必要な前記第１の情報を、前記第１の情報処理装置から取得し、
前記第１の情報処理装置との接続状態が前記第１の接続状態である場合、取得された前記第１の情報に基づいて、前記所定のプログラムを実行し、
前記所定のプログラムを実行するために必要な前記第２の情報を、前記第１の情報処理装置から取得し、
前記第１の情報処理装置との接続状態が前記第２の接続状態である場合、取得された前記第２の情報に基づいて、前記所定のプログラムを実行する
ことを特徴とするソフトウェア利用管理方法。
【請求項３】
ネットワークを介して他の情報処理装置と接続される情報処理装置であって、
前記情報処理装置と前記他の情報処理装置との接続状態が第１の接続状態であるときに前記他の情報処理装置に所定のプログラムを実行させるための第１の情報を、前記他の情報処理装置に提供する提供手段と、
前記情報処理装置と前記他の情報処理装置との接続状態が第２の接続状態であるときに前記他の情報処理装置に前記所定のプログラムを実行させるための第２の情報を生成し、前記第２の情報を前記他の情報処理装置に付与する付与手段とを備える
ことを特徴とする情報処理装置。
【請求項４】
前記他の情報処理装置による前記所定のプログラムの実行状況に関するデータを収集する収集手段をさらに備える
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記第２の情報には、前記他の情報処理装置のユーザによる前記所定のプログラムの実行条件が記述される
ことを特徴とする請求項３に記載の情報処理装置。
【請求項６】
前記収集手段は、
前記他の情報処理装置のユーザ毎に前記所定のプログラムの実行状況に関するデータを収集して前記ユーザ毎の実行状況のデータベースを生成する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項７】
前記付与手段は、
前記実行状況のデータベースに基づいて、前記ユーザ毎に前記所定のプログラムの実行条件を設定して前記第２の情報を生成する
ことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
ネットワークを介して他の情報処理装置と接続される情報処理装置の情報処理方法であって、
前記情報処理装置と前記他の情報処理装置との接続状態が第１の接続状態であるときに前記他の情報処理装置に所定のプログラムを実行させるための第１の情報を、前記他の情報処理装置に提供する提供ステップと、
前記情報処理装置と前記他の情報処理装置との接続状態が第２の接続状態であるときに前記他の情報処理装置に前記所定のプログラムを実行させるための第２の情報を生成し、前記第２の情報を前記他の情報処理装置に付与する付与ステップとを含む
ことを特徴とする情報処理方法。
【請求項９】
ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムであって、
前記情報処理装置と前記他の情報処理装置との接続状態が第１の接続状態であるときに前記他の情報処理装置に所定のプログラムを実行させるための第１の情報の、前記他の情報処理装置への提供を制御する提供制御ステップと、
前記情報処理装置と前記他の情報処理装置との接続状態が第２の接続状態であるときに前記他の情報処理装置に前記所定のプログラムを実行させるための第２の情報を生成し、前記第２の情報の前記他の情報処理装置への付与を制御する付与制御ステップと
をコンピュータに実行させることを特徴とするプログラム。
【請求項１０】
ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムが記録されている記録媒体であって、
前記情報処理装置と前記他の情報処理装置との接続状態が第１の接続状態であるときに前記他の情報処理装置に所定のプログラムを実行させるための第１の情報の、前記他の情報処理装置への提供を制御する提供制御ステップと、
前記情報処理装置と前記他の情報処理装置との接続状態が第２の接続状態であるときに前記他の情報処理装置に前記所定のプログラムを実行させるための第２の情報を生成し、前記第２の情報の前記他の情報処理装置への付与を制御する付与制御ステップと
をコンピュータに実行させるプログラムが記録されることを特徴とする記録媒体。
【請求項１１】
ネットワークを介して情報管理装置と接続される情報処理装置であって、
所定のプログラムを実行するために必要な前記第１の情報を、前記情報管理装置から取得する第１の取得手段と、
前記情報管理装置との接続状態が前記第１の接続状態である場合、前記第１の取得手段により取得された前記第１の情報に基づいて、前記所定のプログラムを実行する第１の実行手段と、
前記所定のプログラムを実行するために必要な前記第２の情報を、前記情報管理装置から取得する第２の取得手段と、
前記情報管理装置との接続状態が前記第２の接続状態である場合、前記第２の取得手段により取得された前記第２の情報に基づいて、前記所定のプログラムを実行する第２の実行手段とを備える
ことを特徴とする情報処理装置。
【請求項１２】
前記第２の接続状態は、前記情報処理装置が前記情報管理装置と通信しない状態である
ことを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記第１の接続状態は、前記情報処理装置が情報管理装置と通信する状態であり、前記第１の接続状態において、前記第１の情報とともに、前記第２の情報を取得する
ことを特徴とする請求項１１に記載の情報処理装置。
【請求項１４】
前記第２の情報には、前記情報処理装置のユーザによる前記所定のプログラムの実行条件が記述されている
ことを特徴とする請求項１１に記載の情報処理装置。
【請求項１５】
前記第２の情報に記述された前記実行条件に基づいて、前記情報処理装置のユーザによる前記所定のプログラムの実行の可否を判定する判定手段をさらに備える
ことを特徴とする請求項１４に記載の情報処理装置。
【請求項１６】
前記第２の情報に基づいて実行された前記所定のプログラムの実行状況に関するデータを記録する記録手段をさらに備える
ことを特徴とする請求項１１に記載の情報処理装置。
【請求項１７】
ネットワークを介して情報管理装置と接続される情報処理装置の情報処理方法であって、
所定のプログラムを実行するために必要な前記第１の情報を、前記情報管理装置から取得する第１の取得ステップと、
前記情報管理装置との接続状態が前記第１の接続状態である場合、前記第１の取得ステップの処理により取得された前記第１の情報に基づいて、前記所定のプログラムを実行する第１の実行ステップと、
前記所定のプログラムを実行するために必要な前記第２の情報を、前記情報管理装置から取得する第２の取得ステップと、
前記情報管理装置との接続状態が前記第２の接続状態である場合、前記第２の取得ステップの処理により取得された前記第２の情報に基づいて、前記所定のプログラムを実行する第２の実行ステップと
を含むことを特徴とする情報処理方法。
【請求項１８】
ネットワークを介して情報管理装置と接続される情報処理装置のプログラムであって、
所定のプログラムを実行するために必要な前記第１の情報の、前記情報管理装置からの取得を制御する第１の取得制御ステップと、
前記情報管理装置との接続状態が前記第１の接続状態である場合、前記第１の取得制御ステップの処理により取得された前記第１の情報に基づいて、前記所定のプログラムの実行を制御する第１の実行制御ステップと、
前記所定のプログラムを実行するために必要な前記第２の情報の、前記情報管理装置からの取得を制御する第２の取得制御ステップと、
前記情報管理装置との接続状態が前記第２の接続状態である場合、前記第２の取得制御ステップの処理により取得された前記第２の情報に基づいて、前記所定のプログラムの実行を制御する第２の実行制御ステップと
をコンピュータに実行させることを特徴とするプログラム。
【請求項１９】
ネットワークを介して情報管理装置と接続される情報処理装置のプログラムが記録されている記録媒体であって、
所定のプログラムを実行するために必要な前記第１の情報の、前記情報管理装置からの取得を制御する第１の取得制御ステップと、
前記情報管理装置との接続状態が前記第１の接続状態である場合、前記第１の取得制御ステップの処理により取得された前記第１の情報に基づいて、前記所定のプログラムの実行を制御する第１の実行制御ステップと、
前記所定のプログラムを実行するために必要な前記第２の情報の、前記情報管理装置からの取得を制御する第２の取得制御ステップと、
前記情報管理装置との接続状態が前記第２の接続状態である場合、前記第２の取得制御ステップの処理により取得された前記第２の情報に基づいて、前記所定のプログラムの実行を制御する第２の実行制御ステップと
をコンピュータに実行させるプログラムが記録されることを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア利用管理システムおよび方法、情報処理装置および方法、プログラム並びに記録媒体に関し、特に、ユーザの利便性を向上させ、かつ確実にライセンス管理を行うことができるようにするソフトウェア利用管理システムおよび方法、情報処理装置および方法、プログラム並びに記録媒体に関する。
【背景技術】
【０００２】
例えば、財務分析、利益計画、予算編成、財務予想、業績評価等を行うことができるソフトウェア（いわゆる統合経営情報システム）は、膨大なプログラム量と高度な解析内容を有していることから極めて高価（通常２００万円乃至５００万円程度）である。中小企業にとって、統合経営情報システムが極めて高価であることは、これらのソフトウェアの導入と、それに伴う業務の効率化を阻害する大きな要因となっている。
【０００３】
このような問題は、統合経営情報システムに限らず、利用頻度の少ない高額ソフトウェア一般に共通する問題である。これらの高額ソフトウェアの信頼性を落とすことなく、ユーザに低価格で提供でき、更に、システム開発会社の開発経費の回収を容易にすることができるコンピュータソフトウェアレンタルサービスを提供するための技術が提案されている（例えば、特許文献１参照）。
【０００４】
ここでは、特公平７−８９３０５に記載の技術において、業務プログラムファイル及び業務データファイルの全てがユーザマシンに格納されている場合について説明する。まず、ユーザは、ソフトウェアを用いる業務の開始に先立って、自分自身が用いるユーザマシン（例えば、汎用のパーソナルコンピュータなど）を、業務プログラムファイル及び業務データファイルが格納されたハードディスク又はフロッピー（登録商標）ディスクを読み書き可能な状態にセッティングした状態で、通信モデムを介して、ホストマシンとの通信回線を自動ダイヤリングによってオープンし、利用管理センタに設置されたホストマシンを呼び出す。
【０００５】
次いで、ユーザマシンは、ユーザ管理情報を含む利用開始宣言ファイルを、所定の手順に従って、利用管理センタのホストマシンに送信する。利用開始宣言ファイルを受信した利用管理センタのホストマシンは、ユーザ管理情報の妥当性チェックを実行する。ユーザ管理情報の妥当性チェックの結果、その結果に不整合がない場合にはホストマシンから利用許可指令をユーザマシンに送信すると同時に、この時刻を利用開始時刻として記録する。
【０００６】
次に、利用許可指令を受信したユーザマシンは、この利用許可指令に基づいて、ユーザマシン上の業務プログラムファイルの不正利用禁止手段を解除するとともに利用管理センタとの通信回線を遮断したうえ、業務プログラムファイルを用いて所定の業務処理を実行する。業務処理中はユーザマシンとホストマシンとの間の通信回線は遮断されている。
【０００７】
業務が終了した後、ユーザは、通信回線を再度接続し、ホストマシンに対して利用終了宣言ファイルを所定手順に従って送信し、通信回線を遮断する。一方、利用終了宣言ファイルを受信した利用管理センタは、利用終了宣言ファイルを受信した時刻を利用終了時刻として記録し、利用開始時刻と利用終了時刻より業務プログラムファイルの実利用時間をホストマシンによって計算し、実利用時間に基づいてユーザに対する課金金額を算出する。
【０００８】
このように、従来のコンピュータソフトレンタル方法においては、業務プログラムの利用開始時に通信回線を通じてホストマシンにアクセスし、ホストマシンから受ける利用許可指令によって、ユーザマシン上の業務プログラムの利用が可能となり、その後は回線遮断して、ユーザマシンを用いて業務処理を行い、利用終了時に、再度、ホストマシンに対して業務プログラムの利用終了を連絡するという一連の手順を経るものである。そして、利用開始時刻と利用終了時刻を記録して、業務プログラムの利用時間を計算し、この実利用時間に基づいて課金額を算出するものである。
【特許文献１】特公平７−８９３０５
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、ホストマシンに接続せずに、オフラインで業務プログラムを利用したいという、ユーザのニーズが高まっている。
【００１０】
例えば、特許文献１に記載のコンピュータソフトレンタル方法における課金額の算出基準となるプログラムの利用時間は、ユーザマシンからホストマシンに対して送信される利用開始宣言ファイルに対してホストマシンからユーザマシンに送信される利用許可指令の送信時刻から、ホストマシンがユーザマシンから受信する利用終了宣言ファイルの受信時刻までであり、ソフトウェアの利用終了後、ユーザマシンが、利用終了宣言ファイルを送信するために、ホストマシンにアクセスするとき、例えば、通信回線が混雑して、ホストマシンにアクセスすることができなかったり、故障やメンテナンスなどの、ホストマシン側の事情により、ユーザマシンがホストマシンにアクセスできないような場合においても、これらの無駄な時間は、全て、ソフトウェア利用の実時間として計上されてしまうため、ユーザが、余分な使用料金を払わなくてはいけない。
【００１１】
また、例えば、このソフトウェアの利用中に、非常に短時間（例えば数十分）の間だけ、ユーザマシンに、他の処理を行わせたいような場合、一旦、ホストマシンに接続しなおして、利用終了宣言ファイルを送信し、対応するソフトウェアの利用の再開時に、また、ホストマシンに接続し、ソフトウェアの利用のための各種処理を行わなければ、ユーザマシンに他の処理を実行させた数十分も、ソフトウェア利用の実時間として計上されてしまうため、ユーザが、余分な使用料金を払わなくてはいけなくなってしまう。
【００１２】
さらに、近年ではノート型パーソナルコンピュータのように携帯可能な情報処理装置が多く普及しており、例えば、ユーザが通信設備のない場所にノート型パーソナルコンピュータを運び、その場所でコンピュータソフトウェアレンタルサービスにより提供されるソフトウェアを利用しようとしても、ホストマシンにアクセスできないためソフトウェアを利用することができず、ユーザの利便性が低下するという課題があった。
【００１３】
一方で、ソフトウェアのライセンス管理の点では、ユーザマシンを一旦ホストマシンに接続させ、正規のユーザであることを確認（認証）した後、そのユーザにライセンスを与えてソフトウェアの利用を許可し、ユーザによるソフトウェアの利用が終了した後、そのユーザからライセンスを返却させる方法が最も確実にライセンスを管理できる。ユーザにオフラインでのソフトウェアの利用を許可すると、正規のユーザが正規の手続きに則してソフトウェアを利用しているか否かを判別することが困難になり、その結果ライセンスを確実に管理することができなくなる恐れがあるという課題があった。
【００１４】
本発明はこのような状況に鑑みてなされたものであり、ユーザの利便性を向上させ、かつ確実にライセンス管理を行うことができるようにするものである。
【課題を解決するための手段】
【００１５】
本発明のソフトウェア利用管理システムは、ネットワークを介して接続された第１の情報処理装置および第２の情報処理装置を含むソフトウェア利用管理システムであって、第１の情報処理装置は、第１の情報処理装置と第２の情報処理装置との接続状態が第１の接続状態であるときに第２の情報処理装置に所定のプログラムを実行させるための第１の情報を、第２の情報処理装置に提供する提供手段と、第１の情報処理装置と第２の情報処理装置との接続状態が第２の接続状態であるときに第２の情報処理装置に所定のプログラムの実行させるための第２の情報を生成し、第２の情報を第２の情報処理装置に付与する付与手段とを備え、第２の情報処理装置は、所定のプログラムを実行するために必要な第１の情報を、第１の情報処理装置から取得する第１の取得手段と、第１の情報処理装置との接続状態が第１の接続状態である場合、第１の取得手段により取得された第１の情報に基づいて、所定のプログラムを実行する第１の実行手段と、所定のプログラムを実行するために必要な第２の情報を、第１の情報処理装置から取得する第２の取得手段と、第１の情報処理装置との接続状態が第２の接続状態である場合、第２の取得手段により取得された第２の情報に基づいて、所定のプログラムを実行する第２の実行手段とを備えることを特徴とする。
【００１６】
本発明のソフトウェア利用管理方法は、ネットワークを介して接続された第１の情報処理装置および第２の情報処理装置を含むソフトウェア利用管理システムのソフトウェア利用管理方法であって、第１の情報処理装置は、第１の情報処理装置と第２の情報処理装置との接続状態が第１の接続状態であるときに第２の情報処理装置に所定のプログラムを実行させるための第１の情報を、第２の情報処理装置に提供し、第１の情報処理装置と第２の情報処理装置との接続状態が第２の接続状態であるときに第２の情報処理装置に所定のプログラムを実行させるための第２の情報を生成して、第２の情報を第２の情報処理装置に付与し、第２の情報処理装置は、所定のプログラムを実行するために必要な第１の情報を、第１の情報処理装置から取得し、第１の情報処理装置との接続状態が第１の接続状態である場合、取得された第１の情報に基づいて、所定のプログラムを実行し、所定のプログラムを実行するために必要な第２の情報を、第１の情報処理装置から取得し、第１の情報処理装置との接続状態が第２の接続状態である場合、取得された第２の情報に基づいて、所定のプログラムを実行することを特徴とする。
【００１７】
本発明のソフトウェア利用管理システムおよび方法においては、第１の情報処理装置により、第１の情報処理装置と第２の情報処理装置との接続状態が第１の接続状態であるときに第２の情報処理装置に所定のプログラムを実行させるための第１の情報が、第２の情報処理装置に提供され、第１の情報処理装置と第２の情報処理装置との接続状態が第２の接続状態であるときに第２の情報処理装置に所定のプログラムを実行させるための第２の情報が生成されて、第２の情報が第２の情報処理装置に付与される。また、第２の情報処理装置により、所定のプログラムを実行するために必要な第１の情報が、第１の情報処理装置から取得され、第１の情報処理装置との接続状態が第１の接続状態である場合、取得された第１の情報に基づいて、所定のプログラムが実行され、所定のプログラムを実行するために必要な第２の情報が、第１の情報処理装置から取得され、第１の情報処理装置との接続状態が第２の接続状態である場合、取得された第２の情報に基づいて、所定のプログラムが実行される。
【００１８】
本発明の第１の情報処理装置は、ネットワークを介して他の情報処理装置と接続される情報処理装置であって、情報処理装置と他の情報処理装置との接続状態が第１の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第１の情報を、他の情報処理装置に提供する提供手段と、情報処理装置と他の情報処理装置との接続状態が第２の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第２の情報を生成し、第２の情報を前記他の情報処理装置に付与する付与手段とを備えることを特徴とする。
【００１９】
前記他の情報処理装置による所定のプログラムの実行状況に関するデータを収集する収集手段をさらに備えるようにすることができる。
【００２０】
前記第２の情報には、他の情報処理装置のユーザによる所定のプログラムの実行条件が記述されるようにすることができる。
【００２１】
前記収集手段は、他の情報処理装置のユーザ毎に所定のプログラムの実行状況に関するデータを収集してユーザ毎の実行状況のデータベースを生成するようにすることができる。
【００２２】
前記付与手段は、実行状況のデータベースに基づいて、ユーザ毎に所定のプログラムの実行条件を設定して第２の情報を生成するようにすることができる。
【００２３】
本発明の第１の情報処理方法は、ネットワークを介して他の情報処理装置と接続される情報処理装置の情報処理方法であって、情報処理装置と他の情報処理装置との接続状態が第１の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第１の情報を、他の情報処理装置に提供する提供ステップと、情報処理装置と他の情報処理装置との接続状態が第２の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第２の情報を生成し、第２の情報を前記他の情報処理装置に付与する付与ステップとを含むことを特徴とする。
【００２４】
本発明の第１のプログラムは、ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムであって、情報処理装置と他の情報処理装置との接続状態が第１の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第１の情報の、他の情報処理装置への提供を制御する提供制御ステップと、情報処理装置と他の情報処理装置との接続状態が第２の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第２の情報を生成し、第２の情報の他の情報処理装置への付与を制御する付与制御ステップとをコンピュータに実行させることを特徴とする。
【００２５】
本発明の第１の記録媒体は、ネットワークを介して他の情報処理装置と接続される情報処理装置のプログラムが記録されている記録媒体であって、情報処理装置と他の情報処理装置との接続状態が第１の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第１の情報の、他の情報処理装置への提供を制御する提供制御ステップと、情報処理装置と他の情報処理装置との接続状態が第２の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第２の情報を生成し、第２の情報の他の情報処理装置への付与を制御する付与制御ステップとをコンピュータに実行させるプログラムが記録されることを特徴とする。
【００２６】
本発明の第１の情報処理装置および方法、並びにプログラムにおいては、情報処理装置と他の情報処理装置との接続状態が第１の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第１の情報が、他の情報処理装置に提供され、情報処理装置と他の情報処理装置との接続状態が第２の接続状態であるときに他の情報処理装置に所定のプログラムを実行させるための第２の情報が生成され、第２の情報を前記他の情報処理装置に付与される。
【００２７】
本発明の第２の情報処理装置は、ネットワークを介して情報管理装置と接続される情報処理装置であって、所定のプログラムを実行するために必要な第１の情報を、情報管理装置から取得する第１の取得手段と、情報管理装置との接続状態が第１の接続状態である場合、第１の取得手段により取得された第１の情報に基づいて、所定のプログラムを実行する第１の実行手段と、所定のプログラムを実行するために必要な第２の情報を、情報管理装置から取得する第２の取得手段と、情報管理装置との接続状態が第２の接続状態である場合、第２の取得手段により取得された第２の情報に基づいて、所定のプログラムを実行する第２の実行手段とを備えることを特徴とする。
【００２８】
前記第２の接続状態は、情報処理装置が情報管理装置と通信しない状態であるようにすることができる。
【００２９】
前記第１の接続状態は、情報処理装置が情報管理装置と通信する状態であり、第１の接続状態において、第１の情報とともに、第２の情報を取得するようにすることができる。
【００３０】
前記第２の情報には、情報処理装置のユーザによる所定のプログラムの実行条件が記述されているようにすることができる。
【００３１】
前記第２の情報に記述された実行条件に基づいて、情報処理装置のユーザによる所定のプログラムの実行の可否を判定する判定手段をさらに備えるようにすることができる。
【００３２】
前記第２の情報に基づいて実行された所定のプログラムの実行状況に関するデータを記録する記録手段をさらに備えるようにすることができる。
【００３３】
本発明の第２の情報処理方法は、ネットワークを介して情報管理装置と接続される情報処理装置の情報処理方法であって、所定のプログラムを実行するために必要な第１の情報を、情報管理装置から取得する第１の取得ステップと、情報管理装置との接続状態が第１の接続状態である場合、第１の取得ステップの処理により取得された第１の情報に基づいて、所定のプログラムを実行する第１の実行ステップと、所定のプログラムを実行するために必要な第２の情報を、情報管理装置から取得する第２の取得ステップと、情報管理装置との接続状態が第２の接続状態である場合、第２の取得ステップの処理により取得された第２の情報に基づいて、所定のプログラムを実行する第２の実行ステップとを含むことを特徴とする。
【００３４】
本発明の第２のプログラムは、ネットワークを介して情報管理装置と接続される情報処理装置のプログラムであって、所定のプログラムを実行するために必要な第１の情報の、情報管理装置からの取得を制御する第１の取得制御ステップと、情報管理装置との接続状態が第１の接続状態である場合、第１の取得制御ステップの処理により取得された第１の情報に基づいて、所定のプログラムの実行を制御する第１の実行制御ステップと、所定のプログラムを実行するために必要な第２の情報の、情報管理装置からの取得を制御する第２の取得制御ステップと、情報管理装置との接続状態が第２の接続状態である場合、第２の取得制御ステップの処理により取得された第２の情報に基づいて、所定のプログラムの実行を制御する第２の実行制御ステップとをコンピュータに実行させることを特徴とするプログラム。
【００３５】
本発明の第２の記録媒体は、ネットワークを介して情報管理装置と接続される情報処理装置のプログラムが記録されている記録媒体であって、所定のプログラムを実行するために必要な第１の情報の、情報管理装置からの取得を制御する第１の取得制御ステップと、情報管理装置との接続状態が第１の接続状態である場合、第１の取得制御ステップの処理により取得された第１の情報に基づいて、所定のプログラムの実行を制御する第１の実行制御ステップと、所定のプログラムを実行するために必要な第２の情報の、情報管理装置からの取得を制御する第２の取得制御ステップと、情報管理装置との接続状態が第２の接続状態である場合、第２の取得制御ステップの処理により取得された第２の情報に基づいて、所定のプログラムの実行を制御する第２の実行制御ステップとをコンピュータに実行させるプログラムが記録されることを特徴とする。
【００３６】
本発明の第２の情報処理装置および方法、並びにプログラムにおいては、所定のプログラムを実行するために必要な第１の情報が、情報管理装置から取得され、情報管理装置との接続状態が第１の接続状態である場合、取得された第１の情報に基づいて、所定のプログラムが実行され、所定のプログラムを実行するために必要な第２の情報が、情報管理装置から取得され、情報管理装置との接続状態が第２の接続状態である場合、取得された第２の情報に基づいて、所定のプログラムが実行される。
【発明の効果】
【００３７】
本発明によれば、ユーザの利便性を向上させ、かつ確実にライセンス管理を行うことができる。
【発明を実施するための最良の形態】
【００３８】
以下に本発明の実施の形態を説明するが、本明細書に記載した発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が明細書に記載されていることを確認するためのものである。従って、明細書には記載されているが、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００３９】
さらに、この記載は、明細書に記載されている発明が、全て請求されていることを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出願、または追加される発明の存在を否定するものではない。
【００４０】
請求項１に記載のソフトウェア利用管理システムは、ネットワーク（例えば、図１のインターネット４）を介して接続された第１の情報処理装置（例えば、図１のソフトウェア動作管理サーバ１）および第２の情報処理装置（例えば、図１のパーソナルコンピュータ３）を含むソフトウェア利用管理システムであって、前記第１の情報処理装置は、前記第１の情報処理装置と前記第２の情報処理装置との接続状態が第１の接続状態（例えば、オンライン通信できる状態）であるときに前記第２の情報処理装置に所定のプログラムを実行させるための第１の情報（例えば、ライセンス許可）を、前記第２の情報処理装置に提供する提供手段（例えば、図１２のステップS８５の処理を実行する図４の認証処理部８１）と、前記第１の情報処理装置と前記第２の情報処理装置との接続状態が第２の接続状態（例えば、オンライン通信できない状態）であるときに前記第２の情報処理装置に前記所定のプログラムの実行させるための第２の情報（例えば、図５の許可データ）を生成し、前記第２の情報を前記第２の情報処理装置に付与する付与手段（例えば、図１２のステップS８６の処理を実行する図４の許可データ生成部８４および許可データ送信部８５）と、を備え、前記第２の情報処理装置は、前記所定のプログラムを実行するために必要な前記第１の情報を、前記第１の情報処理装置から取得する第１の取得手段（例えば、図７のステップS６の処理を実行する図６のライセンス管理部１０１）と、前記第１の情報処理装置との接続状態が前記第１の接続状態である場合、前記第１の取得手段により取得された前記第１の情報に基づいて、前記所定のプログラムを実行する第１の実行手段（例えば、図８のステップS１１の処理を実行する図６のアプリケーション起動制御部１０２）と、前記所定のプログラムを実行するために必要な前記第２の情報を、前記第１の情報処理装置から取得する第２の取得手段（例えば、図１０のステップS４２の処理を実行する図６のライセンス管理部１０１）と、前記第１の情報処理装置との接続状態が前記第２の接続状態である場合、前記第２の取得手段により取得された前記第２の情報に基づいて、前記所定のプログラムを実行する第２の実行手段（例えば、図１５のステップS１４５の処理を実行する図６のアプリケーション起動制御部１０２）とを備える。
【００４１】
請求項２に記載のソフトウェア利用管理方法は、ネットワーク（例えば、図１のインターネット４）を介して接続された第１の情報処理装置（例えば、図１のソフトウェア動作管理サーバ１）および第２の情報処理装置（例えば、図１のパーソナルコンピュータ３）を含むソフトウェア利用管理システムのソフトウェア利用管理方法であって、前記第１の情報処理装置は、前記第１の情報処理装置と前記第２の情報処理装置との接続状態が第１の接続状態（例えば、オンライン通信できる状態）であるときに前記第２の情報処理装置に所定のプログラムを実行させるための第１の情報（例えば、ライセンス許可）を、前記第２の情報処理装置に提供し（例えば、図１２のステップS８５の処理により提供し）、前記第１の情報処理装置と前記第２の情報処理装置との接続状態が第２の接続状態（例えば、オンライン通信できない状態）であるときに前記第２の情報処理装置に前記所定のプログラムを実行させるための第２の情報（例えば、図５の許可データ）を生成して、前記第２の情報を前記第２の情報処理装置に付与し（例えば、図１２のステップS８６の処理により付与し）、前記第２の情報処理装置は、前記所定のプログラムを実行するために必要な前記第１の情報を、前記第１の情報処理装置から取得し（例えば、図７のステップS６の処理により取得し）、前記第１の情報処理装置との接続状態が前記第１の接続状態である場合、取得された前記第１の情報に基づいて、前記所定のプログラムを実行し（例えば、図８のステップS１１の処理により実行し）、前記所定のプログラムを実行するために必要な前記第２の情報を、前記第１の情報処理装置から取得し（例えば、図１０のステップS４２の処理により取得し）、前記第１の情報処理装置との接続状態が前記第２の接続状態である場合、取得された前記第２の情報に基づいて、前記所定のプログラムを実行する（例えば、図１５のステップS１４５の処理により実行する）。
【００４２】
請求項３に記載の情報処理装置は、ネットワーク（例えば、図１のインターネット４）を介して他の情報処理装置（例えば、図１のパーソナルコンピュータ３）と接続される情報処理装置（例えば、図１のソフトウェア動作管理サーバ１）であって、前記情報処理装置と前記他の情報処理装置との接続状態が第１の接続状態（例えば、オンライン通信できる状態）であるときに前記他の情報処理装置に所定のプログラムを実行させるための第１の情報（例えば、ライセンス許可）を、前記他の情報処理装置に提供する提供手段（例えば、図１２のステップS８５の処理を実行する図４の認証処理部８１）と、前記情報処理装置と前記他の情報処理装置との接続状態が第２の接続状態（例えば、オンライン通信できない状態）であるときに前記他の情報処理装置に前記所定のプログラムを実行させるための第２の情報（例えば、図５の許可データ）を生成し、前記第２の情報を前記他の情報処理装置に付与する付与手段（例えば、図１２のステップS８６の処理を実行する図４の許可データ生成部８４および許可データ送信部８５）とを備える。
【００４３】
請求項４に記載の情報処理装置は、前記他の情報処理装置による前記所定のプログラムの実行状況に関するデータ（例えば、図６のオフライン利用状況データ１０７）を収集する収集手段（例えば、図１３のステップS１１１の処理を実行する図４の利用状況管理部８２）をさらに備えるようにすることができる。
【００４４】
請求項５に記載の情報処理装置は、前記第２の情報には、前記他の情報処理装置のユーザによる前記所定のプログラムの実行条件（例えば、図５の許可データの各項目と内容）が記述されるようにすることができる。
【００４５】
請求項６に記載の情報処理装置は、前記収集手段が、前記他の情報処理装置のユーザ毎に前記所定のプログラムの実行状況に関するデータを収集して前記ユーザ毎の実行状況のデータベース（例えば、図１４の利用状況データベース）を生成するようにすることができる。
【００４６】
請求項７に記載の情報処理装置は、前記付与手段が、前記実行状況のデータベースに基づいて、前記ユーザ毎に前記所定のプログラムの実行条件（例えば、図５の許可データの内容）を設定して前記第２の情報を生成するようにすることができる。
【００４７】
請求項８に記載の情報処理方法は、ネットワーク（例えば、図１のインターネット４）を介して他の情報処理装置（例えば、図１のパーソナルコンピュータ３）と接続される情報処理装置（例えば、図１のソフトウェア動作管理サーバ１）の情報処理方法であって、前記情報処理装置と前記他の情報処理装置との接続状態が第１の接続状態（例えば、オンライン通信できる状態）であるときに前記他の情報処理装置に所定のプログラムを実行させるための第１の情報（例えば、ライセンス許可）を、前記他の情報処理装置に提供する提供ステップ（例えば、図１２のステップS８５）と、前記情報処理装置と前記他の情報処理装置との接続状態が第２の接続状態（例えば、オンライン通信できない状態）であるときに前記他の情報処理装置に前記所定のプログラムを実行させるための第２の情報（例えば、図５の許可データ）を生成し、前記第２の情報を前記他の情報処理装置に付与する付与ステップ（例えば、図１２のステップS８６）とを含む。
【００４８】
請求項９に記載のプログラムは、ネットワーク（例えば、図１のインターネット４）を介して他の情報処理装置（例えば、図１のパーソナルコンピュータ３）と接続される情報処理装置（例えば、図１のソフトウェア動作管理サーバ１）のプログラムであって、前記情報処理装置と前記他の情報処理装置との接続状態が第１の接続状態（例えば、オンライン通信できる状態）であるときに前記他の情報処理装置に所定のプログラムを実行させるための第１の情報（例えば、ライセンス許可）の、前記他の情報処理装置への提供を制御する提供制御ステップ（例えば、図１２のステップS８５）と、前記情報処理装置と前記他の情報処理装置との接続状態が第２の接続状態（例えば、オンライン通信できない状態）であるときに前記他の情報処理装置に前記所定のプログラムを実行させるための第２の情報（例えば、図５の許可データ）を生成し、前記第２の情報の前記他の情報処理装置への付与を制御する付与制御ステップ（例えば、図１２のステップS８６）とをコンピュータに実行させる。
【００４９】
請求項１０に記載の記録媒体は、ネットワーク（例えば、図１のインターネット４）を介して他の情報処理装置（例えば、図１のパーソナルコンピュータ３）と接続される情報処理装置（例えば、図１のソフトウェア動作管理サーバ１）のプログラムが記録されている記録媒体であって、前記情報処理装置と前記他の情報処理装置との接続状態が第１の接続状態（例えば、オンライン通信できる状態）であるときに前記他の情報処理装置に所定のプログラムを実行させるための第１の情報（例えば、ライセンス許可）の、前記他の情報処理装置への提供を制御する提供制御ステップ（例えば、図１２のステップS８５）と、前記情報処理装置と前記他の情報処理装置との接続状態が第２の接続状態（例えば、オンライン通信できない状態）であるときに前記他の情報処理装置に前記所定のプログラムを実行させるための第２の情報（例えば、図５の許可データ）を生成し、前記第２の情報の前記他の情報処理装置への付与を制御する付与制御ステップ（例えば、図１２のステップS８６）とをコンピュータに実行させるプログラムが記録される。
【００５０】
請求項１１に記載の情報処理装置は、ネットワーク（例えば、図１のインターネット４）を介して情報管理装置（例えば、図１のソフトウェア動作管理サーバ１）と接続される情報処理装置（例えば、図１のパーソナルコンピュータ３）であって、所定のプログラムを実行するために必要な前記第１の情報を、前記情報管理装置から取得する第１の取得手段（例えば、図７のステップS６の処理を実行する図６のライセンス管理部１０１）と、前記情報管理装置との接続状態が前記第１の接続状態である場合、前記第１の取得手段により取得された前記第１の情報に基づいて、前記所定のプログラムを実行する第１の実行手段（例えば、図８のステップS１１の処理を実行する図６のアプリケーション起動制御部１０２）と、前記所定のプログラムを実行するために必要な前記第２の情報を、前記情報管理装置から取得する第２の取得手段（例えば、図１０のステップS４２の処理を実行する図６のライセンス管理部１０１）と、前記情報管理装置との接続状態が前記第２の接続状態である場合、前記第２の取得手段により取得された前記第２の情報に基づいて、前記所定のプログラムを実行する第２の実行手段（例えば、図１５のステップS１４５の処理を実行する図６のアプリケーション起動制御部１０２）とを備える。
【００５１】
請求項１２に記載の情報処理装置は、前記第２の接続状態は、前記情報処理装置が前記情報管理装置と通信しない状態（例えば、通信設備の無い場所に移動された場合、または通信回線の混雑、故障やメンテナンスなどにより、ソフトウェア動作管理サーバ１にアクセスできないような状態）であるようにすることができる。
【００５２】
請求項１４に記載の情報処理装置は、前記第２の情報には、前記情報処理装置のユーザによる前記所定のプログラムの実行条件（例えば、図５の許可データの内容）が記述されているようにすることができる。
【００５３】
請求項１５に記載の情報処理装置は、前記第２の情報に記述された前記実行条件に基づいて、前記情報処理装置のユーザによる前記所定のプログラムの実行の可否を判定する判定手段（例えば、図６の利用条件判定部１０３）をさらに備えるようにすることができる。
【００５４】
請求項１６に記載の情報処理装置は、前記第２の情報に基づいて実行された前記所定のプログラムの実行状況に関するデータ（例えば、図６のオフライン利用状況データ１０６）を記録する記録手段（例えば、図１５のステップS１４６の処理を実行する図６の利用状況モニタ部１０４）をさらに備えるようにすることができる。
【００５５】
請求項１７に記載の情報処理方法は、ネットワーク（例えば、図１のインターネット４）を介して情報管理装置（例えば、図１のソフトウェア動作管理サーバ１）と接続される情報処理装置（例えば、図１のパーソナルコンピュータ３）の情報処理方法であって、所定のプログラムを実行するために必要な前記第１の情報を、前記情報管理装置から取得する第１の取得ステップ（例えば、図７のステップS６）と、前記情報管理装置との接続状態が前記第１の接続状態である場合、前記第１の取得ステップの処理により取得された前記第１の情報に基づいて、前記所定のプログラムを実行する第１の実行ステップ（例えば、図８のステップS１１）と、前記所定のプログラムを実行するために必要な前記第２の情報を、前記情報管理装置から取得する第２の取得ステップ（例えば、図１０のステップS４２）と、前記情報管理装置との接続状態が前記第２の接続状態である場合、前記第２の取得ステップの処理により取得された前記第２の情報に基づいて、前記所定のプログラムを実行する第２の実行ステップ（例えば、図１５のステップS１４５）とを含む。
【００５６】
請求項１８に記載のプログラムは、ネットワーク（例えば、図１のインターネット４）を介して情報管理装置（例えば、図１のソフトウェア動作管理サーバ１）と接続される情報処理装置（例えば、図１のパーソナルコンピュータ３）のプログラムであって、所定のプログラムを実行するために必要な前記第１の情報の、前記情報管理装置からの取得を制御する第１の取得制御ステップ（例えば、図７のステップS６）と、前記情報管理装置との接続状態が前記第１の接続状態である場合、前記第１の取得制御ステップの処理により取得された前記第１の情報に基づいて、前記所定のプログラムの実行を制御する第１の実行制御ステップ（例えば、図８のステップS１１）と、前記所定のプログラムを実行するために必要な前記第２の情報の、前記情報管理装置からの取得を制御する第２の取得制御ステップ（例えば、図１０のステップS４２）と、前記情報管理装置との接続状態が前記第２の接続状態である場合、前記第２の取得制御ステップの処理により取得された前記第２の情報に基づいて、前記所定のプログラムの実行を制御する第２の実行制御ステップ（例えば、図１５のステップS１４５）とをコンピュータに実行させる。
【００５７】
請求項１９に記載の記録媒体は、ネットワーク（例えば、図１のインターネット４）を介して情報管理装置（例えば、図１のソフトウェア動作管理サーバ１）と接続される情報処理装置（例えば、図１のパーソナルコンピュータ３）のプログラムが記録されている記録媒体であって、所定のプログラムを実行するために必要な前記第１の情報の、前記情報管理装置からの取得を制御する第１の取得制御ステップ（例えば、図７のステップS６）と、前記情報管理装置との接続状態が前記第１の接続状態である場合、前記第１の取得制御ステップの処理により取得された前記第１の情報に基づいて、前記所定のプログラムの実行を制御する第１の実行制御ステップ（例えば、図８のステップS１１）と、前記所定のプログラムを実行するために必要な前記第２の情報の、前記情報管理装置からの取得を制御する第２の取得制御ステップ（例えば、図１０のステップS４２）と、前記情報管理装置との接続状態が前記第２の接続状態である場合、前記第２の取得制御ステップの処理により取得された前記第２の情報に基づいて、前記所定のプログラムの実行を制御する第２の実行制御ステップ（例えば、図１５のステップS１４５）とをコンピュータに実行させるプログラムが記録される。
【００５８】
以下、図面を参照して、本発明の実施の形態について説明する。
【００５９】
図１は、本発明のソフトウェア利用管理システムにおけるネットワーク接続例を示す。
【００６０】
ソフトウェア動作管理サーバ１、ＷＥＢサーバ２、パーソナルコンピュータ３−１乃至パーソナルコンピュータ３−ｎは、インターネット４を介して、相互に接続されている。ここでは、ソフトウェア動作管理サーバ１を１つだけ図示して説明しているが、例えば、ソフトウェア利用管理システムを用いてユーザに提供されるソフトウェアの種類が多いときなど、必要に応じて、複数のソフトウェア動作管理サーバ１に同様の処理を実行させるようにしてもよい。また、ソフトウェア動作管理サーバ３の機能を、ＷＥＢサーバ２と同一のサーバ上に構築するようにしてもよい。
【００６１】
ソフトウェア動作管理サーバ１は、所定のユーザが保有するパーソナルコンピュータ３−１乃至３−ｎによる、例えば、財務分析、利益計画、予算編成、財務予想、業績評価等を行うことができるソフトウェア（アプリケーションプログラム）の利用を管理するものである。ソフトウェア動作管理サーバ１の管理者（すなわち、ソフトウェア利用管理システムを利用したソフトウェア提供サービス（以下、本サービスと称する）の提供者）とユーザは、ユーザが使用を希望したソフトウェアに対する利用許可に関する契約を締結し、ユーザは、本サービスの提供者から、対応するソフトウェアを利用する場合のユーザ認証に用いられる、例えば、ユーザＩＤやパスワードの交付を受ける。
【００６２】
ソフトウェア動作管理サーバ１は、図１２を参照して後述する処理により、インターネット４を介して、ユーザが保有するパーソナルコンピュータ３−１乃至３−ｎから送信される信号に従って、認証処理を行い、正しく認証された場合、対応するソフトウェアのライセンス許可を、所定のユーザが保有するパーソナルコンピュータ３−１乃至３−ｎに送信し、パーソナルコンピュータ３−１乃至３−ｎから送信されるソフトウェアの利用に関する情報に基づいて、課金処理を行う。
【００６３】
また、ソフトウェア動作管理サーバ１は、パーソナルコンピュータ３−１乃至３−ｎから送信される情報に基づいて、各ユーザによるソフトウェアの利用状況（例えば、利用回数、利用時間など）を、図１４を参照して後述する利用状況データベースとして記録する。
【００６４】
なお、ソフトウェア動作管理サーバ１は、ソフトウェア動作管理サーバ１内外からの通信要求を全て捕捉し、恣意的に通過させたり禁止したりすることによって、必要なサービスだけをユーザに提供しつつセキュリティを確保することができる、いわゆるファイアーウォールによって保護されているため、不正アクセスを防止し、情報の安全性を確保することができる。
【００６５】
ソフトウェア動作管理サーバ１は、ＷＥＢサーバ２に、自分自身のアドレスを含む、ユーザ情報を記載したウェブコンテンツ、および、契約によって本サービスを受けることができるユーザに対する認証情報を登録している。ＷＥＢサーバ２は、契約を締結している所定のユーザが有するパーソナルコンピュータ３−１乃至３−ｎのいずれかから、インターネット４を介してアクセスされ、例えば、ユーザＩＤやパスワードなどの入力を受け、入力されたユーザＩＤやパスワードが正しいか否かを判断することによって認証処理を行い、正しく認証された場合にのみ、ユーザ情報が記載されたウェブコンテンツを、インターネット４を介して閲覧可能とする。
【００６６】
なお、ユーザ情報を、ソフトウェア管理サーバ1内に保存させておき、ＷＥＢサーバ２が、ユーザ認証の実行時に、ソフトウェア管理サーバ１に対してユーザ情報を問い合わせ、ソフトウェア管理サーバ１は、ＷＥＢサーバ２の問い合わせに対して返答するようにすることにより、ユーザ情報のセキュリティを向上させることができる。
【００６７】
また、ＷＥＢサーバ２は、ソフトウェア動作管理サーバ１のアドレスを含む、ユーザ情報を記載したウェブコンテンツではなく、例えば、ユーザ情報を、インターネット４を介してダウンロードすることができるようなウェブコンテンツを用意することにより、契約を締結しているユーザが、ユーザ情報を得ることができるようにしてもよい。
【００６８】
ユーザが保有するパーソナルコンピュータ３−１乃至３−ｎは、図７を参照して後述する処理により、インターネット４を介して、ＷＥＢサーバ２にアクセスし、ソフトウェア動作管理サーバ１のアドレスを含む、ユーザ情報を閲覧し、ソフトウェア動作管理サーバ１にアクセスして、ユーザ認証を行い、所定のソフトウェアのライセンス利用申請を送信し、ライセンス許可を得て、所定のソフトウェアを利用し、所定のソフトウェアによる処理の終了後、インターネット４を介して、ソフトウェア使用に関する情報を送信する。
【００６９】
また、本システムにより、ユーザが有するパーソナルコンピュータ３−１乃至３−ｎにおいて利用可能となる各種のアプリケーションプログラムは、例えば、パーソナルコンピュータ３−１乃至３−ｎに予め保存されるようにし、ソフトウェア動作管理サーバ１から送信されるライセンス許可を得た場合にのみ利用可能なように、ライセンス許可に、所定の情報（この情報がなければ、対応するソフトウェアを起動することができないような特殊な情報）を含ませるにしてもよい。あるいは、パーソナルコンピュータ３−１乃至３−ｎには、対応するアプリケーションプログラムを予め記録させず、ユーザがサービスを利用する毎に、対応するアプリケーションプログラム（ソフトウェア）の全部、もしくは一部が、ソフトウェア動作管理サーバ１から送信されるようにし、そのソフトウェアによる処理の終了後に、使用済みのソフトウェアが、パーソナルコンピュータ３−１乃至３−ｎから消去されるようにしてもよい。
【００７０】
また、例えば、ソフトウェア動作管理サーバ１とパーソナルコンピュータ３−１乃至３−ｎの接続が、常時接続であるような場合、業務処理を実行するアプリケーションプログラム本体の全てをソフトウェア動作管理サーバ１の記録媒体（例えば、図２を用いて後述するＨＤＤ（hard disk drive）１９など）に格納しておき、パーソナルコンピュータ３は、通信回線を通じてソフトウェア動作管理サーバ１の記録媒体内のアプリケーションプログラム本体に常時アクセスしながら、処理を実行するようにしてもよい。なお、これ以降は、各種のアプリケーションプログラムが、パーソナルコンピュータ３−１乃至３−ｎに予め保存されているものとして説明する。
【００７１】
さらに、パーソナルコンピュータ３−１乃至３−ｎは、例えば、通信設備の無い場所に移動された場合、または通信回線の混雑、故障やメンテナンスなどにより、ソフトウェア動作管理サーバ１にアクセスできないような場合（動作管理サーバ１とオンラインで通信できないなどの場合）、図１５を参照して後述するように、都度、ソフトウェア動作管理サーバ１からライセンス許可を得ることなく、インターネット４を介する通信を行わずに、オフラインで所定のソフトウェアを利用することもできる。
【００７２】
以下、パーソナルコンピュータ３−１乃至３−ｎを特に区別する必要のない場合は、総称して、パーソナルコンピュータ３と称するものとする。
【００７３】
次に、図２は、図１のソフトウェア動作管理サーバ１の構成を示すブロック図である。
【００７４】
ＣＰＵ（Central Processing Unit）１１は、入出力インターフェース１２および内部バス１３を介して、例えば、オペレータが入力部１４を用いて入力した各種指令に対応する信号や、インターネット４およびネットワークインターフェース１５を介して、パーソナルコンピュータ３から入力された信号を受け、それらの信号に基づいた各種処理を実行する。ＲＯＭ（Read Only Memory）１６は、ＣＰＵ１１が使用するプログラム（例えば、パーソナルコンピュータ３との認証処理を実行し所定のソフトウェアのライセンス許可を送出するプログラムや、課金計算処理を行うプログラム、あるいは、ユーザのソフトウェア利用状況を分析するプログラムなど）や演算用のパラメータなどのうちの基本的に固定のデータを格納する。ＲＡＭ（Random Access Memory）１７は、ＣＰＵ１１の実行において使用するプログラムや、その実行において適宜変化するパラメータを格納する。ＣＰＵ１１、ＲＯＭ１６、およびＲＡＭ１７は、内部バス１３により相互に接続されている。
【００７５】
内部バス１３は、入出力インターフェース１２とも接続されている。入力部１４は、例えば、キーボードやマウスからなり、ＣＰＵ１１に各種の指令を入力するとき操作される。表示部１８は、例えば、ＣＲＴ（Cathode Ray Tube）等からなり、各種情報をテキスト、あるいはイメージなどで表示する。ＨＤＤ１９は、ハードディスクを駆動し、パーソナルコンピュータ３を有するユーザとの契約や認証に関する情報や、各種ソフトウェアの利用状況に関する情報（例えば、図７、または図１０を参照して後述する処理により、パーソナルコンピュータ３から受信する管理テーブルの記録内容やオフライン利用状況データなど）を記載した情報テーブルのデータを記録する。ドライブ２０には、必要に応じて磁気ディスク２１、光ディスク２２、光磁気ディスク２３、および半導体メモリ２４が装着され、データの授受を行う。ネットワークインターフェース１５は、インターネット４と接続され、例えば、パーソナルコンピュータ３などとの情報の授受を行う。
【００７６】
なお、ＷＥＢサーバ２は、ＨＤＤ１９に、ユーザとの契約や認証に関する情報や、各種ソフトウェアの利用状況に関する情報に代わり、パーソナルコンピュータ３がインターネット４を介して閲覧可能であるウェブコンテンツに対応するデータが記録されている以外は、基本的に、ソフトウェア動作管理サーバ１と同様の構成を有するので、その説明を省略する。
【００７７】
次に、図３は、図１のパーソナルコンピュータ３の構成を示すブロック図である。なお、図２を用いて説明したソフトウェア動作管理サーバ１と対応する部分には、部分には同一の符号を付してあり、その説明は適宜省略する。
【００７８】
ＣＰＵ３１は、図２を用いて説明したＣＰＵ１１と同様に、入出力インターフェース１２および内部バス１３を介して、ユーザが入力部１４を用いて入力した各種指令に対応する信号、ネットワークインターフェース１５を介して、パーソナルコンピュータ３に接続された、例えば、図示しないＵＳＢマウスなどの入力装置や、図示しない他の情報処理装置から入力される信号、もしくは、インターネット４およびネットワークインターフェース１５を介して、ソフトウェア動作管理サーバ１から入力された信号を受け、それらの信号に基づいた各種処理を実行する。
【００７９】
ＲＯＭ３２およびＨＤＤ３３には、ＣＰＵ３１によって実行される、各種アプリケーションソフトウェアが記録されている。ＲＯＭ３２もしくはＨＤＤ３３には、例えば、電子メールソフトウェア、ワードプロセッサソフトウェア、表計算ソフトウェアなど、パーソナルコンピュータ３を使用するユーザの使用目的に応じて、様々なアプリケーションソフトウェアが記録可能である。ここでは、ＲＯＭ３２もしくはＨＤＤ３３に記録されているアプリケーションソフトウェアの中に、インターネット４を介して、ＷＥＢサーバ２にアクセスし、ウェブコンテンツを閲覧することができるウェブブラウザソフトウェアと、本サービスの提供者との契約により、所定の処理の実行後、利用することが許可される所定のアプリケーションプログラムなどのソフトウェアが含まれている。
【００８０】
本サービスにより提供されるソフトウェアは、ＣＰＵ３１により、ＲＯＭ３２もしくはＨＤＤ３３から読み出され、ＲＡＭ１７にロードされて起動された時点においては、ソフトウェア動作管理サーバ１からライセンス許可を受けるための処理しか行えない状態であり、ソフトウェア動作管理サーバ１からライセンス許可を受けたのち、実際の業務に用いられる処理（例えば、財務分析、利益計画、予算編成、財務予想、業績評価などのうち、本サービスの供給者との使用契約に基づいた処理）が実行可能な状態になる。
【００８１】
図３は、ソフトウェア動作管理サーバ１のCPU１１により実行され、所定のユーザが保有するパーソナルコンピュータ３による、例えば、財務分析、利益計画、予算編成、財務予想、業績評価等を行うアプリケーションプログラムなどのソフトウェアの利用を管理するソフトウェアの機能的構成例を示すブロック図である。
【００８２】
認証管理部８１は、インターネット４を介してアクセスしてきたパーソナルコンピュータ３の認証を行い、パーソナルコンピュータ３（のユーザ）が正しく認証された場合、パーソナルコンピュータ３にライセンス許可を送信することにより、パーソナルコンピュータ３による各種のアプリケーションプログラム（本サービスの契約の対象となるアプリケーションプログラム）の利用を可能にする。また、認証管理部８１は、パーソナルコンピュータ３が利用したアプリケーションプログラムの種類、利用時間などの情報を利用状況データベース８３に記録する。
【００８３】
利用状況管理部８２は、パーソナルコンピュータ３が、オフラインで利用したアプリケーションプログラムの種類、回数、時間などが記述された情報を、インターネット４を介してパーソナルコンピュータ３から受信し、これらの情報を利用状況データベース８３に記録する。このようにすることで、オフラインであっても、パーソナルコンピュータ３（のユーザ）によるアプリケーションプログラムの利用状況を正確に把握できる。
【００８４】
許可データ生成部８４は、図１３を参照して後述する処理により、利用状況データベース８３に記録された情報に基づいて、オフラインでのアプリケーションプログラムの利用条件が記述された許可データを生成し、許可データ送信部８５は、許可データをインターネット４を介してパーソナルコンピュータ３に送信する。
【００８５】
図５は、許可データの例を示す図である。この例では、許可データの第１番目の項目として「有効期限」が設けられており、その内容として「2004/6/25」と記述されている。これは、この許可データの有効期限が西暦2004年6月25日であることを表してしる。許可データの第２番目の項目としては「オフライン利用可否」が設けられており、その内容として「可」と記述されている。これは、この許可データがパーソナルコンピュータ３によるオフラインでのアプリケーションプログラムの利用を許可するものであることを表している。
【００８６】
許可データの第３番目の項目としては「利用可能アプリケーション」が設けられており、その内容として「Ａ，Ｂ，Ｃ」と記述されている。これは、この許可データに基づいて、パーソナルコンピュータ３がオフラインで利用できるアプリケーション（アプリケーションプログラム）が、アプリケーションＡ，アプリケーションＢ，またはアプリケーションＣであることを表している。許可データの第４番目の項目としては「登録ユーザ」が設けられており、その内容として「○○」と記述されている。これは、この許可データに基づいて、パーソナルコンピュータ３を使ってオフラインでアプリケーションを利用できるユーザのユーザ名（またはＩＤ）が○○であることを表している。
【００８７】
許可データの第５番目の項目としては「利用可能回数」が設けられており、その内容として「１０回」と記述されている。これは、この許可データに基づいて、パーソナルコンピュータ３を使ってオフラインでアプリケーションを利用できる回数が１０回であることを表している。許可データの第６番目の項目としては「利用可能時間」が設けられており、その内容として「１２時間」と記述されている。これは、この許可データに基づいて、パーソナルコンピュータ３を使ってオフラインでアプリケーションを利用できる延べ時間が１２時間であることを表している。
【００８８】
許可データにはこの他、適宜必要な情報が記述されるようにしてもよい。
【００８９】
許可データは、パーソナルコンピュータ３がソフトウェア動作管理サーバ１にインターネット４を介してアクセスしたとき、図１３を参照して後述する処理により生成され、パーソナルコンピュータ３に送信される。許可データを取得したパーソナルコンピュータ３は、その後、許可データに基づいて、オフラインでアプリケーションを利用することが可能となる。また、許可データは、利用状況データベース８３に記録された情報に基づいて、ユーザ毎に生成される。
【００９０】
従って、ユーザの利用状況に応じて許可データの内容を変更することができる。例えば、利用状況データベースに記録された過去１ヶ月間のアプリケーションの利用回数が所定の回数を超えているユーザには、許可データの「利用可能回数」に対応する値を大きくし、利用状況データベースに記録された過去１ヶ月間のアプリケーションの利用回数が所定の回数以下のユーザには、許可データの「利用可能回数」の値を小さくするなど、全てのユーザに対して一律にオフラインでのアプリケーションの利用を許可するのではなく、そのユーザの利用状況に応じた利用条件を、許可データを用いて設定し、ユーザ毎にオフラインでのアプリケーションの利用を許可することができる。
【００９１】
このように、パーソナルコンピュータ３がソフトウェア動作管理サーバ１とオンラインで通信できる場合、上述したライセンス許可に基づいて、アプリケーションが実行され、パーソナルコンピュータ３がソフトウェア動作管理サーバ１とオンラインで通信できない場合、上述した許可データに基づいて、アプリケーションが実行される。その結果、オフラインでのアプリケーションの利用を可能にしてユーザの利便性を高めるとともに、より確実にライセンスを管理できる。
【００９２】
図６は、パーソナルコンピュータ３のCPU３１により実行され、ソフトウェア動作管理サーバ１によりその利用が管理される、例えば、財務分析、利益計画、予算編成、財務予想、業績評価等を行うアプリケーションプログラムなど（ソフトウェア）の実行を制御するソフトウェアの機能的構成例を示すブロック図である。
【００９３】
ライセンス管理部１０１は、ソフトウェア動作管理サーバ１に対して、認証要求、ライセンス申請を行い、ソフトウェア動作管理サーバ１からライセンス許可、および許可データを取得する。アプリケーション起動制御部１０２は、ライセンス管理部１０１により取得されたライセンス許可に基づいて、アプリケーションの起動を制御する。また、オフラインでアプリケーションを利用する場合、利用条件判定部１０３が上述した許可データに基づいて利用条件を判定し、アプリケーション起動制御部１０２は、利用条件判定部１０３の判定結果に基づいて、アプリケーションの起動を制御する。
【００９４】
利用状況モニタ部１０４は、パーソナルコンピュータ３が利用したアプリケーションの利用状況を監視し、動作ログなどの情報を管理テーブル１０６に記録するとともに、オフラインでアプリケーションが利用された場合、オフラインで利用されたアプリケーションの種類、回数、時間などの情報をオフライン利用状況データ１０７として記憶する。
【００９５】
利用状況送信部１０５は、パーソナルコンピュータ３がインターネット４を介してソフトウェア動作管理サーバ１にアクセスしたとき、管理テーブル１０６、およびオフライン利用状況データ１０７の情報をソフトウェア動作管理サーバ１に送信する。
【００９６】
次に、図７のフローチャートを参照して、パーソナルコンピュータ３の処理について説明する。この処理は、パーソナルコンピュータ３がインターネット４を介してソフトウェア動作管理サーバとの通信が可能な場合に実行される。なお、パーソナルコンピュータ３が通信設備の無い場所に移動された場合、または通信回線の混雑、故障やメンテナンスなどにより、ソフトウェア動作管理サーバ１にアクセスできないような場合の処理については、図１５を参照して後述する。
【００９７】
ステップＳ１において、ライセンス管理部１０１は、インターネット４上に公開されているウェブコンテンツを閲覧するためのブラウザソフトを、ＨＤＤ３３もしくはＲＯＭ３２から読み出して、ＲＡＭ１７にロードして起動し、インターネット４を介して、所定のＷＥＢサーバ２にアクセスする。
【００９８】
ステップＳ２において、ライセンス管理部１０１は、本サービスの供給者との契約により、使用契約が締結されているソフトウェア（アプリケーションプログラム）を、ＨＤＤ３３もしくはＲＯＭ３２から読み出してＲＡＭ１７にロードして起動し、それと同時に、ステップＳ１においてアクセスしたＷＥＢサーバ２から、ソフトウェア動作管理サーバ１のアドレスを含むユーザ情報（後述する図１１において、ＷＥＢサーバ２が送出するユーザ情報）を取得する。このときパーソナルコンピュータ３は、ソフトウェア動作管理サーバ１からライセンス許可を受けるための処理を行うことはできるが、まだ、実際の業務に用いられるような処理（例えば、財務分析、利益計画、予算編成、財務予想、業績評価などのうち、本サービスの供給者との使用契約に基づいた処理）は実行できない状態であり、ソフトウェア動作管理サーバ１からライセンス許可を受けたのち、実際の業務に用いられるような処理（本サービスの供給者との使用契約に基づいた処理）が実行可能な状態になる。
【００９９】
ステップＳ３において、ライセンス管理部１０１は、ＷＥＢサーバ２との通信を終了し、ステップＳ４において、ステップＳ２において取得したアドレスを基に、インターネット４を介して、ソフトウェア動作管理サーバ１にアクセスする。
【０１００】
ステップＳ５において、ライセンス管理部１０１は、ユーザ認証およびライセンス利用の申請を、インターネット４を介して、ソフトウェア動作管理サーバ１に送信する。
【０１０１】
ステップＳ６において、ライセンス管理部１０１は、ソフトウェア動作管理サーバ１から、インターネット４、ネットワークインターフェース１５、入出力インターフェース１２および内部バス１３を介して、ステップＳ５で送信したライセンス利用申請に対する応答を受信する。
【０１０２】
ステップＳ７においてライセンス管理部１０１は、ステップＳ６で受信された応答がライセンス許可であるか否かを判定し、ライセンス許可ではないと判定された場合、ステップＳ８に進み、エラーメッセージを表示部１８に表示させて、処理が終了される。
【０１０３】
ステップＳ７において、ステップＳ６で受信された応答がライセンス許可であると判定された場合、ライセンス管理部１０１は、ステップＳ９において、図１０を参照して後述する許可データ更新処理を実行する。これにより、ソフトウェア動作管理サーバ１から許可データが取得され、ＨＤＤ３３の所定の領域に記憶される。
【０１０４】
ステップＳ９の処理の後、ステップＳ１０においてソフトウェア動作管理サーバ１との通信が終了される。ステップＳ７において、ライセンス許可を受けたため、この後、ＲＡＭ１４にロードされたアプリケーションの実行が可能となる。図８のステップＳ１１においてアプリケーション起動制御部１０２は、アプリケーションを実行する。
【０１０５】
ステップＳ１２において、利用状況モニタ部１０４は、ステップＳ１１で実行されたアプリケーションの動作ログを管理テーブル１０６に記録する。管理テーブル１０６に記録されるデータは、例えば、ソフトウェア動作管理サーバ１が実行する課金処理およびデータ解析処理などに用いられる。
【０１０６】
図９に、管理テーブル１０６に記録されるデータの一例を示す。この例では、利用されたアプリケーションで用いられるコマンド毎に、例えば、コマンドの実行回数を示すコマンドカウンタ、そのコマンドの実行時間を示すコマンド実行時間、生成されたデータの容量や、発生したエラーの内容などを示すコマンド付属情報、および、これらの情報が管理テーブルに記録された時間を示すログ更新時刻などが記録されている。
【０１０７】
ステップＳ１３において、アプリケーション起動制御部１０２は、入力部１４から入力されるユーザの操作を示す信号に基づいて、アプリケーションの利用が終了したか否かを判定する。ステップＳ１３において、アプリケーションの利用が終了していないと判断された場合、処理は、ステップＳ１１に戻り、それ以降の処理が繰り返される。
【０１０８】
ステップＳ１３において、アプリケーションの利用が終了したと判定された場合、ライセンス管理部１０１は、ステップＳ１４において、インターネット４を介して、ソフトウェア動作管理サーバ１にアクセスし、ステップＳ１５において、ソフトウェア利用ライセンス返却要求と、管理テーブル１０６の記録内容を、インターネット４を介して、ソフトウェア動作管理サーバ１に送信し、テップＳ１６において、ソフトウェア動作管理サーバ１との通信を終了する。このとき、ソフトウェア動作管理サーバ１から、パーソナルコンピュータ３に課金情報などが送信され、送信された課金情報が表示部１８に表示されるようにしてもよい。
【０１０９】
この例では、ステップＳ１０において、一旦、パーソナルコンピュータ３とソフトウェア動作管理サーバ１との通信が終了され、ステップＳ１４において、再びパーソナルコンピュータ３とソフトウェア動作管理サーバ１との通信が行われるようにしたが、パーソナルコンピュータ３が常時接続などの接続形態でインターネット４に接続されている場合、ステップＳ１０とステップＳ１４の処理を省略するようにすることも可能である。
【０１１０】
また、この例では、ステップＳ１５において、管理テーブル１０６の記録内容を、インターネット４を介して、ソフトウェア動作管理サーバ１に送信するようにしたが、ステップＳ９の処理において、管理テーブル１０６の記録内容がオフライン利用状況データ１０７とともにソフトウェア動作管理サーバ１に送信されるようにしてもよい。
【０１１１】
このようにして、ソフトウェア動作管理サーバ１によりその利用が管理される、例えば、財務分析、利益計画、予算編成、財務予想、業績評価等を行うアプリケーションが実行される。
【０１１２】
次に図１０のフローチャートを参照して、図７のステップＳ９の許可データ更新処理の詳細について説明する。
【０１１３】
ステップＳ４３において、利用状況送信部１０５は、オフラインで利用されたアプリケーションの種類、回数、時間などの情報からなるオフライン利用状況データ１０７をソフトウェア動作管理サーバ１に送信する。このとき、管理テーブル１０６の記録内容がオフライン利用状況データ１０７とともにソフトウェア動作管理サーバ１に送信されるようにしてもよい。
【０１１４】
ステップＳ４２において、ライセンス管理部１０１は、後述する図１３のステップＳ１１５の処理でソフトウェア動作管理サーバ１から送信される許可データを受信する。ステップＳ４３において、ライセンス管理部１０１は、ステップＳ４２で受信した許可データをＨＤＤ３３の所定の領域に記憶し、許可データを更新する。例えば、過去に取得された許可データがＨＤＤ３３の所定の領域に既に記憶されていた場合、ライセンス管理部１０１は、新しい許可データを上書きする。
【０１１５】
このように、パーソナルコンピュータ３がソフトウェア動作管理サーバ１にアクセスするとき（ソフトウェア動作管理サーバ１とオンラインで通信するとき）、オフラインでアプリケーションを利用するために必要な許可データが取得され、これ以後、パーソナルコンピュータ３のユーザは、上述した処理によって取得された許可データに基づいて、図１５を参照して後述するようにオフラインでアプリケーションを利用することが可能となる。このようにすることで、常に最新の許可データを取得することができる。従って、そのユーザの最新の利用状況に応じた許可データを提供でき、ユーザの利便性を高めることができる。
【０１１６】
次に、図１１のフローチャートを参照して、図７と図８を参照して説明した処理と並行して実行される、ＷＥＢサーバ２の処理について説明する。
【０１１７】
ステップＳ６１において、ＷＥＢサーバ２のＣＰＵ１１（図２は、ソフトウェア動作管理サーバ１としてだけではなく、ＷＥＢサーバ２の構成を示すものとしても参照される）は、インターネット４、ネットワークインターフェース１５、入出力インターフェース１２、および内部バス１３を介して、ユーザのパーソナルコンピュータ３からのアクセス（図７のステップＳ１）を受け付ける。
【０１１８】
ステップＳ６２において、ＣＰＵ１１は、パーソナルコンピュータ３を利用するユーザが契約によって利用可能なアプリケーションを管理する、ソフトウェア動作管理サーバ１のアドレスを含んだユーザ情報を送出する。なお、ユーザ情報を、ソフトウェア管理サーバ1内に保存させておき、ＷＥＢサーバ２が、ユーザ認証の実行時に、ソフトウェア管理サーバ１に対してユーザ情報を問い合わせ、ソフトウェア管理サーバ１からの返答を受けることができるようにすることにより、ユーザ情報のセキュリティを向上させるようにすることも可能である。
【０１１９】
そして、ステップＳ２３において、図７のステップＳ３におけるユーザのパーソナルコンピュータ３の処理により、パーソナルコンピュータ３との通信が終了され、処理が終了される。
【０１２０】
次に、図１２のフローチャートを参照して、図７と図８を参照して説明した処理と並行して実行されるソフトウェア動作管理サーバ１の処理について説明する。
【０１２１】
ステップＳ８１において、認証管理部８１は、ユーザのパーソナルコンピュータ３からのアクセス（図７のステップＳ４）を受け付け、ステップＳ８２において、パーソナルコンピュータ３から、インターネット４を介して送信（図７のステップS５）されたユーザ認証およびライセンス利用申請を受信する。
【０１２２】
ステップＳ８３において、認証管理部８１は、ステップＳ８２において受信された、ユーザ認証およびライセンス利用申請を送信したパーソナルコンピュータ３のユーザのユーザ認証が正しく終了し、ライセンス利用が認められたか否かを判定する。
【０１２３】
ステップＳ８３において、ユーザ認証が正しく終了しなかったと判断された場合、もしくはライセンス利用が認められなかったと判断された場合、ステップＳ８４において、認証管理部８１は、インターネット４を介して、エラーメッセージをパーソナルコンピュータ３に送信して、処理が終了される。
【０１２４】
ステップＳ８３において、ユーザ認証が正しく終了し、ライセンス利用が認められたと判定された場合、認証管理部８１は、ステップＳ８５において、インターネット４を介して、ライセンス許可をライセンス利用申請に対する応答としてパーソナルコンピュータ３に送信する。
【０１２５】
ステップS８６において、利用状況管理部８２、許可データ生成部８４、および許可データ送信部８５は、図１３を参照して後述する許可データ付与処理を実行する。これにより、パーソナルコンピュータ３のユーザのオフライン利用状況データが取得され、ユーザの利用状況に基づく許可データが生成されてパーソナルコンピュータ３に送信される。
【０１２６】
ステップＳ８７において、図７のステップＳ１０におけるパーソナルコンピュータ３の処理により、パーソナルコンピュータ３との通信が終了される。
【０１２７】
ステップＳ８８において、ＣＰＵ１１は、対応するソフトウェアの動作に必要な情報（例えば、ステップＳ８５においてライセンス許可を与えられたアプリケーションの種類やパーソナルコンピュータ３の利用者のユーザＩＤ、利用開始時刻など）などを、ＨＤＤ１９の利用状況データベース８３に記憶する。
【０１２８】
ステップＳ８９において、認証管理部８１は、パーソナルコンピュータ３からのアクセス（図８のステップＳ１４）を受け、ステップＳ９０において、インターネット４を介してパーソナルコンピュータ３が図８のステップＳ１５で送信した、ライセンス返却要求と、管理テーブル１０６の記録内容を受信する。これによりパーソナルコンピュータ３によるアプリケーションの利用が終了したものと判断され、利用状況データベースにアプリケーションの利用終了時刻などの情報が記憶される。
【０１２９】
そして、ステップＳ９１において、図８のステップＳ１６におけるパーソナルコンピュータ３の処理により、パーソナルコンピュータとの通信が終了され、処理は終了される。このとき、例えば、ソフトウェア動作管理サーバ１から課金情報などが、パーソナルコンピュータ３に送信されるようにしてもよい。
【０１３０】
なお、パーソナルコンピュータ３が常時接続などの接続形態でインターネット４に接続されており、図７と図８を参照して上述したパーソナルコンピュータ３の処理においてステップＳ１０とステップＳ１４の処理が省略されている場合、ステップS８７とステップS８９の処理は省略される。
【０１３１】
このようにして、パーソナルコンピュータ３における、例えば、財務分析、利益計画、予算編成、財務予想、業績評価等を行うアプリケーション（本サービス提供者との契約により利用可能なアプリケーション）の利用がソフトウェア動作管理サーバ１によって管理される。
【０１３２】
次に、図１３のフローチャートを参照して、図１２のステップS８６の許可データ付与処理の詳細について説明する。
【０１３３】
ステップS１１１において、利用状況管理部８２は、図１０のステップS４１でパーソナルコンピュータ３が送信したオフライン利用状況データを受信する。上述したように、このとき、オフライン利用状況データとともに、管理テーブル１０６の記録内容がパーソナルコンピュータ３から送信され、利用状況管理部８２は、オフライン利用状況データと、管理テーブル１０６の記録内容とを受信するようにしてもよい。
【０１３４】
ステップS１１２において、利用状況管理部８２は、ステップS１１１で受信されたオフライン利用状況データを利用状況データベース８３に記憶する。
【０１３５】
このようにして、ユーザの利用状況が記憶された利用状況データベース８３の例を図１４に示す。この例では、利用状況データベース８３に、ユーザ１、ユーザ２、ユーザ３、・・・の利用状況が記憶されている。なお、利用状況データベースの内容は、ユーザ毎に所定の間隔（例えば、１ヶ月毎）にクリアされて更新される。
【０１３６】
同図に示されるように、ユーザ１は、過去の所定の期間（例えば、１ヶ月間）にアプリケーション（本サービス提供者との契約によって利用可能なアプリケーション）を２回利用している。ユーザ１の第１回目の利用は、その利用開始日時が「2004/05/25/14/00（西暦2004年5月25日14時00分を表す）」であり、その利用終了時刻が「2004/05/25/14/30（西暦2004年5月25日14時30分を表す）」であり、利用されたアプリケーション（利用アプリケーション）はアプリケーションAとされている。
【０１３７】
また、このときのアプリケーションの利用（利用区分）は、オンラインとされており、パーソナルコンピュータ３がインターネット４を介してソフトウェア動作管理サーバと通信可能な状態で利用されたこと（図７と図８を参照して上述した処理により実行された）を表している。
【０１３８】
ユーザ１の第２回目の利用は、その利用開始日時が「2004/05/28/12/00（西暦2004年5月28日12時00分を表す）」であり、その利用終了時刻が「2004/05/28/12/15（西暦2004年5月28日12時15分を表す）」であり、利用されたアプリケーション（利用アプリケーション）はアプリケーションＢとされている。
【０１３９】
また、このときのアプリケーションの利用（利用区分）は、オフラインとされており、パーソナルコンピュータ３が通信設備の無い場所に移動されたか、または通信回線の混雑、故障やメンテナンスなどにより、ソフトウェア動作管理サーバ１にアクセスできない状態で利用されたこと（図１５を参照して後述する処理により実行された）を表している。
【０１４０】
利用状況データベース８３には、必要に応じて、これら以外の他の項目も記憶されるようにしてもよい。
【０１４１】
同様にして、ユーザ２、ユーザ３、・・・の利用状況が、利用状況データベース８３に記憶されている。
【０１４２】
図１３に戻って、ステップＳ１１３において、許可データ生成部８４は、図１２のステップＳ８２において受信した、ユーザ認証に対応するパーソナルコンピュータ３のユーザの利用状況を、利用状況データベース８３の記憶内容に基づいて解析し、ステップＳ１１４において、許可データ生成部８４は、ステップＳ１１３の解析結果に基づいて、図５を参照して上述した許可データを生成する。
【０１４３】
このとき、許可データの利用条件（許可データの各項目の内容）は、例えば、予め定められたルールに基づいて設定され、例えば、利用状況データベースに記録された過去１ヶ月間のアプリケーションの利用回数が所定の回数を超えているユーザには、許可データの「利用可能回数」に対応する値を大きくし、利用状況データベースに記録された過去１ヶ月間のアプリケーションの利用回数が所定の回数以下のユーザには、許可データの「利用可能回数」の値を小さくするなど、そのユーザの利用状況に応じた利用条件が設定される。
【０１４４】
そして、ステップＳ１１５において、許可データ送信部８５は、ステップＳ１１４で生成された許可データをパーソナルコンピュータ３に送信する。
【０１４５】
このようにして、ユーザ毎に、個別に利用条件が設定された許可データが送信される。
【０１４６】
次に、図１５のフローチャートを参照して、パーソナルコンピュータ３によるオフラインアプリケーション利用処理について説明する。この処理は、例えば、パーソナルコンピュータ３が通信設備の無い場所に移動された場合、または通信回線の混雑、故障やメンテナンスなどにより、ソフトウェア動作管理サーバ１にアクセスできないような場合、あるいはまた、非常に短時間の間だけ、アプリケーションを利用するので、あえてソフトウェア動作管理サーバとの通信を行いたくないような場合であって、かつユーザにより契約によって利用可能なアプリケーションの利用（起動）が指令された場合、実行される。
【０１４７】
ステップＳ１４１において、ライセンス管理部１０１は、ＨＤＤ３３の所定の領域を検索し、ステップＳ１４２において、許可データが記憶されているか否かを判定する。
【０１４８】
ステップＳ１４２において許可データが記憶されていると判定された場合、ステップＳ１４３において、利用条件判定部１０３は、図１６を参照して後述する利用条件判定処理を実行する。これにより、ユーザが所望するアプリケーションのオフラインでの利用可否が判定され、利用可能である場合、利用可能フラグがＯＮに設定され、利用不可能である場合、利用可能フラグがＯＦＦに設定される。
【０１４９】
ステップＳ１４４において、アプリケーション起動制御部１０２は、利用可能フラグがＯＮであるか否かを判定し、利用可能フラグがＯＮであると判定された場合、ステップＳ１４５に進み、アプリケーションを起動する。
【０１５０】
ステップＳ１４６において、利用状況モニタ部１０４は、ステップＳ１４５で起動されたアプリケーションの利用状況をオフライン利用状況データ１０７として記録する。
【０１５１】
ステップＳ１４７において、アプリケーション起動制御部１０２は、アプリケーションの利用が終了されたか否かを判定し、アプリケーションの利用が終了されたと判定されるまで待機する。ステップＳ１４７において、アプリケーションの利用が終了されたと判定された場合、処理は終了される。また、このとき、オフライン利用状況データ１０７に利用終了時刻が記述される。
【０１５２】
ステップＳ１４２において、許可データが記憶されていないと判定された場合、またはステップＳ１４４において、利用可能フラグはＯＮではないと判定された場合、ステップＳ１４８に進み、表示部１８にエラーメッセージを表示させ、処理が終了する。
【０１５３】
このようにして、パーソナルコンピュータ３のユーザによるオフラインでのアプリケーションの利用が行われる。このようにすることで、パーソナルコンピュータ３が通信設備の無い場所に移動された場合、または通信回線の混雑、故障やメンテナンスなどにより、ソフトウェア動作管理サーバ１にアクセスできないような場合であっても、ユーザは所望のアプリケーションを利用することができる。
【０１５４】
次に、図１６のフローチャートを参照して、図１５のステップＳ１４３の利用条件判定処理の詳細について説明する。
【０１５５】
ステップＳ１６１において、利用条件判定部１０３は、ステップＳ１４１の処理により検索された許可データは、有効期限内のものか否かを判定する。図１６の処理が実行される日時が図５の許可データの項目「有効期限」の内容に記述された日時以前である場合、許可データは、有効期限内のものであると判定され、処理はステップＳ１６２に進む。
【０１５６】
ステップＳ１６２において利用条件判定部１０３は、この許可データにおいてオフライン利用が許可されているか否かを判定する。図５の許可データの項目「オフライン利用可否」の内容に「可」と記述されている場合、この許可データにおいて、オフライン利用が許可されていると判定され、処理はステップＳ１６３に進む。
【０１５７】
ステップＳ１６３において利用条件判定部１０３は、ユーザが利用を希望する（起動が指令された）アプリケーションが、この許可データによりオフライン利用できるアプリケーションか否かを判定する。いま、起動が指令されたアプリケーション（の種類）が図５の許可データの項目「利用可能アプリケーション」の内容に記述されている場合、この許可データによりオフライン利用ができると判定され、処理はステップＳ１６４に進む。
【０１５８】
ステップＳ１６４において利用条件判定部１０３は、パーソナルコンピュータ３のユーザが、この許可データに登録されたユーザか否かを判定する。パーソナルコンピュータ３にログインしているユーザのユーザ名（またはＩＤ）が図５の許可データの項目「登録ユーザ」の内容に記述されている場合、この許可データに登録されたユーザであると判定され、処理はステップＳ１６５に進む。
【０１５９】
ステップＳ１６５において、利用条件判定部１０３は、オフライン利用状況データ１０７を参照する。そして、このとき参照されたオフライン利用状況データ１０７に基づいて、後述するステップＳ１６６またはＳ１６７の処理による判定を行う。
【０１６０】
ステップＳ１６６において利用条件判定部１０３は、利用できる回数を超えていないか否かを判定する。このとき、オフライン利用状況データ１０７に基づいて、過去の所定の期間（例えば１ヶ月間）に、パーソナルコンピュータ３のユーザがオフラインでアプリケーションを利用した回数が計算される。計算された回数が図５の許可データの項目「利用可能回数」の内容に記述されている値未満である場合、利用できる回数を超えていないと判定され、処理はステップＳ１６７に進む。
【０１６１】
ステップＳ１６７において利用条件判定部１０３は、利用できる時間を超過していないか否かを判定する。オフライン利用状況データ１０７に基づいて、過去の所定の期間（例えば１ヶ月間）に、パーソナルコンピュータ３のユーザがオフラインでアプリケーションを利用した延べ時間が計算される。計算された延べ時間が図５の許可データの項目「利用可能時間」の内容に記述されている値を超えていない場合、利用できる時間を超過していないと判定され、処理はステップＳ１６８に進む。
【０１６２】
ステップＳ１６８において、利用条件判定部１０３は、この許可データに基づくオフラインでのアプリケーションの利用が可能であることを表す利用可能フラグをＯＮに設定する。
【０１６３】
一方、ステップＳ１６１において、許可データは有効期限内のものではないと判定された場合、ステップＳ１６２において、オフライン利用が許可されていないと判定された場合、ステップＳ１６３においてオフラインで利用できるアプリケーションではないと判定された場合、ステップＳ１６４において、許可データに登録されたユーザではないと判定された場合、ステップＳ１６６において、利用できる回数を超えていると判定された場合、またはステップＳ１６７において、利用できる時間を超過していると判定された場合、処理は、ステップＳ１６８に進み、利用可能フラグがＯＦＦに設定される。
【０１６４】
このようにして、許可データに設定された利用条件に基づいて、オフラインでのアプリケーションの利用可否が判定される。許可データはユーザ毎に提供されるので、オフラインでの利用であっても、詳細な利用条件を設定することにより、確実なライセンス管理を行うことができる。
【０１６５】
上述した一連の処理をハードウェアで実現するか、ソフトウェアで実現するかは問わない。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータなどに、ネットワークインターフェース１５を介して接続されるインターネット４や光ディスク２２などのリムーバブルメディアからインストールされる。
【０１６６】
なお、本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０１６７】
【図１】本発明のソフトウェア利用管理システムの構成例を示すブロック図である。
【図２】図１のソフトウェア動作管理サーバの構成例を示すブロック図である。
【図３】図１のパーソナルコンピュータの構成例を示すブロック図である。
【図４】図２のＣＰＵで実行されるソフトウェアの機能的構成例を示すブロック図である。
【図５】許可データの例を示す図である。
【図６】図３のＣＰＵで実行されるソフトウェアの機能的構成例を示すブロック図である。
【図７】パーソナルコンピュータの処理を説明するフローチャートである。
【図８】パーソナルコンピュータの処理を説明するフローチャートである。
【図９】管理テーブル１０６に記録されるデータの例を示す図である。
【図１０】許可データ更新処理を説明するフローチャートである。
【図１１】ＷＥＢサーバの処理を説明するフローチャートである。
【図１２】ソフトウェア動作管理サーバの処理を説明するフローチャートである。
【図１３】許可データ付与処理を説明するフローチャートである。
【図１４】利用状況データベースの例を示す図である。
【図１５】オフラインアプリケーション利用処理を説明するフローチャートである。
【図１６】利用条件判定処理を説明するフローチャートである。
【符号の説明】
【０１６８】
１  ソフトウェア動作管理サーバ，
２  ＷＥＢサーバ，
３  パーソナルコンピュータ，
４  インターネット，
１１  ＣＰＵ，
２２  光ディスク，
３１  ＣＰＵ，
８１  認証管理部，
８２  利用状況管理部，
８３  利用状況データベース，
８４  許可データ生成部，
８５  許可データ送信部，
１０１  ライセンス管理部，
１０２  アプリケーション起動制御部，
１０３  利用条件判定部，
１０４  利用状況モニタ部，
１０５  利用状況送信部
【図１】
2006031211.tif 000003
【図２】
2006031211.tif 000004
【図３】
2006031211.tif 000005
【図４】
2006031211.tif 000006
【図５】
2006031211.tif 000007
【図６】
2006031211.tif 000008
【図７】
2006031211.tif 000009
【図８】
2006031211.tif 000010
【図９】
2006031211.tif 000011
【図１０】
2006031211.tif 000012
【図１１】
2006031211.tif 000013
【図１２】
2006031211.tif 000014
【図１３】
2006031211.tif 000015
【図１４】
2006031211.tif 000016
【図１５】
2006031211.tif 000017
【図１６】
2006031211.tif 000018