(57)【要約】  本発明は、コンピュータシステム上でソフトウェア・アプリケーションの実行を制御する方法であって、上記アプリケーションのための所定のライセンスに基づいて、どのユーザが上記アプリケーションを実行することを許可されているかについての情報を含むライセンスマップを生成するステップと、上記コンピュータシステム上にライセンスクライアントを設けるステップと、上記ライセンスマップを上記ライセンスクライアントに配信するライセンスサーバを設けるステップとを備え、ユーザが上記アプリケーションの実行を要求しているとき、上記ライセンスクライアントは、現在のライセンスマップに基づいて、上記ユーザが前記アプリケーションを実行することが許可されているか否かを決定する、方法に関する。
2013526742.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステム上でソフトウェア・アプリケーションの実行を制御する方法であって、前記アプリケーションのための所与のライセンスに基づいて、どのユーザが前記アプリケーションを実行することを許可されているかについての情報を含むライセンスマップを生成するステップと、前記コンピュータシステム上にライセンスクライアントを設けるステップと、前記ライセンスマップを前記ライセンスクライアントに配信するライセンスサーバを設けるステップとを備え、ユーザが前記アプリケーションの実行を要求しているとき、前記ライセンスクライアントは、現在のライセンスマップに基づいて、前記ユーザが前記アプリケーションを実行することが許可されているか否かを決定する、方法。
【請求項２】
前記コンピュータシステムは、少なくとも２台の別個のサービスノードを有している分散型コンピュータシステムであり、ライセンスクライアントが個々のサービスノードに設けられ、前記ライセンスサーバは、前記ライセンスマップを個々のライセンスクライアントに配信し、ユーザが前記アプリケーションの実行を要求しているとき、前記要求が向けられた前記サービスノードの前記ライセンスクライアントは、前記現在のライセンスマップに基づいて、前記ユーザが前記アプリケーションを実行することが許可されているか否かを決定する、請求項１に記載の方法。
【請求項３】
前記ライセンスクライアントは、前記ユーザの前記実行要求を受信したとき、前記ライセンスマップを要求する、請求項１または２に記載の方法。
【請求項４】
前記ライセンスサーバは、前記ライセンスマップが前記ライセンスクライアントに有効である期間を指示する有効期間と共に前記ライセンスマップを配信する、請求項１から３の一項に記載の方法。
【請求項５】
前記ライセンスクライアントは、前記有効期間の満了前に新たなライセンスマップを要求する、請求項４に記載の方法。
【請求項６】
前記ライセンスクライアントは、前記有効期間の満了後に、所定の時間内に前記ライセンスサーバから新たなライセンスマップを取得することが不可能である場合、前記ライセンスマップを使用する、請求項４または５に記載の方法。
【請求項７】
前記ライセンスクライアントは、前記アプリケーションの実行に関する使用データのログをとり、前記ライセンスサーバに送信し、前記ライセンスサーバは、前記使用データを考慮に入れて新たなライセンスマップを生成し、前記新たなライセンスマップを配信する、請求項１から６の一項に記載の方法。
【請求項８】
前記ライセンスサーバは、前記使用データによって、前記新たなライセンスマップを提供する期間を変更する、請求項７に記載の方法。
【請求項９】
前記ライセンスサーバは、前記所与のライセンスが変更されないままである場合でも、前記ライセンスクライアント上の現在のライセンスマップを置き換える修正されたライセンスマップを前記ライセンスクライアントに配信する、請求項１から８の一項に記載の方法。
【請求項１０】
プロダクトが実行されているとき、方法請求項１から９の一項に記載のステップを実行するためにソフトウェアコードを備える、コンピュータ・プログラム・プロダクト。
【請求項１１】
コンピュータシステム上でソフトウェア・アプリケーションの実行を制御する制御システムであって、該システムは、ライセンスクライアント（２）およびライセンスサーバ（６）を備え、該サーバーは、前記アプリケーションのための所定のライセンスに基づいて、どのユーザが前記アプリケーションを実行することを許可されているかについての情報を含むライセンスマップを生成し、前記ライセンスマップを前記ライセンスクライアントに配信し、ユーザが前記アプリケーションの実行を要求しているとき、前記ライセンスクライアントは、現在ライセンスマップに基づいて、前記ユーザが前記アプリケーションを実行することが許可されているか否かを決定する、制御システム。
【請求項１２】
前記コンピュータシステムは、少なくとも２台の別個のサービスノードを有している分散型コンピュータシステムであり、ライセンスクライアントが個々のサービスノードに設けられ、前記ライセンスサーバは、前記ライセンスマップを個々のライセンスクライアントに配信し、ユーザが前記アプリケーションの実行を要求しているとき、前記要求が向けられた前記サービスノードの前記ライセンスクライアントは、前記現在のライセンスマップに基づいて、前記ユーザが前記アプリケーションを実行することが許可されているか否かを決定する、請求項１１に記載の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステム上でアプリケーションの実行を制御する方法に関する。
【背景技術】
【０００２】
今日の大部分のコンピュータユーザは、ソフトウェア・アプリケーションの不正使用が違法であることに気付いているにもかかわらず、多くのユーザは、ソフトウェア・アプリケーションを価値のある知的財産として扱うことの重要性について一般的には関心を示さない。このようなソフトウェア・アプリケーションの違法使用を停止する１つの解決手法は、購入されるべきライセンスが存在するときに限りソフトウェア・アプリケーションが実行され得るように配布前にソフトウェア・アプリケーションを修正することである。
【０００３】
ソフトウェア・アプリケーションがソフトウェアベンダーによって（インターネットのような）分散型コンピュータシステムを介してサービスとして提供される場合、ソフトウェアベンダーは、ユーザがサービスに加入した後に、プロビジョニングステップを実行することになる。プロビジョニングステップは、加入対象サービスがユーザに利用できることを保証し、このステップは、古典的なソフトウェアの場合に、ユーザにライセンスを供与することと同じことである。簡単にするために、これらの用語は、本出願においてほぼ同じ意味で用いられる。
【０００４】
しかし、この種の保護（実行前のライセンス認証）の実施は、アプリケーションの使用目的に依存する。特に、実施は、顧客がアプリケーションを自分のパーソナルコンピュータにインストールする場合、または、顧客が分散型コンピュータシステムを介して提供されるサービスとしてソフトウェアを使用する場合によって異なる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
以上に鑑みて、本発明の目的は、ソフトウェア・アプリケーションにおいてライセンス認証を簡易に実施することを可能にするコンピュータシステム上のソフトウェア・アプリケーション実行制御方法を提供することである。
【課題を解決するための手段】
【０００６】
この目的は、コンピュータシステム上でソフトウェア・アプリケーションの実行を制御する方法であって、上記アプリケーションのために供与されたライセンスに基づいて、どのユーザが上記アプリケーションを実行することを許可されたかについての情報を含むライセンスマップを生成するステップと、コンピュータシステム上にライセンスクライアントを設けるステップと、上記ライセンスマップをライセンスクライアントに配信するライセンスサーバを設けるステップとを含み、ユーザが上記アプリケーションの実行を要求しているとき、ライセンスクライアントは、現在ライセンスマップに基づいて、ユーザが（この特有の時点において）上記アプリケーションを実行することが許可されているか否かを決定する方法によって解決される。
【０００７】
この方法を提供することにより、ライセンスクライアントは、この情報を含むライセンスマップに基づいてライセンスが存在するか否かだけを決定するので、ソフトウェア・アプリケーションにおける特定の実施から特殊な種類のライセンスを抽出（抽象化）することが可能である。その結果、ライセンス認証は、具体的なライセンスの種類から独立して（具体的なライセンス条件から独立して）実行される。
【０００８】
ライセンスの種類は、ライセンスクライアントによってチェックされないので、ソフトウェア・アプリケーション自体の修正の必要なしにソフトウェア・アプリケーションのための様々な種類のライセンス（ライセンス条件）を提供することが可能である。その結果、ソフトウェア・アプリケーションのためのライセンスを提供するソフトウェアベンダーは、修正された種類のライセンスを実施するためにソフトウェア・アプリケーションの開発業者まで遡る必要なしに新たな種類のライセンス、または、新たなビジネスモデルを変更し試行することがあり得る。
【０００９】
ソフトウェア・アプリケーションのライセンスは、（完全なアプリケーションのためではなく）アプリケーションの少なくとも１つの特徴または一部のためのライセンスであり得、または、完全なアプリケーションのためのライセンスであり得る。特に、アプリケーションの様々な特徴のための様々なライセンス条件が考えられる。本発明の方法では、アプリケーションにおいて、別個にライセンス供与され得るアプリケーションの特徴または機能性（機能／サービス）を実施することだけが必要である。別個にライセンス供与され得る様々な特徴についてのこの種の粒度を定義した後、これらの特徴のためのライセンス条件は、アプリケーション自体のさらなる修正を実行する必要なく定義され、修正され得る。その結果、アプリケーションのために考えられるビジネスモデルは、アプリケーションにおける実施から抽出される。
【００１０】
ソフトウェア・アプリケーションは、オンプレミス・ソフトウェア・アプリケーションとして、または、分散型コンピュータシステムを介して提供されたサービス・ソフトウェア・アプリケーションとしてライセンス供与され得る。
【００１１】
特に、コンピュータシステムは、少なくとも２台の別個の（たとえば、インターネットを介して互いに接続され得る）サービスノードを有し、ライセンスクライアントが個々のサービスノードに設けられ、ライセンスサーバが上記ライセンスマップを個々のライセンスクライアントに配信し、ユーザが上記アプリケーションの実行を要求しているとき、要求が向けられたサービスノードのライセンスクライアントが、現在ライセンスマップに基づいて、ユーザが上記アプリケーションを実行することを許可されているか否かを決定する、分散型コンピュータシステムとすることができる。
【００１２】
それぞれのライセンスクライアントの局所的な決定によって、分散型コンピュータシステムのための全体的に一貫性のあるライセンスデータを保証することは必要とされない。したがって、本発明の方法は、分散型コンピュータシステムと同じスケーラビリティを有し得る。
【００１３】
ライセンスマップをライセンスクライアントに配信するステップは、好ましくは、最初にユーザから実行要求を受信する前に実行される。
【００１４】
さらに、ライセンスサーバは、ライセンスマップがライセンスクライアントに有効である時間を示す有効期間と共にライセンスマップを配信することがあり得る。この場合、ライセンスの修正を考えることができる。
【００１５】
特に、ライセンスクライアントは、有効期間の満了前に新たなライセンスマップを要求することがあり得る。新たなライセンスマップは、好ましくは、現在のライセンスマップに取って代わる。この場合、ライセンスクライアントが現在のライセンスマップに基づいて常に決定し得ることを保証することが可能である。
【００１６】
ライセンスクライアントは、ユーザの上記実行要求を受信したとき、ライセンスマップまたは新たなライセンスマップを要求することがあり得る。この種類のライセンスマップの配信は、分散型コンピュータシステムにおいて通信負荷を低減する。
【００１７】
ライセンスクライアントは、所定時間内にライセンスサーバから新たなライセンスマップを取得することが可能ではない場合、有効期間の満了後にライセンスマップを使用することがあり得る。そのため、ライセンスサーバとの通信が時々妨害される場合でも、高速かつ迅速な応答を保証することが可能である。
【００１８】
ライセンスクライアントは、アプリケーションの実行に関する使用データを記録し(ログを取り)、ライセンスサーバに送信することがあり、ライセンスサーバは、使用データを考慮に入れて新たなライセンスマップを生成し、上記新たなライセンスマップを配信することがあり得る。このようにして、ライセンスマップを現在の使用状況に適合させることが可能である。
【００１９】
特に、ライセンスサーバは、上記使用データに依存して上記新たなライセンスマップを提供する期間を変更することがあり得る。たとえば、ライセンス供与された使用量を超過しそうな場合、新たなライセンスマップがライセンス供与された使用量を超過した直後に配信され得るように、新たなライセンスマップを配信する期間を短縮することが可能である。
【００２０】
コンピュータ・プログラム・プロダクトがコンピュータ上、特に、コンピュータシステム（の少なくとも一部）上で実行されているとき、本発明の方法または本発明の方法の１つのさらなる実施形態のステップを実行するために、ソフトウェアコードを含むコンピュータ・プログラム・プロダクトが提供される。
【００２１】
コンピュータシステム上でのソフトウェア・アプリケーションの実行を制御する制御システムであって、ライセンスクライアントと、アプリケーションのための所与のライセンスに基づいて、どのユーザがアプリケーションを実行することを許可されているかについての情報を含むライセンスマップを生成し、そして、ライセンスマップをライセンスクライアントに配信するライセンスサーバとを備え、ユーザがアプリケーションの実行を要求しているとき、ライセンスクライアントが、現在ライセンスマップに基づいて、ユーザが（この特有の時点に）アプリケーションを実行することを許可されているか否かを決定する、制御システムがさらに提供される。
【００２２】
コンピュータシステムは、少なくとも２台の別個のサービスノードを有する分散型コンピュータシステムとなることがあり得る。この場合、制御システムは、個々のサービスノードに１台のライセンスクライアントを備え、ライセンスサーバは、ライセンスマップを個々のライセンスクライアントに配信し、ユーザがアプリケーションの実行を要求しているとき、要求が向けられたサービスノードのライセンスクライアントは、現在ライセンスマップに基づいて、ユーザが（この時点で）アプリケーションの実行を許可されているか否かを決定する。
【００２３】
ライセンスサーバおよびライセンスクライアントのそれぞれは、ソフトウェアおよび／またはハードウェアとして具現化され得る。
【００２４】
本発明の制御システムは、コンピュータシステム上でのソフトウェアアプリケーションの実行を制御する本発明の方法のさらなる実施形態が実行され得るようにさらに構築され得る。
【００２５】
上記特徴と以下で説明される特徴とは、指示された組み合わせだけでなく、本発明の範囲から逸脱することなく、他の組み合わせで、または、単独で使用され得ることが認められるであろう。
【００２６】
本発明は、本発明に関連した特徴を同様に開示する添付図面を参照して、以下でより一層詳細に説明される。
【図面の簡単な説明】
【００２７】
【図１】分散型コンピュータシステムを概略的に示した図である。
【図２】ライセンスマップを示した図である。
【図３】修正されたライセンスマップを示した図である。
【発明を実施するための形態】
【００２８】
図１は、サービスノード２1、２2、２3と、サービス・ノード・サーバ３と、認証サーバ９とを備える分散型コンピュータシステム１を概略的に示す。
【００２９】
クラウドＮによって指示されるように、サービスノード２1、２2、２3自体と、サービス・ノード・サーバ３と、認証サーバ９とは、ネットワークＮ、たとえば、インターネットを介して互いに接続されている。その結果、サービスノード２は、地球全体に広げられ得る。
【００３０】
分散型コンピュータシステム１は、オンデマンドサービスとして用いられるアプリケーションＡ、Ｂをユーザ４1、４2、４3に提供するために使用され得る。このようなソフトウェア配備のモデルは、サービスとしてのソフトウェア（ＳａａＳ）と呼ばれることが多い。この場合、ユーザ４1、４2、４3は、ネットワークＮを介して、ライセンス供与されたアプリケーションを使用することがあり、それぞれのローカルコンピュータ５1、５2、５3にアプリケーションをインストールする必要がない。たとえば、ライセンス供与されたアプリケーションＡは、ローカルコンピュータ５1上のウェブブラウザを介して、第１のユーザ４1によって使用され得る。
【００３１】
このような分散型コンピュータシステム１においてアプリケーションＡ、Ｂのライセンスを効率的に管理するために、以下の方法が提供される。
【００３２】
第１のユーザ４1が（エンタイトルメントサーバー６と呼ばれることもある）ライセンスサーバ６から所望のアプリケーションＡがサービスノード２で実行されるライセンスを購入する場合を想定する。ライセンスは、利用回数制ライセンス、加入ライセンス、または、他の種類のライセンスであり得る。第２のユーザ４2は、第２のアプリケーションＢのライセンスを購入する。
【００３３】
分散型コンピュータシステムの分野では、ライセンスの購入は、契約締結と呼ばれることが多い。ユーザ４が分散型コンピュータシステムを介してライセンス供与されたアプリケーションを使用できるように実行されるべきステップは、ユーザプロビジョニングと呼ばれることが多い。これは、ユーザがソフトウェアまたはサービスを使用することを最終的に可能にするオンプレミスアプリケーションのためのライセンスの配信に対応する。
【００３４】
ライセンスサーバ６は、購入されたライセンスに基づいて簡易ライセンスマップ７を生成する。ライセンスマップ７は、どのアプリケーションがどのユーザにライセンス供与されたかについての情報だけを含む。図２に概略的に示されるように、第１のユーザ４1は、アプリケーションＡを使用することが許可され、第２のユーザ４2は、アプリケーションＢを使用することが許可される。しかし、ライセンスマップ７は、購入されたライセンスの種類に関する情報を含まない。
【００３５】
ライセンスクライアント８1、８2、８3が個々のサービスノード２1、２2、２3にさらに設けられる。ライセンスサーバ６は、生成されたライセンスマップ７を個々のライセンスクライアント８1、８2、８3に配信する。
【００３６】
第１のユーザ４1がアプリケーションＡを実行することを要求するとき、実行されるステップは、以下の通りであり得る。
【００３７】
要求は、認証サーバ９へ経路制御される。認証サーバ９は、ユーザ２を認証または確認し、固有ユーザ識別情報を要求に割り当て、要求をユーザ識別情報と共に１台のサービスノード２（本実施例では、第１のサービスノード２1）上のアプリケーションＡへ経路制御する。その結果、認証サーバ９は、識別情報を要求に割り当てるために使用され、割り当てられた識別情報は、サービスノード２のシステムのためにライセンス供与される。
【００３８】
アプリケーションＡは、要求を第１のサービスノード２1上のライセンスクライアント８1に向ける。ライセンスクライアント８1は、局所的なライセンスマップ７に基づいて、第１のユーザ４1がアプリケーションＡを実行することを許可されているか否かをチェックする。第１のユーザ４1がアプリケーションＡを実行することを許可されていない場合、これは、アプリケーションＡに送信される。その結果として、アプリケーションＡは、実行されず、この情報が第１のユーザ４1に与えられる。
【００３９】
しかし、第１のユーザ４1がアプリケーションＡを実行することを許可される場合、この情報は、固有セッション識別情報と共にアプリケーションＡに与えられる。その結果、ライセンス要求は、それぞれの（第１の）サービスノード２1上で局所的に実現される。このようにして、サービスノード２は、自律的に作用し、ライセンス問い合わせに局所的に返答することがあり得る。これは、ＳａａＳアプリケーションＡ自体と寸分違わない非常に迅速な応答および完全なスケーリングを可能にする。
【００４０】
さらに、ライセンスクライアント８1は、この要求を記録する。特に、対応するログエントリは、以下の情報：誰が（＝第１のユーザ４1）、いつ（要求の時間ｔ１）、何を（アプリケーションＡまたはアプリケーションＡのライセンス供与された特徴）、固有セッション識別情報、サービスプロバイダ識別子を含むことがあり得る。
【００４１】
第１のユーザ４1がアプリケーションＡの使用を終了するとき、アプリケーションＡは、対応するライセンスクライアント８に終了に関して通知する。さらに、ライセンスクライアント８は、セッション識別情報と共にアプリケーションＡの終了の時間を指示するログエントリを作成する。
【００４２】
分散型コンピュータシステム１の性質により、アプリケーションＡの終了の時間ｔ２で、アプリケーションＡが第２のサービスノード２2上で実行されていた可能性がある。この場合、２つのログエントリが２台の異なるライセンスクライアント８1および８2によって記憶される。アプリケーションＡの実行を開始に関するログエントリは、第１のライセンスクライアント８1によって記憶され、アプリケーションの終了に関する（固有セッション識別情報および終了時間ｔ２を含む）ログエントリは、第２のライセンスクライアント８2によって記憶される。しかし、ライセンスクライアント８1、８2、８3は、ログエントリをライセンスサーバ６に報告する。ログエントリに基づいて、ライセンスサーバ６は、第１のユーザ４1が時間ｔ１から時間ｔ２までにアプリケーションＡを使用したことを指示するセッションを作成することがあり得る。このセッションに基づいて、対応する請求書の作成が可能である。たとえば、ライセンスが利用回数制ライセンスである場合、ｔ１からｔ２までの期間、および／または、アプリケーションＡが利用された回数に応じて、請求書のための正確な額を借方に記入することが可能である。
【００４３】
ライセンスマップのための有効期間を割り当てることが可能である。言い換えると、個々のライセンスクライアント８1、８2、８3に対し、ライセンスマップ７は、割り当てられた有効期間中に確実に有効である。
【００４４】
有効期間は、ライセンスマップに一覧化されたすべてのアプリケーションの最短ライセンス変更時間になるように設定され得る。アプリケーションまたはアプリケーションの特徴のライセンス変更時間は、ライセンスクライアント８に配信されるべきライセンスマップの作成から開始してライセンスの条件が変化しない最低限の期間である。ライセンスマップが将来の時点Ｔ（ｆ）で使用され始めるために予め生成される場合、ライセンス変更時間は、Ｔ（ｆ）と参照されたいずれかのライセンスの最初の変更時間との間の時間である。さらに、ライセンスのプロビジョニング解除が分散型コンピュータシステム１に依存する個々のサービスノード２1、２2、２3まで伝搬させられるまでの時間であるプロビジョニング解除時間を考慮に入れることがあり得る。好ましくは、プロビジョニング解除時間とライセンス時間とのうちの最短時間が有効期間のため使用される。
【００４５】
サービスノード２1、２2、２3においてライセンスマップ７を最新の状態にする、または、更新するために、様々なメカニズムが使用され得る。
【００４６】
たとえば、ライセンス要求がライセンスクライアント８1、８2、８3に向けられたときに限り、それぞれのライセンスクライアント８1、８2、８3は、ライセンスマップ７が依然として有効であるか否かを検証する。有効期間が満了した場合、それぞれのライセンスクライアント８1、８2、８3は、ライセンスサーバ６からのさらなるライセンスマップ７を要求する。ライセンスサーバ６からライセンスマップ７を受信した後、ライセンス要求は、それぞれのライセンスクライアント８1、８2、８3によって取り扱われ得る。
【００４７】
しかし、インターネットＮの日常業務の一部であるライセンスサーバ６への接続が一時的に停止することが起こり得る。この場合、それぞれのライセンスクライアント８1、８2、８3は、非常に短い応答時間でアプリケーションＡを実行するユーザ要求を満たすために、（有効期間は、既に満了しているが）現在ライセンスマップ７に応じてライセンス要求に返答することがあり得る。その結果、ライセンスマップ７は、有効期間の満了後でも有効なままである。
【００４８】
このライセンス要求は、上述の通り記録されるので、このサービスの料金を請求することが依然として可能である。
【００４９】
ライセンスサーバ６との接続が可能になると直ぐに、それぞれのライセンスクライアント８1、８2、８3は、新たなライセンスマップ７を生成し、旧ライセンスマップ７を置き換える。
【００５０】
さらに、ライセンスクライアント８1、８2、８3は、有効ライセンスマップ７がいつでも存在するように、有効期間の満了前に新たなライセンスマップ７を要求することが可能である。
【００５１】
さらなる実施形態では、ライセンスクライアント８1、８2、８3は、最近使用されたアプリケーションＡのための新たなライセンスマップ７だけを生成する。
【００５２】
ライセンスマップ７は、ライセンスのスナップショットとして説明されることがあり、ライセンスマップ７は、ライセンス自体が変更されないままであっても、時間が経過すると共に修正されることがあり得る。
【００５３】
ライセンスマップ７は、固有の世代カウンタを備えることがある。この場合、ライセンスクライアント８1、８2、８3は、第１のステップにおいて、世代カウンタが依然として有効であるか否かをライセンスサーバ６に問い合わせることがあり得る。世代カウンタが依然として有効である場合、ライセンスクライアント８1、８2、８3は、新たな有効期間を設定することがあり得る。修正されたライセンスマップが作成される必要がないか、または、ライセンスサーバによって作成されている限り、世代カウンタは、有効なままである。新たな有効期間の持続期間は、好ましくは、旧有効期間の持続期間に対応する。世代カウンタが変化した場合、ライセンスクライアント８1、８2、８3は、新たなライセンスマップ７を要求する。
【００５４】
上記方法を用いると、種々のライセンスモデルが実現され得る。たとえば、利用回数制モデルでは、プロバイダ３の要求に応じて、または、ユーザ４の要求に応じて最大限の利用を制限できることが望ましい。全体的な同期複雑さに合わせるため、ライセンスクライアント８およびライセンスサーバ６は、以下の通り具現化され得る。個々のライセンスクライアント８は、使用データを収集し、これらの使用データをライセンスサーバ６に周期的に転送する。ライセンスサーバ６は、使用データを集約し、購入されたライセンスに基づいて、ライセンスクライアント８に配信されるべきライセンスマップ７への修正を始動させる。その結果、上限の超過から始まり、アプリケーションのためのライセンスの停止までスイッチオフ時間が保証されることがあり得る。スイッチオフ時間は、使用データを収集し、ライセンスサーバ９に送信するステップと、使用データを集約するステップとの他に、ライセンスマップ７を修正するステップと、修正されたライセンスマップ７を送信するステップとに依存する。
【００５５】
保証されたスイッチオフ時間を短縮するために、報告頻度および／または集約頻度が増強され得る。さらに、有効期間が短縮され得る。しかし、これは、データ通信の増加を招く。その結果、保証されたスイッチオフ時間と、保証されたスイッチオフ時間を短縮する費用との間で妥協点が見出されることになる。
【００５６】
保証されたスイッチオフ時間を短縮するために、ユーザ４の使用率、残り使用時間、および／または、信用レベルを考慮することがさらに可能である。信用レベルは、実際の使用の代金を支払うユーザ４の信頼性を指定する。信用レベルが高いほど、ユーザの信頼性が優れている。
【００５７】
ユーザ４1、４2、４3は、個人である可能性があり、または、個人の集まりである可能性がある。後者の場合、最大使用ライセンスは、同時に実行されるアプリケーションＡの量を制限するライセンスであり得る。ライセンスサーバ６が実行されるアプリケーションＡの最大量が超過したことを判定した場合、アプリケーションＡのためのユーザ４1のライセンスがもはや含まれない修正されたライセンスマップ７が生成される。この修正されたライセンスマップ７は、すべてのライセンスクライアント８に配布される。その結果、ユーザ４1の中でアプリケーションＡのさらなるインスタンスを実行できるユーザはいない。
【００５８】
ライセンスサーバ６がアプリケーションＡを使用するユーザ４1の人数が最大使用を下回ると判定した場合、ユーザ４1がアプリケーションＡを使用することが許可される新たなライセンスマップ７が生成される。このようにして、アプリケーションＡが分散型コンピュータシステム１上で実行されている場合でも同時にアプリケーションＡを使用する人に関してアプリケーションＡの最大使用ライセンスを供与することが可能である。
【００５９】
少なくとも１人のユーザ４1、４2、４3は、別のアプリケーションＣ、特に、ソフトウェアまたはウェブ・アプリケーションであり得る。ウェブ・アプリケーションは、ネットワークＮ内の１台または複数台のサービスノードによってホストされることがあり、ネットワークＮ内で提供されるサービスであり得る。この場合、ソフトウェア・アプリケーションＣは、（たとえば、認証サーバ９によって）識別され、固有ユーザ識別情報がアプリケーションＣに割り当てられる。その結果、ソフトウェア・アプリケーションＣは、たとえば、上記実施形態のうちの１つによって、アプリケーションＡを使用することがあり得る。サービスノード２は、別のソフトウェア・アプリケーションＣによるソフトウェア・アプリケーションＡ、Ｂの使用を可能にするためにウェブサービスＡＰＩまたはＲＥＳＴｆｕｌｌインターフェイスを提供することがあり得る。
【００６０】
上記説明では、アプリケーションＡおよび／またはＢは、ライセンス供与される。しかし、当然ながら、アプリケーションＡ、Ｂの少なくとも１つの特定の特徴だけをライセンス供与することが可能である。特に、アプリケーションＡ、Ｂの少なくとも２つの特徴をライセンス供与することが可能であり、少なくとも２つの特徴のためのこの種のライセンスまたはライセンス条件は、異なる。アプリケーションＡの第１の特徴のためのライセンスは、加入ライセンスであり得、アプリケーションの第２の特徴のためのライセンスは、ユーザ数制（ｐａｙ−ｐｅｒ−ｕｓｅｒ）ライセンスであり得る。
【００６１】
ライセンスサーバ６は、ライセンスサーバ２に配信されるべきライセンスマップ７を生成するとき、さらなる情報を考慮に入れることがあり得る。たとえば、それぞれのユーザ４の契約の一部である全ライセンスまたは全特徴は、ライセンスマップ７を作成するときに考慮され得る。付加的に、または、代替的に、それぞれのアプリケーションのための同じライセンスまたは類似ライセンスを購入したユーザまたは他のユーザ群の先の使用に関するデータは、考慮され得る。その結果、ユーザの対応する要求がライセンスクライアントのうちの１つに向けられる前に、クライアントにライセンスマップ７を予めロードすることが可能である。
【００６２】
さらなる実施形態によれば、ライセンスクライアント８は、アプリケーションの実際の使用に関する上記情報だけでなく、たとえば、アプリケーションのどの特徴または部分がどのくらいの期間使用されたかなどのようなさらなるアプリケーション特定データを記録する。このさらなるアプリケーション特定データは、ライセンスサーバ６によって集約され、ライセンスマップ７の生成のために使用されることがあり得る。付加的に、さらなるデータマイニングがこれらのデータを使用して行われることがあり得る。
【００６３】
上記実施形態は、ネットワークＮを介するオンデマンドサービスとして使用されるアプリケーションの準備を対象にする。しかし、オンプレミス・ソフトウェア・アプリケーションの実行を制御する上記方法を使用することが可能である。この場合、ライセンス供与されたアプリケーションは、ユーザ４によって自分の専用コンピュータまたはコンピュータネットワークにインストールされ得る。ライセンスクライアントは、好ましくは、コンピュータまたはコンピュータネットワークに同様にインストールされることがあり、ライセンスサーバは、ユーザのコンピュータもしくはコンピュータネットワーク、または、外部ネットワーク、たとえば、インターネットの一部であり得る。さらに、ライセンスサーバは、請求書を作成する必須情報がライセンスサーバによって送信されることがあり得るので、たとえば、オンプレミス・ソフトウェアのための利用回数制ライセンスが提供され得るように、ソフトウェアベンダーのさらなるサーバと通信することがあり得る。
【００６４】
図３には、さらなる情報が含まれる修正されたライセンスマップ７が示される。このライセンスマップには、第１のユーザ４1がアプリケーションＢを使用することが許可されないことについてのさらなる情報が含まれる。この情報は、ユーザ４1がアプリケーションＢを使用したい場合、アプリケーションＢのためのライセンスを購入できることをユーザ４1に通知するために使用されることがあり得る。この情報は、認証サーバ９が、たとえば、ユーザ４1を識別するとき、第１のユーザ４1のコンピュータ５1に表示されることがあり得る。
【図１】
2013526742.tif 000003
【図２】
2013526742.tif 000004
【図３】
2013526742.tif 000005
【国際調査報告】
2013526742.tif 000006
2013526742.tif 000007
2013526742.tif 000008