(57)【特許請求の範囲】
【請求項１】
情報管理装置との通信により、任意の複数のユーザに使用される業務プログラムの実行を許可するライセンスを取得することで前記業務プログラムを実行する情報処理装置であって、
前記業務プログラムの起動が指示された場合、前記情報管理装置との通信により前記ライセンスを取得する第１のライセンス取得手段と、
前記ライセンスが取得できた場合であって、前記業務プログラムの起動の指示に応じて前記業務プログラムが起動された場合に、前記起動された時刻を前記業務プログラムの利用開始時刻として記録する開始時刻記録手段と、
前記情報処理装置において発生したイベントのうち、予め定められた第１のイベントが検知された場合、前記業務プログラムの休止状態を検出する休止状態検出手段と、
前記休止状態が検出された場合、前記情報管理装置との通信により前記ライセンスを返却する第１のライセンス返却手段と、
前記情報処理装置において発生したイベントのうち、前記第１のイベントに対応して定まる第２のイベントが検知された場合、前記業務プログラムの休止状態の解除を検出する休止解除検出手段と、
前記休止状態の解除が検出された場合、前記情報管理装置との通信により前記ライセンスを取得する第２のライセンス取得手段と、
前記業務プログラムの終了が指示された場合、前記情報管理装置との通信により前記ライセンスを返却する第２のライセンス返却手段と、
前記業務プログラムの終了の指示に応じて前記業務プログラムが終了された場合、前記終了された時刻を前記業務プログラムの利用終了時刻として記録する終了時刻記録手段と、
前記利用開始時刻から前記利用終了時刻までの時間から、前記業務プログラムが休止状態であった休止時間を減算することにより、前記業務プログラムによる作業時間を算出する作業時間算出手段と
を備える情報処理装置。
【請求項２】
前記第１のイベントとして、
前記業務プログラムに対するコマンド入力のなかった時間が閾値以上継続したこと、業務プログラムに係る画面が最小化されたこと、業務プログラムが非アクティブとなったこと、または、スクリーンセーバが起動されたことが検知される
請求項１に記載の情報処理装置。
【請求項３】
前記情報管理装置との通信が行えないことにより、前記ライセンスの返却ができなかった場合、前記ライセンスの返却を試みた時刻を返却履歴として記録する返却履歴記録手段をさらに備える
請求項１に記載の情報処理装置。
【請求項４】
前記算出された作業時間、または前記返却履歴を、課金のための情報として前記情報管理装置に送信する
請求項３に記載の情報処理装置。
【請求項５】
情報管理装置との通信により、任意の複数のユーザに使用される業務プログラムの実行を許可するライセンスを取得することで前記業務プログラムを実行する情報処理装置の情報処理方法であって、
第１のライセンス取得手段が、前記業務プログラムの起動が指示された場合、前記情報管理装置との通信により前記ライセンスを取得し、
開始時刻記録手段が、前記ライセンスが取得できた場合であって、前記業務プログラムの起動の指示に応じて前記業務プログラムが起動された場合に、前記起動された時刻を前記業務プログラムの利用開始時刻として記録し、
休止状態検出手段が、前記情報処理装置において発生したイベントのうち、予め定められた第１のイベントが検知された場合、前記業務プログラムの休止状態を検出し、
第１のライセンス返却手段が、前記休止状態が検出された場合、前記情報管理装置との通信により前記ライセンスを返却し、
休止解除検出手段が、前記情報処理装置において発生したイベントのうち、前記第１のイベントに対応して定まる第２のイベントが検知された場合、前記業務プログラムの休止状態の解除を検出し、
第２のライセンス取得手段が、前記休止状態の解除が検出された場合、前記情報管理装置との通信により前記ライセンスを取得し、
第２のライセンス返却手段が、前記業務プログラムの終了が指示された場合、前記情報管理装置との通信により前記ライセンスを返却し、
終了時刻記録手段が、前記業務プログラムの終了の指示に応じて前記業務プログラムが終了された場合、前記終了された時刻を前記業務プログラムの利用終了時刻として記録し、
作業時間算出手段が、前記利用開始時刻から前記利用終了時刻までの時間から、前記業務プログラムが休止状態であった休止時間を減算することにより、前記業務プログラムによる作業時間を算出するステップ
を含む情報処理方法。
【請求項６】
コンピュータを、
情報管理装置との通信により、任意の複数のユーザに使用される業務プログラムの実行を許可するライセンスを取得することで前記業務プログラムを実行する情報処理装置であって、
前記業務プログラムの起動が指示された場合、前記情報管理装置との通信により前記ライセンスを取得する第１のライセンス取得手段と、
前記ライセンスが取得できた場合であって、前記業務プログラムの起動の指示に応じて前記業務プログラムが起動された場合に、前記起動された時刻を前記業務プログラムの利用開始時刻として記録する開始時刻記録手段と、
前記情報処理装置において発生したイベントのうち、予め定められた第１のイベントが検知された場合、前記業務プログラムの休止状態を検出する休止状態検出手段と、
前記休止状態が検出された場合、前記情報管理装置との通信により前記ライセンスを返却する第１のライセンス返却手段と、
前記情報処理装置において発生したイベントのうち、前記第１のイベントに対応して定まる第２のイベントが検知された場合、前記業務プログラムの休止状態の解除を検出する休止解除検出手段と、
前記休止状態の解除が検出された場合、前記情報管理装置との通信により前記ライセンスを取得する第２のライセンス取得手段と、
前記業務プログラムの終了が指示された場合、前記情報管理装置との通信により前記ライセンスを返却する第２のライセンス返却手段と、
前記業務プログラムの終了の指示に応じて前記業務プログラムが終了された場合、前記終了された時刻を前記業務プログラムの利用終了時刻として記録する終了時刻記録手段と、
前記利用開始時刻から前記利用終了時刻までの時間から、前記業務プログラムが休止状態であった休止時間を減算することにより、前記業務プログラムによる作業時間を算出する作業時間算出手段とを備える情報処理装置として機能させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、並びにプログラムに関し、特に、効率よくソフトウェアを利用することができ、かつ、ソフトウェアの利用に対して適切に課金できるようにする情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
例えば、財務分析、利益計画、予算編成、財務予想、業績評価等を行うことができるソフトウェア（いわゆる統合経営情報システム）は、膨大なプログラム量と高度な解析内容を有していることから極めて高価である。このため、例えば、中小企業にとって、統合経営情報システムに係るソフトウェアの導入は困難であり、それに伴う業務の効率化を阻害する大きな要因となっている。
【０００３】
このような問題は、統合経営情報システムに限らず、利用頻度の少ない高額ソフトウェア一般に共通する問題である。これらの高額ソフトウェアの信頼性を落とすことなく、ユーザに低価格で提供でき、さらに、システム開発会社の開発経費の回収を容易にすることができるコンピュータソフトウェアレンタルサービスを提供するための技術が提案されている（例えば、特許文献１参照）。
【０００４】
コンピュータソフトウェアレンタルサービスは、いわゆるＡＳＰ（Application Service Provider）サービスと称されるものである。例えば、中小企業などが、このようなサービスを利用することで、個々のパソコンにアプリケーションソフトウェアを導入しておく必要がなくなるため、インストールやアップグレードにかかる費用や手間が削減され、情報システム部門の負担を大幅に軽減することができる。また、ＡＳＰサービスにおいては、従来は大規模な業務システムが対象であったが、ＣＡＤなど日常的に使われるアプリケーションプログラムなどのソフトウェアについても利用できるようになっている。
【０００５】
特許文献１の技術において、業務プログラムファイルおよび業務データファイルの全てがユーザマシンに格納されている場合、次のような処理が行われる。
【０００６】
まず、ユーザは、ソフトウェアを用いる業務の開始に先立って、自分自身が用いるユーザマシン（例えば、汎用のパーソナルコンピュータなど）を、業務プログラムファイル及び業務データファイルが格納されたハードディスクなどを読み書き可能な状態にセッティングした状態で、通信モデムを介して、ホストマシンとの通信回線を自動ダイヤリングによってオープンし、利用管理センタに設置されたホストマシンを呼び出す。
【０００７】
次にユーザマシンは、ユーザ管理情報を含む利用開始宣言ファイルを、所定の手順に従って、利用管理センタのホストマシンに送信する。利用開始宣言ファイルを受信した利用管理センタのホストマシンは、ユーザ管理情報の妥当性チェックを実行する。ユーザ管理情報の妥当性チェックの結果、その結果に不整合がない場合にはホストマシンから利用許可指令をユーザマシンに送信すると同時に、この時刻を利用開始時刻として記録する。
【０００８】
そして、利用許可指令を受信したユーザマシンは、この利用許可指令に基づいて、ユーザマシン上の業務プログラムファイルの不正利用禁止手段を解除するとともに利用管理センタとの通信回線を遮断したうえ、業務プログラムファイルを用いて所定の業務処理を実行する。なお、業務処理中はユーザマシンとホストマシンとの間の通信回線は遮断されている。
【０００９】
業務が終了した後、ユーザは、通信回線を再度接続し、ホストマシンに対して利用終了宣言ファイルを所定手順に従って送信し、通信回線を遮断する。一方、利用終了宣言ファイルを受信した利用管理センタは、利用終了宣言ファイルを受信した時刻を利用終了時刻として記録し、利用開始時刻と利用終了時刻より業務プログラムファイルの実利用時間をホストマシンによって計算し、実利用時間に基づいてユーザに対する課金金額を算出する。
【００１０】
このように、特許文献１によれば、業務プログラムの利用開始時に通信回線を通じてホストマシンにアクセスし、ホストマシンから受ける利用許可指令によって、ユーザマシン上の業務プログラムの利用が可能となる。そして業務プログラムが利用可能となった後は回線遮断して、ユーザマシンを用いて業務処理を行い、利用終了時に、再度、ホストマシンに対して業務プログラムの利用終了を連絡するという一連の手順を経るものである。
【００１１】
また、特許文献１の方式では、利用開始時刻と利用終了時刻を記録して、業務プログラムの利用時間を計算し、この実利用時間に基づいて課金額が算出される。
【００１２】
同じくコンピュータソフトウェアレンタルサービスを提供するための技術として、例えば、特許文献２のようなものも提案されている。特許文献２に記載の技術では、コマンド実行時間、プログラムの処理により生成されたデータ容量、コマンド実行回数に基づいて課金計算が行われるようになされている。
【００１３】
あるいはまた、コンピュータソフトウェアレンタルサービスの他に、ソフトウェアのネットワークライセンスを用いるものも提案されている（例えば、特許文献３参照）。ネットワークライセンスを用いる場合、予め１個以上のライセンスを購入等により入手しておき、それをライセンス数より多くの利用者で使いまわすことで、実際の従業員数などより少ないライセンス数の購入で済むようにし、費用を削減できることもある。
【００１４】
【特許文献１】特公平７−８９３０５号公報
【特許文献２】特許第３５３１８０６号公報
【特許文献３】特許第３５０６１７６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、特許文献１の技術では、例えば、休憩等により席を外す等により作業が中断される場合があるが、その間も課金されてしまうことになる。
【００１６】
課金を避けるためには、例えば、業務プログラムの利用終了を行う必要があるが、作業途中等で業務プログラムの利用終了を行うことができない場合や、通信回線に接続できない場所に移動して利用している場合も考えられ、席を外す都度、いちいち業務プログラムの利用終了を行うのは現実的な対処とはならない。
【００１７】
さらに、休憩等により席を外す等により作業が中断される場合、ライセンスは利用し続けることになるために他の利用者が使えるライセンス数が制限され、使えない場合が生じてしまう。
【００１８】
また、従来の技術では、例えば、業務プログラムの画面が最小化されていたり、スクリーンセーバが起動している場合なども、ライセンスが返却されず課金が行われてしまうことになるが、このような業務プログラムの休止状態において、都度、ライセンスを返却するなどすれば、さらなるコスト削減の余地ができる。
【００１９】
本発明はこのような状況に鑑みてなされたものであり、効率よくソフトウェアを利用することができ、かつ、ソフトウェアの利用に対して適切に課金できるようにするものである。
【課題を解決するための手段】
【００２０】
本発明の一側面は、情報管理装置との通信により、任意の複数のユーザに使用される業務プログラムの実行を許可するライセンスを取得することで前記業務プログラムを実行する情報処理装置であって、前記業務プログラムの起動が指示された場合、前記情報管理装置との通信により前記ライセンスを取得する第１のライセンス取得手段と、前記ライセンスが取得できた場合であって、前記業務プログラムの起動の指示に応じて前記業務プログラムが起動された場合に、前記起動された時刻を前記業務プログラムの利用開始時刻として記録する開始時刻記録手段と、前記情報処理装置において発生したイベントのうち、予め定められた第１のイベントが検知された場合、前記業務プログラムの休止状態を検出する休止状態検出手段と、前記休止状態が検出された場合、前記情報管理装置との通信により前記ライセンスを返却する第１のライセンス返却手段と、前記情報処理装置において発生したイベントのうち、前記第１のイベントに対応して定まる第２のイベントが検知された場合、前記業務プログラムの休止状態の解除を検出する休止解除検出手段と、前記休止状態の解除が検出された場合、前記情報管理装置との通信により前記ライセンスを取得する第２のライセンス取得手段と、前記業務プログラムの終了が指示された場合、前記情報管理装置との通信により前記ライセンスを返却する第２のライセンス返却手段と、前記業務プログラムの終了の指示に応じて前記業務プログラムが終了された場合、前記終了された時刻を前記業務プログラムの利用終了時刻として記録する終了時刻記録手段と、前記利用開始時刻から前記利用終了時刻までの時間から、前記業務プログラムが休止状態であった休止時間を減算することにより、前記業務プログラムによる作業時間を算出する作業時間算出手段とを備える情報処理装置である。
【００２１】
前記第１のイベントとして、前記業務プログラムに対するコマンド入力のなかった時間が閾値以上継続したこと、業務プログラムに係る画面が最小化されたこと、業務プログラムが非アクティブとなったこと、または、スクリーンセーバが起動されたことが検知されるようにすることができる。
【００２２】
前記情報管理装置との通信が行えないことにより、前記ライセンスの返却ができなかった場合、前記ライセンスの返却を試みた時刻を返却履歴として記録する返却履歴記録手段をさらに備えるようにすることができる。
【００２３】
前記算出された作業時間、または前記返却履歴を、課金のための情報として前記情報管理装置に送信するようにすることができる。
【００２４】
本発明の一側面は、情報管理装置との通信により、任意の複数のユーザに使用される業務プログラムの実行を許可するライセンスを取得することで前記業務プログラムを実行する情報処理装置の情報処理方法であって、第１のライセンス取得手段が、前記業務プログラムの起動が指示された場合、前記情報管理装置との通信により前記ライセンスを取得し、開始時刻記録手段が、前記ライセンスが取得できた場合であって、前記業務プログラムの起動の指示に応じて前記業務プログラムが起動された場合に、前記起動された時刻を前記業務プログラムの利用開始時刻として記録し、休止状態検出手段が、前記情報処理装置において発生したイベントのうち、予め定められた第１のイベントが検知された場合、前記業務プログラムの休止状態を検出し、第１のライセンス返却手段が、前記休止状態が検出された場合、前記情報管理装置との通信により前記ライセンスを返却し、休止解除検出手段が、前記情報処理装置において発生したイベントのうち、前記第１のイベントに対応して定まる第２のイベントが検知された場合、前記業務プログラムの休止状態の解除を検出し、第２のライセンス取得手段が、前記休止状態の解除が検出された場合、前記情報管理装置との通信により前記ライセンスを取得し、第２のライセンス返却手段が、前記業務プログラムの終了が指示された場合、前記情報管理装置との通信により前記ライセンスを返却し、終了時刻記録手段が、前記業務プログラムの終了の指示に応じて前記業務プログラムが終了された場合、前記終了された時刻を前記業務プログラムの利用終了時刻として記録し、作業時間算出手段が、前記利用開始時刻から前記利用終了時刻までの時間から、前記業務プログラムが休止状態であった休止時間を減算することにより、前記業務プログラムによる作業時間を算出するステップを含む情報処理方法である。
【００２５】
本発明の一側面は、コンピュータを、任意の複数のユーザに使用される情報管理装置との通信により、業務プログラムの実行を許可するライセンスを取得することで前記業務プログラムを実行する情報処理装置であって、前記業務プログラムの起動が指示された場合、前記情報管理装置との通信により前記ライセンスを取得する第１のライセンス取得手段と、前記ライセンスが取得できた場合であって、前記業務プログラムの起動の指示に応じて前記業務プログラムが起動された場合に、前記起動された時刻を前記業務プログラムの利用開始時刻として記録する開始時刻記録手段と、前記情報処理装置において発生したイベントのうち、予め定められた第１のイベントが検知された場合、前記業務プログラムの休止状態を検出する休止状態検出手段と、前記休止状態が検出された場合、前記情報管理装置との通信により前記ライセンスを返却する第１のライセンス返却手段と、前記情報処理装置において発生したイベントのうち、前記第１のイベントに対応して定まる第２のイベントが検知された場合、前記業務プログラムの休止状態の解除を検出する休止解除検出手段と、前記休止状態の解除が検出された場合、前記情報管理装置との通信により前記ライセンスを取得する第２のライセンス取得手段と、前記業務プログラムの終了が指示された場合、前記情報管理装置との通信により前記ライセンスを返却する第２のライセンス返却手段と、前記業務プログラムの終了の指示に応じて前記業務プログラムが終了された場合、前記終了された時刻を前記業務プログラムの利用終了時刻として記録する終了時刻記録手段と、前記利用開始時刻から前記利用終了時刻までの時間から、前記業務プログラムが休止状態であった休止時間を減算することにより、前記業務プログラムによる作業時間を算出する作業時間算出手段とを備える情報処理装置として機能させるプログラムである。
【００２６】
本発明の一側面においては、任意の複数のユーザに使用される前記業務プログラムの起動が指示された場合、前記情報管理装置との通信により前記ライセンスが取得され、前記ライセンスが取得できた場合であって、前記業務プログラムの起動の指示に応じて前記業務プログラムが起動された場合に、前記起動された時刻が前記業務プログラムの利用開始時刻として記録され、前記情報処理装置において発生したイベントのうち、予め定められた第１のイベントが検知された場合、前記業務プログラムの休止状態が検出され、前記休止状態が検出された場合、前記情報管理装置との通信により前記ライセンスが返却され、前記情報処理装置において発生したイベントのうち、前記第１のイベントに対応して定まる第２のイベントが検知された場合、前記業務プログラムの休止状態の解除が検出され、前記休止状態の解除が検出された場合、前記情報管理装置との通信により前記ライセンスが取得され、前記業務プログラムの終了が指示された場合、前記情報管理装置との通信により前記ライセンスが返却され、前記業務プログラムの終了の指示に応じて前記業務プログラムが終了された場合、前記終了された時刻が前記業務プログラムの利用終了時刻として記録され、前記利用開始時刻から前記利用終了時刻までの時間から、前記業務プログラムが休止状態であった休止時間を減算することにより、前記業務プログラムによる作業時間が算出される。
【発明の効果】
【００２７】
本発明によれば、効率よくソフトウェアを利用することができ、かつ、ソフトウェアの利用に対して適切に課金できる。
【図面の簡単な説明】
【００２８】
【図１】本発明の一実施の形態に係るコンピュータソフトウェアレンタルサービスシステム１０の構成例を示すブロック図である。
【図２】業務プログラム実行処理を説明するフローチャートである。
【図３】休止状態検出処理を説明するフローチャートである。
【図４】業務プログラム実行処理により、業務プログラムの休止および解除が検出される例を説明する図である。
【図５】図４に示される作業を行った結果、算出される作業時間および休止時間を説明する図である。
【図６】パーソナルコンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００２９】
以下、図面を参照して、本発明の実施の形態について説明する。図１は、本発明の一実施の形態に係るコンピュータソフトウェアレンタルサービスシステム１０の構成例を示すブロック図である。
【００３０】
同図の例では、ライセンスマネージャ２１とパーソナルコンピュータ２２がインターネット２３を介して相互に接続されている。コンピュータソフトウェアレンタルサービスシステム１０においては、例えば、サーバなどとして構成されるライセンスマネージャ２１により、パーソナルコンピュータ２２で利用するソフトウェアに係るライセンスの管理、および課金が行われるようになされている。
【００３１】
コンピュータソフトウェアレンタルサービスシステム１０においては、パーソナルコンピュータ２２を所有する企業などにより、事前にライセンスが購入される。なお、図１の例では、パーソナルコンピュータ２２のみが記載されているが、実際には、もっと多くのコンピュータが、インターネット２３に接続されているものとする。
【００３２】
ライセンスを購入した企業は、そのライセンスの数と同数のコンピュータにより同時に業務プログラムを実行することができる。ここでは、パーソナルコンピュータ２２において実行されるプログラムなどであって、ライセンスマネージャ２１によりライセンスの管理、および課金が行われるソフトウェアを業務プログラムと称することにする。
【００３３】
例えば、パーソナルコンピュータ２２を保有する企業甲が、ライセンスマネージャ２１を管理する企業乙から、業務プログラム（例えば、ＣＡＤ）を有効期限が１年のライセンスを１００本購入したとする。この場合、甲は、１年間に渡りＣＡＤを甲の社内の任意のコンピュータにおいて利用することが可能となり、この際、最大で１００台のコンピュータにおいて同時にＣＡＤを利用することが可能となる。
【００３４】
また、例えば、１年のうち甲の業務の繁忙期となる１週間の期間において同時に１０５台のコンピュータでＣＡＤを利用する必要がある場合、大口のユーザである甲は、５本のライセンスを乙から日割りで購入することも可能となるようになされている。
【００３５】
甲が乙から購入したライセンスは、ライセンスマネージャ２１により管理されており、甲の社内の１のコンピュータにおいてＣＡＤを利用する都度、インターネット２３を介してライセンスマネージャ２１から１のライセンスを取得する必要がある。従って、あるコンピュータがＣＡＤの利用を終了などした際には、都度、ライセンスマネージャ２１にライセンスを返却しておくようにすることで、効率的に業務プログラムを利用することができるのである。
【００３６】
また、図１の例において、パーソナルコンピュータ２２は、ライセンス管理部４１、処理実行部４２、記憶部４３、およびディスプレイ４４により構成されている。
【００３７】
処理実行部４２は、例えば、ＣＰＵ、メモリなどを有する構成とされ、メモリにロードされた業務プログラム（例えば、ＣＡＤ）などを実行することで、パーソナルコンピュータ２２によるＣＡＤの機能を実現する。
【００３８】
処理実行部４２は、ライセンス管理部４１から供給されるライセンスに基づいて業務プログラムを実行するようになされている。ライセンスは、例えば、暗号化された業務プログラムの一部を復号するための鍵などとして構成され、適正なライセンスがない場合、処理実行部４２は、業務プログラムを実行できないようになされている。
【００３９】
処理実行部４２において実行された業務プログラムにより生成されたデータ（例えば、ＣＡＤの図面データ）などは、記憶部４３の作業データ６１として記憶されるようになされている。
【００４０】
記憶部４３は、例えば、ＨＤＤとして構成され、処理実行部４２において実行されたプログラムに係る処理結果のデータなどが、必要に応じて記憶される。
【００４１】
ライセンス管理部４１は、処理実行部４２において実行された業務プログラムなどとして構成されるソフトウェアであって、ライセンスマネージャ２１により管理されるソフトウェアのライセンスの管理および課金に必要となる情報を取得し、蓄積するようになされている。ライセンス管理部４１は、実際には、処理実行部４２において実行されるプログラムなどのソフトウェアにより実現される仮想的な機能ブロックである。
【００４２】
ライセンス管理部４１は、ライセンスマネージャ２１との通信を行うことにより、ライセンスを取得するようになされている。また、ライセンス管理部４１は、ライセンスマネージャ２１との通信を行うことにより、ライセンスを返却するようになされている。
【００４３】
ライセンス管理部４１によりライセンスが取得された場合、パーソナルコンピュータ２２の処理実行部４２において業務プログラムを実行することが可能となる。ライセンス管理部４１によりライセンスが返却された場合、パーソナルコンピュータ２２の処理実行部４２において業務プログラムを実行することができない。
【００４４】
パーソナルコンピュータ２２のユーザは、処理実行部４２においてＣＡＤのソフトウェアとして構成されるプログラムを実行させ、ディスプレイ４４に表示された画像を参照しながら図面の作成などを行う。この際、ライセンス管理部４１により、後述のようにライセンスの取得または返却、各種のタスクなどの実行状況、コマンド入力などに係る情報が生成されるようになされている。
【００４５】
ライセンス管理部４１のライセンス履歴記録部５１は、ライセンスマネージャ２１との通信を行い、ライセンスの取得または返却が行われた時刻を記録する。これらの情報は、記憶部４３のライセンス管理用履歴データ６２として記憶される。
【００４６】
なお、ライセンスの返却の際は、ライセンスの取得と同様にインターネット２３を介してライセンスマネージャ２１と通信を行う必要があるが、例えば、ユーザが業務プログラムを実行させて作業を行いつつ、パーソナルコンピュータ２２を移動させるなどして、インターネットへの接続ができなくなっていることもある。このような場合、ライセンス履歴記録部５１は、記憶部４３のライセンス管理用履歴データ６２に、インターネット２３への接続に失敗した時刻、すなわちライセンスを返却しようと試みた時刻を記録する。
【００４７】
上述したように、ライセンスを購入した企業は、そのライセンスの数と同数のコンピュータにより同時に業務プログラムを実行することができる。一方で、例えば、パーソナルコンピュータ２２を有する企業の繁忙期において、業務プログラムを利用するコンピュータの数が一時的に増加するなどした場合、事前に購入したライセンスの数を超えてライセンスを利用する場合がある。この場合、上述したように、事前に購入したライセンスの数を超えて取得されたライセンスに対しては、別途ライセンス料が追加（例えば、日割りで）で課金される。
【００４８】
しかし、上述のように、ライセンスの返却を試みた時刻が記録されることによりパーソナルコンピュータ２２でライセンスが使用されていなかった時間が特定できれば、特定された時間に応じて、追加で課金されるべきライセンス料が相殺されるようになされている。
【００４９】
このため、ライセンス履歴記録部５１は、インターネットに接続できない場合、ライセンスの返却を試みた時刻を記録するようになされている。
【００５０】
作業履歴記録部５２は、例えば、業務プログラムが利用されているかまたは利用が休止されているかを検出するために必要となる情報であって、パーソナルコンピュータ２２において実行される各種のタスクなどによって発生するイベントに係る情報を記録するようになされている。
【００５１】
作業履歴記録部５２は、例えば、処理実行部４２により業務プログラムの実行が開始された時刻および終了された時刻、業務プログラムに対するコマンド入力のあった時刻、業務プログラムに係る画面が最小化された時刻および最小化が解除された時刻などを記録する。また、作業履歴記録部５２は、スクリーンセーバの起動が開始された時刻およびスクリーンセーバの起動が終了された時刻、ディスプレイ４４において業務プログラムとは異なる他のプログラムの画面により業務プログラムの画面が隠されていた時間などを記録する。
【００５２】
さらに、作業履歴記録部５２は、例えば、業務プログラムの画面上に設けられたＧＵＩのボタンであって、業務プログラムの利用を休止して、ライセンスを返却するためのポーズボタンが押下された時刻を記録するようになされている。
【００５３】
これらの情報は、記憶部４３のライセンス管理用履歴データ６２として記憶される。
【００５４】
休止状態検出部５４は、作業履歴記録部５２により記録された情報に基づいて、業務プログラムの利用が休止されていた状態（休止状態と称する）を検出する。
【００５５】
例えば、業務プログラムに対するコマンド入力のなかった時間が閾値（例えば、５分）以上継続した場合、業務プログラムの利用が休止されたと判定される。また、業務プログラムに係る画面が最小化された場合、業務プログラムの利用が休止されたと判定される。さらに、スクリーンセーバが起動された場合、業務プログラムの利用が休止されたと判定される。
【００５６】
あるいはまた、ディスプレイ４４において業務プログラムとは異なる他のプログラムの画面により業務プログラムの画面が隠された場合、業務プログラムの利用が休止されたと判定される。なお、業務プログラムの画面が隠されたか否かを判定する代わりに業務プログラムがアクティブであるか否かが判定されるようにしてもよい。さらに、業務プログラムの画面上に設けられたポーズボタンが押下された場合、業務プログラムの利用が休止されたと判定される。
【００５７】
休止状態検出部５４は、業務プログラムの実行が開始されてから終了されるまでの各時刻において、上述のような判定を行って、業務プログラムが休止状態である時間帯を検出する。
【００５８】
また、休止状態検出部５４は、休止状態であると判定された場合、ライセンス履歴記録部５１を介して必要に応じてライセンスを返却させるようになされている。なお、ライセンスを返却した後、再度業務プログラムを実行するためには、再度ライセンスを取得する必要がある。
【００５９】
作業時間算出部５３は、業務プログラムの実行が開始されてから終了されるまでの時間のうち、休止状態であった時間を減算することにより、パーソナルコンピュータ２２のユーザが業務プログラムを利用して作業を行った時間を、作業時間として算出する。
【００６０】
作業時間算出部５３により算出された作業時間は、インターネット２３を介してライセンスマネージャ２１に送信され、パーソナルコンピュータ２２における業務プログラムの利用に対する課金に用いられる。
【００６１】
次に、図２のフローチャートを参照して、パーソナルコンピュータ２２による業務プログラム実行処理の例について説明する。
【００６２】
ステップＳ２１において、ライセンス履歴記録部５１は、業務プログラムの起動が指令されたか否かを判定し、業務プログラムの起動が指令されたと判定されるまで待機する。
【００６３】
ステップＳ２２において、ライセンス履歴記録部５１は、インターネットに接続してライセンスマネージャ２１との通信を行い、業務プログラムを実行するためのライセンスを取得する。
【００６４】
ステップＳ２３において、ライセンス履歴記録部５１は、ステップＳ２２の処理の結果、正常にライセンスを取得できたか否かを判定する。例えば、事前に購入したライセンスが既に全部取得されており、ライセンスを取得できなかった場合、処理は、ステップＳ３４に進みエラー処理が実行される。この際、例えば、ライセンスを取得できなかった旨がディスプレイ４４に表示される。
【００６５】
ステップＳ２３において、正常にライセンスを取得できたと判定された場合、処理は、ステップＳ２４に進む。ステップＳ２４において、処理実行部４２は、ライセンス管理部４１からライセンスの供給を受けて業務プログラムを起動する。
【００６６】
ステップＳ２５において、作業履歴記録部５２は、業務プログラムを起動した時刻を記録する。
【００６７】
ステップＳ２６において、休止状態検出部５４は、図３を参照して後述する休止状態検出処理を実行する。これにより、業務プログラムの実行が開始されてから終了されるまでの各時刻において、業務プログラムが休止状態である時間帯が検出される。
【００６８】
ステップＳ２７において、ライセンス履歴記録部５１は、業務プログラムの終了が指令されたか否かを判定し、まだ業務プログラムの終了が指令されていないと判定された場合、処理は、ステップＳ２６に戻る。
【００６９】
ステップＳ２７において、業務プログラムの終了が指令されたと判定された場合、処理は、ステップＳ２８に進み、ライセンス履歴記録部５１は、インターネットに接続してライセンスマネージャ２１との通信を行い、ステップＳ２２などの処理で取得したライセンスを返却する。
【００７０】
ステップＳ２９において、ライセンス履歴記録部５１は、ステップＳ２７処理の際に、インターネットに接続できたか否かを判定する。例えば、ユーザが業務プログラムを実行させて作業を行いつつ、パーソナルコンピュータ２２を移動させるなどして、インターネットへの接続ができなくなった場合、ステップＳ２９では、接続できなかったと判定される。
【００７１】
ステップＳ２９において、接続できなかったと判定された場合、処理は、ステップＳ３３に進み、ライセンス履歴記録部５１は、記憶部４３のライセンス管理用履歴データ６２に、ライセンスの返却を試みた時刻を記録する。
【００７２】
この場合、実際にライセンスは返却されないものの、ライセンスマネージャ２１において課金を行う際に、パーソナルコンピュータ２２でライセンスが使用されていなかった時間が考慮されるように、ライセンスの返却を試みた時刻が記録されるのである。
【００７３】
ステップＳ２９において、接続できたと判定された場合、または、ステップＳ３３の処理の後、処理は、ステップＳ３０に進み、処理実行部４２は、業務プログラムを終了する。
【００７４】
ステップＳ３１において、作業履歴記録部５２は、業務プログラムを終了した時刻を記録する。
【００７５】
ステップＳ３２において、作業時間算出部５３は、業務プログラムの起動された時刻（利用開始時刻）から業務プログラムの終了された時刻（利用終了時刻）までの時間から、業務プログラムが休止状態であった時間（休止時間）を減算し、作業時間として算出する。なお、作業時間の算出の詳細については後述する。
【００７６】
このようにして、業務プログラム実行処理が実行される。
【００７７】
次に、図３のフローチャートを参照して、図２のステップＳ２６の休止状態検出処理の詳細な例について説明する。
【００７８】
ステップＳ５１において、休止状態検出部５４は、休止と判定すべきイベントを検知したか否かを判定する。このとき、休止状態検出部５４は、作業履歴記録部５２により記録されたパーソナルコンピュータ２２において実行される各種のタスクなどによって発生するイベントのうち、休止と判定すべきイベントを検知する。
【００７９】
休止と判定すべきイベントとしては、例えば、業務プログラムに対するコマンド入力のなかった時間が閾値（例えば、５分）以上継続したこと、業務プログラムに係る画面が最小化されたこと、スクリーンセーバが起動されたことなどが検知される。また、業務プログラム以外のプログラムがアクティブとなり、業務プログラムが非アクティブとなったこと、業務プログラムの画面上に設けられたポーズボタンが押下されたことなどが検知される。
【００８０】
ステップＳ５１において、休止と判定すべきイベントを検知したと判定された場合、処理は、ステップＳ５２に進む。
【００８１】
ステップＳ５２において、休止状態検出部５４は、ステップＳ５１で検知されたと判定されたイベントの発生時刻において業務プログラムは、休止状態であったとものとして、休止状態の開始時刻を記録する。
【００８２】
ステップＳ５３において、ライセンス履歴記録部５１は、インターネットに接続してライセンスマネージャ２１との通信を行い、ステップＳ２２などの処理で取得したライセンスを返却する。
【００８３】
ステップＳ５４において、ライセンス履歴記録部５１は、ステップＳ５３処理の際に、インターネットに接続できたか否かを判定する。例えば、ユーザが業務プログラムを実行させて作業を行いつつ、パーソナルコンピュータ２２を移動させるなどして、インターネットへの接続ができなくなった場合、ステップＳ５４では、接続できなかったと判定される。
【００８４】
ステップＳ５４において、接続できなかったと判定された場合、処理は、ステップＳ５５に進み、ライセンス履歴記録部５１は、ライセンスの返却を試みた時刻を記録する。
【００８５】
この場合、実際にライセンスは返却されないものの、ライセンスマネージャ２１において課金を行う際に、パーソナルコンピュータ２２でライセンスが使用されていなかった時間が考慮されるように、ライセンスの返却を試みた時刻が記録されるのである。
【００８６】
ステップＳ５６において、休止状態検出部５４は、休止を解除すべきイベントを検知したか否かを判定する。このとき、休止状態検出部５４は、作業履歴記録部５２により記録されたパーソナルコンピュータ２２において実行される各種のタスクなどによって発生するイベントのうち、休止を解除すべきイベントを検知する。
【００８７】
休止を解除すべきイベントとしては、例えば、業務プログラムに対するコマンド入力のなかった時間が閾値（例えば、５分）以上継続した後、コマンド入力があったこと、業務プログラムに係る画面の最小化が解除されたこと、スクリーンセーバの起動が終了されたことなどが検知される。また、業務プログラムがアクティブとなったこと、業務プログラムの画面上に設けられたポーズボタンが再度押下されたことなどが検知される。
【００８８】
ステップＳ５７において、ライセンス履歴記録部５１は、インターネットに接続してライセンスマネージャ２１との通信を行い、ライセンスを取得する。
【００８９】
ステップＳ５８において、ライセンス履歴記録部５１は、ステップＳ５７の処理の際に、インターネットに接続できたか否かを判定する。例えば、ユーザが業務プログラムを実行させて作業を行いつつ、パーソナルコンピュータ２２を移動させるなどして、インターネットへの接続ができなくなった場合、ステップＳ５８では、接続できなかったと判定される。
【００９０】
ステップＳ５８において、接続できなかったと判定された場合、処理は、ステップＳ６０に進みエラー処理が実行される。この際、例えば、ライセンスを取得できなかった旨がディスプレイ４４に表示される。
【００９１】
ステップＳ５８において、接続できたと判定された場合、処理は、ステップＳ５９に進む。
【００９２】
ステップＳ５９において、休止状態検出部５４は、ステップＳ５６で検知されたと判定されたイベントの発生時刻において業務プログラムは、休止が解除されたものとして、休止状態の終了時刻を記録する。
【００９３】
これにより、業務プログラムに対するコマンド入力の受付などが許可され、パーソナルコンピュータ２２のユーザは、例えば、ＣＡＤによる図面の作成などの作業を再び行うことができる。
【００９４】
このようにして休止状態検出処理が実行される。
【００９５】
図４は、上述した業務プログラム実行処理および休止状態検出処理により、業務プログラムの休止および解除が検出される例を説明する図である。ここでは、パーソナルコンピュータ２２のユーザが、ＣＡＤにより図面の作成などの作業を６０分間行う場合の例について説明する。
【００９６】
同図の図中左側の欄には、パーソナルコンピュータ２２のユーザによる作業の内容が記載され、図中右側の欄には、作業履歴記録部５２または休止状態検出部５４により記録される情報が記載されている。
【００９７】
最初に、ユーザはＣＡＤ（業務プログラム）を起動する。すると、作業履歴記録部５２がＣＡＤの利用開始時刻を記録する。また、ライセンスの取得も行われる。
【００９８】
その５分後、ユーザは、メールをチェックするため、パーソナルコンピュータ２２のディスプレイ４４の画面をメール送受信の画面に切り替える（メール送受信作業に切り替え）。これにより、ＣＡＤのプログラムは非アクティブとなり、メール送受信のプログラムがアクティブとなるので、休止状態検出部５４は、ＣＡＤの休止を検知する。このとき、休止状態の開始時刻が記録され、ライセンスの返却が行われる。
【００９９】
その１０分後、ユーザは、ＣＡＤによる図面の作成作業を再開する。これにより、ＣＡＤのプログラムはアクティブとなり、メール送受信のプログラムが非アクティブとなるので、休止状態検出部５４は、ＣＡＤの休止解除を検知する。このとき、休止状態の終了時刻が記録され、ライセンスの取得が行われる。
【０１００】
ＣＡＤの休止が検出（検知）されてから、休止解除が検出（検知）されるまでの時間が休止時間とされる。ここで、メール送受信作業への切り替えからＣＡＤによる図面の作成作業の再開までの１０分間が第１回目の休止時間とされることになる。
【０１０１】
その５分後、ユーザは離席する。この場合、休止状態検出部５４などによる検知は行われない。
【０１０２】
その５分後、スクリーンセーバが起動する。すると、休止状態検出部５４は、ＣＡＤの休止を検知する。このとき、休止状態の開始時刻が記録され、ライセンスの返却が行われる。
【０１０３】
その１０分後、ユーザは、ＣＡＤによる図面の作成作業を再開する。この際、スクリーンセーバの起動が終了されるので、休止状態検出部５４は、ＣＡＤの休止解除を検知する。このとき、休止状態の終了時刻が記録され、ライセンスの取得が行われる。
【０１０４】
ここで、スクリーンセーバの起動からＣＡＤによる図面の作成作業の再開までの１０分間が第２回目の休止時間とされることになる。
【０１０５】
その１５分後、ユーザは、ポーズボタンを押下して離席する。すると、休止状態検出部５４は、ＣＡＤの休止を検知する。このとき、休止状態の開始時刻が記録され、ライセンスの返却が行われる。
【０１０６】
その５分後、ユーザは、ＣＡＤによる図面の作成作業を再開する。この際、ポーズボタンが再度押下されるので、休止状態検出部５４は、ＣＡＤの休止解除を検知する。なお、ポーズボタンが再度押下しなくても、ＣＡＤに対するコマンド入力が検知されることにより、ＣＡＤの休止解除が検知されるようにしてもよい。このとき、休止状態の終了時刻が記録され、ライセンスの取得が行われる。
【０１０７】
ここで、ポーズボタンの押下からＣＡＤによる図面の作成作業の再開までの５分間が第３回目の休止時間とされることになる。
【０１０８】
その５分後、ユーザはＣＡＤを終了する。作業履歴記録部５２がＣＡＤの利用終了時刻を記録する。また、ライセンスの返却も行われる。
【０１０９】
図５は、図４に示される作業を行った結果、作業時間算出部５３により算出される作業時間および休止状態検出部５４により検出される休止時間を説明する図である。
【０１１０】
同図に示される通り、作業時間は３５分と算出され、休止時間は２５分と算出されることになる。
【０１１１】
すなわち、ＣＡＤの利用開始時刻から利用終了時刻までの６０分から、休止時間を減算した時間が作業時間として算出される。いまの場合、休止時間は、第１回目の休止時間１０分と、第２回目の休止時間１０分と、第３回目の休止時間５分であるから合計２５分となる。そうすると、作業時間は３５（＝６０−２５）分となる。
【０１１２】
このようにして算出された作業時間に対して課金を行うようにすれば、ソフトウェアの利用に対してより適切に課金できるようになる。
【０１１３】
すなわち、従来の技術では、例えば、休憩等により席を外す等により作業が中断される場合があるが、その間も課金されてしまう。課金を避けるためには、例えば、業務プログラムの利用終了を行う必要があるが、作業途中等で業務プログラムの利用終了を行うことができない場合や、通信回線に接続できない場所に移動して利用している場合も考えられ、席を外す都度、いちいち業務プログラムの利用終了を行うのは現実的な対処とはならない。
【０１１４】
これに対して、本発明では、図４と図５を参照して上述したように、作業時間が算出されるので、作業が中断されている間は課金されないようにすることができる。
【０１１５】
また、従来の技術では、休憩等により席を外す等により作業が中断される場合、ライセンスは利用し続けることになるために他の利用者が使えるライセンス数が制限され、使えない場合が生じてしまう。
【０１１６】
これに対して、本発明では、図３、図４を参照して上述したように、作業が中断される都度、自動的にライセンスが返却されるようにしたので、効率よくソフトウェアを利用することができる。
【０１１７】
以上においては、本発明に係る業務プログラムをＣＡＤとする例について説明したが、勿論、他のプログラムが業務プログラムとされるようにしてもよい。
【０１１８】
なお、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータにネットワークや記録媒体からインストールされる。また、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば図６に示されるような汎用のパーソナルコンピュータ７００などに、ネットワークや記録媒体からインストールされる。
【０１１９】
図６において、ＣＰＵ（Central Processing Unit）７０１は、ＲＯＭ（Read Only Memory）７０２に記憶されているプログラム、または記憶部７０８からＲＡＭ（Random Access Memory）７０３にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ７０３にはまた、ＣＰＵ７０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１２０】
ＣＰＵ７０１、ＲＯＭ７０２、およびＲＡＭ７０３は、バス７０４を介して相互に接続されている。このバス７０４にはまた、入出力インタフェース７０５も接続されている。
【０１２１】
入出力インタフェース７０５には、キーボード、マウスなどよりなる入力部７０６、ＬＣＤ(Liquid Crystal display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部７０７が接続されている。また、入出力インタフェース７０５には、ハードディスクなどより構成される記憶部７０８、モデム、LANカードなどのネットワークインタフェースカードなどより構成される通信部７０９が接続されている。通信部７０９は、インターネットを含むネットワークを介しての通信処理を行う。
【０１２２】
入出力インタフェース７０５にはまた、必要に応じてドライブ７１０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア７１１が適宜装着されている。そして、それらのリムーバブルメディアから読み出されたコンピュータプログラムが、必要に応じて記憶部７０８にインストールされる。
【０１２３】
上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、インターネットなどのネットワークや、リムーバブルメディア７１１などからなる記録媒体からインストールされる。
【０１２４】
なお、この記録媒体は、図６に示される、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フロッピディスク（登録商標）を含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（MD（Mini-Disk）（登録商標）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア７１１により構成されるものだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているＲＯＭ７０２や、記憶部７０８に含まれるハードディスクなどで構成されるものも含む。
【０１２５】
なお、本明細書において上述した一連の処理は、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１２６】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１２７】
１０  コンピュータソフトウェアレンタルサービスシステム，
２１  ライセンスマネージャ，
２２  パーソナルコンピュータ，
２３  インターネット，
４１  ライセンス管理部，
４２  処理実行部，
４３  記憶部，
４４  ディスプレイ，
５１  ライセンス記録部，
５２  作業履歴記録部，
５３  作業時間算出部，
５４  休止状態検出部
【図１】
0005686239.tif 000002
【図２】
0005686239.tif 000003
【図３】
0005686239.tif 000004
【図４】
0005686239.tif 000005
【図５】
0005686239.tif 000006
【図６】
0005686239.tif 000007