JP5643307B2 - ライセンス使用を最適化する方法及びシステム - Google Patents

ライセンス使用を最適化する方法及びシステム Download PDF

Info

Publication number
JP5643307B2
JP5643307B2 JP2012523269A JP2012523269A JP5643307B2 JP 5643307 B2 JP5643307 B2 JP 5643307B2 JP 2012523269 A JP2012523269 A JP 2012523269A JP 2012523269 A JP2012523269 A JP 2012523269A JP 5643307 B2 JP5643307 B2 JP 5643307B2
Authority
JP
Japan
Prior art keywords
license
instance
licenses
slots
time frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012523269A
Other languages
English (en)
Other versions
JP2013501281A (ja
Inventor
マクレラン、スコット
ペローネ、アントニオ
パストレッリ、ベルナルド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2013501281A publication Critical patent/JP2013501281A/ja
Application granted granted Critical
Publication of JP5643307B2 publication Critical patent/JP5643307B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/04Billing or invoicing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services; Handling legal documents
    • G06Q50/184Intellectual property management

Description

本発明は、ライセンス管理の分野に関し、特に、ソフトウェア・ライセンスの帰属(attribution)に関する。
ソフトウェアは、一般に著作権法によって保護され、ユーザが著作権を所有していないソフトウェアのあらゆる使用は、著作権所有者からのライセンスに依存する。そのようなライセンスは、一般に、ソフトウェアが使用されてよい方法、具体的には所与のシステム上で同時にソフトウェアを使用してよい同時ユーザの数、ソフトウェアがインストールされてよいマシンの数などに関して制限を加える。当然、一般に、ライセンスには支払いが必要であり、ソフトウェア使用の範囲及び性質によっては、継続的な支払いが必要となり得る場合もある。さらに、時間がたつにつれて使用が変化し、特定のライセンスではそのソフトウェア使用が十分にカバーされなくなった場合には、代わりのライセンス条件を得ることができることもある。一方には多数のユーザ及びマシン、他方には種々の異なる支払い又は使用料構造がある企業環境では、特定のライセンスと、特定の使用との関連付けが、次第に複雑になる可能性がある。そのような状況では、ソフトウェアの利用を監視することを役割とするライセンス管理ソフトウェアを提供することが既知である。
ライセンス管理の領域における最近の発明は、ソフトウェアのインストール又は使用と、対象のソフトウェアのいくつかの有効なライセンスのうちの最も適切なものとを関連付けるために、いくつかの異なる方法を適用している。これらの方法の目的は、過剰調達をする必要なく、諸条件に準拠した状態を保つために、ライセンスの使用を最適化することである。
特許文献1は、コンピュータ上のソフトウェア製品の利用を制御及び測定する方法及び対応する装置を開示している。同じ製品にいくつかのライセンスが利用可能である場合に、ライセンスを最大限に活用するために最良のライセンスを判断する方法が提案されている。上記の判断は、利用可能な最良のライセンスの選択に影響を与える所定のパラメータのセットに基づく。ライセンスは、製品の利用制約を示すパラメータの関連するリストとともに、カタログに記憶される。ライセンスは、所定のパラメータ最適化基準に従って順序付けられ、その結果、リクエストが受信されると、ライセンス・マネージャは、例えばリクエストされた使用に適していて最も高い利用制約を有する当該ライセンスなど、最良のライセンスを容易に発見できる。さらなる特徴は、ライセンスが、1つ以上の階層に従って順序付けられることであり、各階層が、所定の優先ルールに従って他の階層に対して順序付けられる。
この従来技術の方法は、2つのライセンスが類似の特徴を有する場合、単純な手法を適用して、ライセンス間に利用セッションを均等に分配しようと試みる。
国際公開第0805280(A1)号
これらの方法すべての欠点は、最良の選択をしようとする試みにより決定される、固定のルールに選択が基づくということである。現実のシナリオでは、ソフトウェアの使用がルールにおいて想定された論理とは大きく異なることもあり、この方法によって、準拠していない、又は最適化されていないライセンス使用につながる選択が行われることもある。
本発明によれば、添付の独立請求項1に記載の、複数のライセンスのもとでエンタイトルメント・スロット(entitlement slot)を帰属させる(attribute)方法と、添付の請求項10に記載のコンピュータ・プログラムと、添付の請求項11に記載のコンピュータ可読媒体と、添付の請求項12に記載のシステムとが提供される。好適な実施形態が、従属請求項において定義される。
図面及び詳細な説明を検討すれば、本発明のさらなる利点が当業者には明白となる。任意のさらなる利点が、本発明に包含されるものとする。
以下、本発明の実施形態について、添付の図面を参照して例として記載する。図面では、同じ参照符号は同様の構成要素を示す。
本発明の第1の好適な実施形態の方法ステップの概略図である。 本発明の第2の好適な実施形態の方法ステップの概略図である。 特定の実施形態の機能要素の概略ブロック図を示す。 特定の実施形態を実装するのに適したコンピュータ環境を示す。
上記に鑑み、アプリケーションが起動すると、その時点で最良のライセンスをアプリケーションに割り当てられるように、1つのソフトウェアのインスタンスの実行など、所与の動作のインスタンスに対して、最良の適用可能なライセンスを動的に選択する方法を提供することが望まれる。アプリケーションの存続期間の間に、最良のライセンスが変化すること、又は使用されているライセンスが適用可能でなくなることがあり得る。以下が一部の例である:
−アプリケーションが起動したときに使用中であったライセンスが、特定の時間に解放されたため、それが最良の利用可能なライセンスとなる。
−もとのライセンスが何らかの形で変更されたため、使用できなくなる。例えば追加の制約の追加によって、アプリケーションが実行されているオペレーティング・システムに適用可能でなくなったなど。
−ハードウェア構成又は組織的階層において何かが変化し、例えば:
a.アプリケーションをホストしているOS(operating system:オペレーティング・システム)が、1つの部門から別の部門へ移動されることにより、もとのライセンスが適用可能でなくなるか、又は別のライセンスが最良の利用可能なライセンスになる。
b.アプリケーションが実行されているOSをホストしているHW(hardware:ハードウェア)がアップグレードされる(アプリケーションを停止せずに)ことにより、ライセンスが適用可能でなくなる。
これらは、ライセンス・プロパティ、ハードウェア(すなわちリソース)・プロパティ、組織のプロパティ(すなわちグループ・プロパティ)、又はこれらエンティティの何れかの間の関係のプロパティに対する変更の単純な例である。これらの変更は、別のライセンスが最良のライセンスになることを意味し得る。
本発明の実施形態は、以下、例として完全なライセンス解釈システムの文脈で記載されるが、当然のことながら本発明は、より単純な環境若しくは異なる環境にも、又は完全なスタンド・アロン・ソリューションとしても同様に実装され得る。
組織は、一般に、企業の地理的又は組織的区分を表す階層に分割される。ライセンスは、こうした階層の種々のレベルにて取得又は割り当て可能である。このため、ソフトウェア・インスタンスに割り当てる最良のライセンスを決定するとき、こうした階層が考慮に入れられることが好ましい。
ライセンス解釈システムは、例として以下の入力を受け取り得る:
階層に基づくライセンシー組織の抽象化:1つの階層を地理的階層(大陸、地域、州、都市)、別の階層を組織的階層(開発ラボ、コード開発チーム、Java開発部門)とすることができるであろう。グループ階層のセット(各グループは上で列挙した見本のエンティティのうちの1つ)が定義される。各階層は、それ自体の識別子を有し、これにより、各階層の一部であるグループを区別できる。階層内のグループは、同じ階層内に親を有することができ、任意の時点で他の階層の最大1つのグループに(子として)関係付けられることができる。階層識別子は、階層のランキングをもたらす。1つの階層内のグループは、より高いランクの階層のグループのみに(子として)関連付け可能である。
もう1つの階層は、仮想化レイヤを含む。各ノードが、当該の階層のルートであり、その子は、共有プール、論理パーティション(LPAR:Logical Partition)、VM、オペレーティング・システム、及びコンテナ(IBM(IBM社の登録商標)WebSphere(IBM社の登録商標)により提供される)とすることができるであろう。そのような階層の各メンバは、リソースである。リソースは、その親リソースに関係付けられ(ルートはノードである)、さらに各グループ階層の最大で1つのグループに関係付けられることができる。リソースは、任意の時点に、1つの親を有し、各階層の1つのグループに関係付けられることができるが、これは、2つの異なる時点では、2つの異なるリソース親を有すること、又は同じ階層内の関係付けられた複数のグループを有することができるということを意味する。
リソース間、グループ間、又はリソースとグループとの間のあらゆる関係は、有効時間間隔を用いてタグ付けされるが、これは例えば、部門ライセンス・マネージャがある期間、開発ラボの一部であったが、別の期間に例えば調査ラボに移動されたこと、又はオペレーティング・システムが、ある期間マシンA上でホストされ、続いて、例えばアップグレードのためにマシンBに移動されたことなどを意味する。
各リソース又はグループは、特定のプロパティと関連付けられてもよい。プロパティは、例えば、ノードのプロセッサの数、オペレーティング・システムのメモリの量、部門内の従業員の数など、各エンティティについての有用なデータを読み出すライセンシング・システムの能力によって決まる。こうしたプロパティが収集されるのは、ライセンスが使用された量を算定するために価格モデルがこれを必要とする可能性があるためである(例えば、特定のライセンスは、ソフトウェア利用を算定するために仮想化階層の各レベルの容量情報を必要とする)。
アルゴリズムのもう1つの入力は、ライセンス・システムに認識されるユーザのセットである。これらのユーザは、ソフトウェアをインストール又は実行しているユーザであり、企業の従業員のサブセットのみにライセンス消費を限定するためにも使用可能である。各ユーザは、追加のプロパティを用いてタグ付け可能であり、このプロパティは、ライセンシング・システムが読み出すことができライセンス算定のために何らかの価格モデルに有用となり得る、ユーザの任意の属性を記述する。
さらに別の入力は、ライセンスのセットであり、それぞれのライセンスが、ライセンシング・システムによってサポートされている1つの価格モデルに関連付けられている。各ライセンスは、複数のディストリビューション(distribution)、すなわち、ライセンスの使用を許可されている別々の対象にそれぞれ関連付けられる、ライセンス・エンタイトルメントの区分に分割される可能性もあり得るであろう。各ディストリビューションは、このディストリビューションの使用を許可されているターゲットのセット(グループ又はリソース)を有し、これらターゲットそれぞれに関して、1つ以上の関連付け有効間隔が提供され、この時間間隔においてのみ、ターゲットがライセンスの使用を許可されていることを意味する。さらに、各ディストリビューションが、すべてのユーザ又はそのサブセットと関連付けられ、したがって、それを使用することができるユーザが限定されてもよい。この場合もやはり、これらの関連付けはそれぞれ、関連付けの有効性を詳しく示す1つ以上の時間間隔により補われる。
ライセンス条件の変形は無数に想定され得る。例えば:
−開発ラボの任意の従業員が使用できるライセンス(ターゲットは、開発ラボを表すグループである一方、ユーザの制限はない)
−イタリアの任意の従業員が使用できるライセンス(ターゲットは、地理的位置のイタリアを表すグループである。ユーザの制限はない)
−特定のハードウェア・システム上(特定のPC上など)でのみ使用可能なライセンス。ターゲットは、特定のハードウェアを表すリソースである一方、ユーザ制限はない
−指名されているユーザによってのみ使用可能なライセンス。ターゲットは企業全体であるが、ライセンスを1つのユーザにのみ関連付けるユーザ制限がある。
各ライセンス及びディストリビューションは、関連するプロパティを有し、これは、ライセンス及びディストリビューションを定義するときにユーザによって入力され、ライセンス利用及び準拠を算定するためにライセンスに関連する価格モデルが必要とする値である。これらの例は、アプリケーションが実行されているプロセッサの数、又はティア・ライセンスなどのライセンスに関する複数の数などであり、ティア・ライセンスでは、それぞれの数が異なるハードウェア・ティアに関する。
利用とライセンスとの優良な関連付けを確保するために、ライセンシング・システムは非消費ライセンスの概念をサポートする。ライセンス(又は価格モデル)は、ユーザが、ソフトウェア利用の量とは無関係にライセンスに同じ金額を支払わなければならない場合に、消費されないものとしてフラグを立てられることが可能である。例えば、特定の開発グループで使用される所定の製品に関するサイト・ライセンスが、非消費ライセンスのよい例となり得るであろう。ラボは、ライセンスを取得するときにその代金を支払い、一度支払えば、追加の料金を支払う必要なく、ライセンスの超過使用のリスクもなく、希望するだけ頻繁にその製品を使用することができる。そのようなライセンスが製品に利用可能であれば、超過使用のリスクも、追加料金を支払う(ペイ・パー・ユース・ライセンスなど)必要もなく使用を関連付けることができるため、好適なライセンスと見なされなければならない。
この実施形態のライセンス解釈システムは、以下のステップ1〜6を実行する。
1.ソフトウェア利用をもたらしたリソースから開始して、リソース及びグループ階層をナビゲートし、各時間間隔においてそのリソースから到達可能であり、消費セッション、すなわち利用スロットを関連付ける必要があり得るソフトウェアのインスタンスを生成する製品に関連する、ライセンス・ディストリビューションのセットを抽出する。
リソース階層が、最初に巡回されるものである。各リソースの親が、そのリソース自体の後に巡回される。複数の親の場合、時間順にそれらを巡回することができる(しかしこれは、アルゴリズムの正確さのために厳密に必要とされるものではない)。リソースを巡回する間、アルゴリズムは、各リソースから到達可能なグループのリストを収集する。リソース階層の巡回を完了した後、アルゴリズムは、グループ階層に移動するが、これはより低いランク(すなわち最高のid)の階層から始められる。巡回の間、到達可能時間間隔が常に維持される。
2.ユーザ制限に基づき各ライセンスの有効時間を選択する。ライセンス(又はディストリビューション)にユーザ制限がなければ、常に消費セッションに関連付け可能である。その他の場合、ライセンス(又はディストリビューション)は、消費セッションがライセンス(又はディストリビューション)に関連付けられていない期間に関連付けはできない。2つのステップは独立しているため、このステップはステップ1より前にも実行可能である。
3.消費セッションに関連付け可能なすべてのライセンス(又はディストリビューション)に関して、セッションが本当に割り当て可能か、及びどの時間間隔かを価格モデルに問い合わせる。一部の価格モデルは、関連付けられる消費セッションに関してさらなる制約を課す。例えば、指定されている第2の製品もマシン上にインストールされている場合のみライセンス(又はディストリビューション)に消費セッションが関連付けられることを許可し、その他の場合はライセンスを使用できない価格モデルなどである。その結果、関連付けは、参照されている製品もさらにマシンにインストールされている時間間隔の間のみ可能である。
4.アルゴリズムが、関係のある時間間隔を備え消費セッションに関連付け可能なライセンスのリストを得ると、アルゴリズムは、非消費ライセンスを優先させる。
5.有効なライセンスが発見されなければ、ターゲット制約に基づき、アルゴリズムは、「デフォルト」としてマークされていて、時間間隔を備えすべての階層のルートから到達可能なライセンス(又はディストリビューション)を、到達可能性に関して検索する。消費セッションをもたらす製品に関連付けられた最も近いライセンス(又はディストリビューション)が、その関連付けに有効な第1のライセンスと見なされる。
6.3つ以上のライセンス(又はディストリビューション)が、所与の時間間隔に関して得られる(その2つが同じリソース又はグループに関連付けられているため)と、アルゴリズムは、利用ライセンスよりもインストール・ライセンス(又はディストリビューション)を優先させる。
当然のことながら、当業者が想到し得る、ライセンス条件を自動的に解釈、選択、適用する他の方法が、添付の特許請求の範囲において定義されている本発明に等しく対応する。
ここまで記載したライセンス管理システムは、各ライセンスの予想される消費を考慮せずに、利用セッションをライセンス間に均等に分配しようとする。
しかし、本発明は、ライセンス管理システムが、ソフトウェア・インベントリ及び使用情報を含むデータベースを既に有するということの認識に基づく。データは、数ヶ月、又は数年も遡ることもある。最近の過去のデータは、典型的な使用パターンのよい指標であり、任意の特定の日のソフトウェア使用は、過去1週間、2週間、又はその他任意の適度に最近の期間に観測されたパターンにマッチする可能性が高いと想定できる。ライセンス管理システムは、最も「好都合な」ライセンスの使用を最適化して、どのライセンスも非準拠状態にならないことを保証するために、組織の様々な部門において典型的に使用されるソフトウェア・インスタンスの数と、それが任意の特定の1つのソフトウェアに適用可能なライセンスのライセンス使用に関して生じる結果とについての知識を用いて、各使用に対し最も適切なライセンスを選んで、ライセンス間に現在の使用を最適な形で分配することができる。
したがって、2つのインストール若しくは利用ライセンス(若しくはディストリビューション)がある場合、又は実際にその他任意の文脈で2つのライセンスから選ぶ必要がある場合、アルゴリズムは、使用する最良のライセンスがどれであるかを知るために、過去の利用データを使用する。論理は、システムが時間をかけて蓄積したデータから得られた統計指標に基づく。したがって、特定の1つのソフトウェアに対する権利を与える可能性がある複数のソフトウェア・ライセンスに基づくエンタイトルメント・スロットを、前記1つのソフトウェアのインスタンスに特定の時間フレームの間、帰属させる方法が提供される。前記ライセンスはそれぞれ、前記時間フレームの間に当該ライセンスに帰属させられてよいスロットの最大限の数を定義するエンタイトルメント値(E(Entitlement:エンタイトルメント))を有し、前記方法は、
記録されているライセンス帰属情報(license attribution information)からライセンス使用シグネチャ(license use signature)を判断するステップと、
まだライセンスに帰属させられていないインスタンスの通知を受信するステップと、
前記ライセンス使用シグネチャに応じて、新たなインスタンスを前記ライセンスのうちの1つに帰属させるステップと、
を含む。
好適には、モデルが、典型的なライセンス使用パターンを表し、帰属させる前記ステップは、前記新たなインスタンスを前記ライセンスのうちの最も好都合なものに帰属させ、その一方で、ライセンスの条件に確実に準拠することを含む。
時間フレームは、対象のライセンスにおいて定義されている、1以上の時間、日、週など、又はその他任意の期間であればよい。必要に応じ、時間フレームは、ライセンスにおいて定義されている期間の一部としてもよい。スロットは、時間フレーム間に必要に応じて分配されるとよく、使用されない時間フレームは、同じライセンス期間内の後の時間フレームに渡される。時間フレームは、同じソフトウェアに適用可能な様々なライセンスの期間の最小公分母として選ばれてもよい。
以下の例では、機能上の観点から、同じソフトウェアを対象にするいくつかのライセンスが存在すると想定される。これらのライセンスそれぞれが、所与の日に消費されてよいいくつかの使用スロットE(エンタイトルメント)を定義し、各使用スロットが、単一プロセッサ上でソフトウェアを一度実行すること、すなわち1つのソフトウェア・インスタンスに対応する。同じソフトウェアがマルチプロセッサシステム上で一度実行される場合、消費されるスロットの数に、そのシステム内のプロセッサの数が乗じられてもよい。すなわち、特定のインスタンスによって消費されるスロットの数は、インスタンスが実行されるプロセッサの数によって決まってもよい。一部のライセンスでは、スロットが消費される必要があるのは、所与の日の最初の実行に関してのみであることもあり、同じライセンスに帰属する続く任意の実行は、単に同じスロットに入る。当然、これにならった広範囲の変形及び置換が考えられてもよい。
以下の値が考慮され得る。
dC=所与のライセンスに関して、過去使用データから判断される、特定の日に消費されたスロットの総数。
dN=所与のライセンスに関して、特定の日にそのライセンスに帰属させられた課金ソフトウェア・インスタンスの数。課金ソフトウェア・インスタンスは、少なくとも1つのスロットの消費につながるインスタンスである。
dL=所与のライセンスに関して、特定の日にそのライセンスに帰属させられたソフトウェア・インスタンスの数。この値は、スロットの消費につながるか否かにかかわらず、帰属させられたすべてのインスタンスを考慮に入れる。
当然のことながら、所与のライセンスに関して、dNは、常にdLより小さいか、等しい。
Figure 0005643307
day d−1及びday d−2に関して先行する表に例として示された過去の情報から、値CとSが計算される。
=AVG(dC/dN)ライセンスの消費量と、消費インスタンスの数との比の平均である。この値は、非ゼロの寄与度を伴うsw(software:ソフトウェア)インスタンスの平均消費を表す。
=AVG(dN/dL)ライセンスに関連付けられたソフトウェア・インスタンスが、ライセンス消費に非ゼロの影響を有する確率の平均である。
Figure 0005643307
ここで、day d、すなわち「今日」を見るが、これは、本発明によるライセンス帰属最適化が実装される、部分的に終わっている日である。
R(n)=E−N×C×Sは、nのインスタンスがライセンスに割り当てられた後の平均の残余容量である。
Figure 0005643307
上に示したように、これまでのところ、各ライセンスの4つのスロットが、各ライセンスに帰属している。さらなる消費インスタンスが検出されると、上記に記載したように計算された過去の値を参照することによって、それをどのライセンスに帰属させるべきかが判断される。具体的には、システムは、2つ以上のライセンスの中から選ぶことを要求されると、より小さいC及び0より大きいRを有するライセンスに、インスタンスを割り当てる。
本例では、ライセンス1は、C=3/8、R=1であり、ライセンス2は、C=1,R=0であるから、次の消費インスタンスは、ライセンス1に帰属させられる。
実際、特定の実施形態によれば、利用可能なRがあるまで((5/2)*3=インスタンス)ライセンス2が使用され、その後は、より高いCを有していてもライセンス1が使用される。
したがって、ライセンス使用シグネチャを判断するステップは、
前記ライセンスそれぞれに関して、任意インスタンスが当該ライセンスに従い課金対象となるであろう確率(C)を、記録されているライセンス帰属情報から判断するステップと、
前記ライセンスそれぞれに関して、インスタンス毎に消費されたスロットの平均数(S)を、記録されているライセンス帰属情報から判断するステップと、
を含むとよく、帰属させるステップは、
任意インスタンスが当該ライセンスに従い課金対象となるであろう確率(C)が最も低い何れかのライセンスであって、当該ライセンスに関して新たなインスタンスが当該ライセンスに従い課金対象となるであろう確率(C)に、当該ライセンスに関してインスタンス毎に消費されたスロットの平均数(S)を乗じ、現在の時間フレームの間に当該ライセンスに既に帰属させられたインスタンスの数を乗じると、当該ライセンスのエンタイトルメント値よりも小さい、該ライセンスに、新たなインスタンスを帰属させるステップ
を含むとよい。
さらに、前記ライセンスそれぞれに関して、任意インスタンスが当該ライセンスに従い課金対象となるであろう確率(C)は、各時間フレーム内にスロットが帰属させられるインスタンスの数(dN)と、同じ時間フレーム内に当該ライセンスを用いたインスタンスの総数(dL)との比の、前記過去の記録内のすべての時間フレームにわたる平均として計算されることが好ましい。
インスタンス毎に消費されたスロットの平均数(S)は、前記過去の記録内に含まれている各時間フレームに消費されたスロットの数(dC)と、同じ時間フレーム内にスロットが帰属させられたインスタンスの数(dN)との比の、前記過去の記録内のすべての時間フレームにわたる平均として計算されることが好ましい。
特定のライセンスに割り当てられるインスタンスの数がそのエンタイトルメントEを超えると、そのシステムの使用は違法となる。この状況を防ぐ1つの方法として、ハード・リミットを課すことも考えられる。その結果、ライセンス帰属システムは、エンタイトルメントの限度に達したライセンスに、インスタンスを帰属させなくてよい。しかし、この結果として、いかなるライセンスを割り当てることも不可能になること、又はソフトウェアの実行が完全に防がれることもあり得る。高需要のライセンスのより洗練された処理をもたらす代替手段では、エンタイトルメントに保護閾値P(protection:保護)を適用することが要求され、E=E*P/100が与えられる。このようにして、特定のライセンスに負荷をかけすぎることを避けるために、計算に安全マージンが組み込まれる。したがって、個々のエンタイトルメント値(E)に所定の保護閾値(P)が乗じられ、その結果、エンタイトルメント値(E)は、各ライセンスによって定義されている厳密な最大限よりも小さくなる。
なお、単純にするために、前述の例で選ばれた値は非常に小さく、何れの場合でも本発明に頼ることなく最も適切なライセンスを特定することは簡単な事柄であろう。当然のことながら、ライセンス及び利用インスタンスの数並びに複雑さが増すにつれて、本方法はますます有用になる。
このようにして、組織が実際にどのようにソフトウェアを使用するかの知識に基づき、ソフトウェア使用の最も適切なライセンスへの関連付けが改善され、その結果、最適でない選択をするリスクが減る。
さらに、ソフトウェア利用と、ライセンスとの関連付けは、複雑な組織及び仮想化階層の存在下で、利用が提供されてよいことを立証する一方で、大きく異なる価格モデルをサポートするよう十分一般的に方法を維持する。ライセンス関連付け論理は、既存のライセンスの利用を最大化し、そのそれぞれが、超過使用に至ること(エンタイトルメント・レベルより大きい利用)を避けるべきである。
図1は、本発明の第1の好適な実施形態の方法ステップの概略図である。本発明の方法は、非消費ライセンスを消費ライセンスよりも優先させ、結果としてライセンスの関連付けを最適化することによって、複雑な組織的構成及び仮想化階層の処理を可能にする。さらに、関連付けの処理において、ライセンス使用シグネチャ特有の制約を含めることを可能にし、したがって、異なる価格モデル及びその制約をサポートする。
この手法は、消費セッションをもたらす製品ではなく、消費製品の階層内の製品すべてに関連付けられたすべてのライセンスを考慮することによって、製品階層にも拡大可能である。
好適なライセンスを、消費リソースからのその距離と、階層の相対的順序との混合に従って順序付ける方法は、いくつかの可能性のうちの1つにすぎない。1つの代替手段として、すべての属性を、場合によって相対的な重みと結合して、各ライセンスの全体的な「優先値」を計算することが考えられる。
図1に示されているように、本方法は、新たな時間フレームの始まりの、ステップ100にて開始し、ステップ105へ進み、そこで値Nが各ライセンスに関してゼロにセットされる。上記のように、Nは、所与の時間フレーム内にスロットが帰属させられるスロット消費インスタンスの数であり、したがって、新たな時間フレームの最初に、ゼロにセットされなければならない。次に、本方法はステップ110へ進み、記録されているライセンス帰属情報からライセンス使用シグネチャが判断される。本方法は、次に、まだライセンスに帰属させられていないインスタンスの通知を待ち、それがステップ120にて受信されると、本方法はステップ130へ進み、そこで、新たなインスタンスが、ステップ110にて生成されたライセンス使用シグネチャに応じてライセンスのうちの1つに帰属させられる。ステップ150にて、続いて本方法は、時間フレームの最後に達したか否かを判断する。時間フレームの最後に達した場合、本方法はステップ105に戻り、Nが0にリセットされ、その他の場合は、本方法はステップ110に戻り、そこで新たな利用状況を反映するようライセンス使用シグネチャが更新される。
図2は、本発明の第2の好適な実施形態の方法ステップの概略図である。図2の実施形態は、図1に関して前述したのと同じ基本的なステップ105、110、120、130、150を含み、ステップ110及び130内に、さらなる任意選択のサブステップが提供されている。具体的には、図2の実施形態によれば、ライセンス使用シグネチャを判断するステップ110は、ライセンス帰属情報をロードするサブステップ211にて開始する。本方法は続いて、記録されているライセンス帰属情報から、各ライセンスに関して、任意インスタンスが当該ライセンスに従い課金対象となるであろう確率(C)を判断するサブステップ213へ進む。本方法は次に、前記ライセンスそれぞれに関して、インスタンス毎に消費されたスロットの平均数(S)を、記録されているライセンス帰属情報から判断するステップ214へ進む。これら2つのステップは、当然、任意の順序で実行されても、並行して実行されてもよい。
その一方で、この第2の好適な実施形態によれば、帰属させるステップ130は、インスタンス属性を抽出するサブステップ231から開始する。インスタンス属性は、インスタンス化されているソフトウェア、ユーザ、ソフトウェアがインスタンス化されている環境を特定する情報、及び上記のように、インスタンス化されたソフトウェアを対象とする権利を提供する適したライセンスを特定するために必要なその他任意の情報を含むとよい。この情報に基づき、ステップ232にて、本方法は、インスタンス化されたソフトウェアを対象とする権利を提供する候補ライセンスの選択へ進み、その中から、新たなインスタンスを帰属させる最適なライセンスが選択されなければならない。ステップ233にて、本方法は、第1の候補ライセンスL=1を選択する。ステップ234にて、現在選択されている候補ライセンスに関して、新たなインスタンスが当該ライセンスに従い課金対象となるであろう確率(C)に、当該ライセンスに関してインスタンス毎に消費されたスロットの平均数(S)を乗じ、現在の時間フレームの間に当該ライセンスに既に帰属させられたインスタンスの数を乗じると、当該ライセンスのエンタイトルメント値よりも小さくなるかどうかが判断される。小さければ、本方法はステップ235へ進み、そこで、現在選択されているライセンスに従い任意インスタンスが課金対象となるであろう確率(C)が、それまで検討された候補ライセンスのうちで最も小さいかどうかが判断される。最も小さければ、ステップ236にて、それまで検討された最有力候補としてライセンスが印を付けられ、それからステップ237へ進む。ステップ234又は235のテスト何れかが失敗した場合、本方法は直接ステップ237へ進む。何れの場合も、ステップ237にて、本方法は、現在検討されているライセンスが候補ライセンスの最後のものであるか否かを判断する。最後のものでなければ、Lの値がステップ238にて1インクリメントされ、その結果、上記のようにステップ234から次の候補ライセンスの検討へ進む。現在検討されているライセンスが最後の候補ライセンスであると判断されれば、本方法は、ステップ239へ進み、そこで、ライセンスが適していると印を付けられているか否かが判断される。ライセンスが上述のように印を付けられていれば、本方法はステップ241へ進み、そこで新たなインスタンスにより必要とされるスロットが、印を付けられたライセンスに帰属させられる。本方法は、続いて、ステップ242にてNをインクリメントしてから、上記のようにステップ150に達する。どのライセンスも印を付けられていない場合、本方法はステップ240へ進み、そこでインスタンスが、無ライセンスとしてフラグを立てられる。これは、任意選択で、インスタンスの終了又はリソースの拒否につながってもよい。あるいは、通知が、例えば電子メールなどによって、ITスタッフ、調達スタッフなど、インスタンス又はメソッドを実行している、組織の適切な職員に送られてもよい。さらに、例外又は緊急の権利をリクエストできるメカニズムが、自動的に作動してもよい。この応答は、例えばステップ231にて収集された属性から判断される、ソフトウェア自体の性質によって決まってもよく、例えば、インスタンスが重要な業務に関すると判断されれば、そのインスタンスは、無ライセンス又は緊急状態のもとで続行を許可されてもよい。次に、本方法は続行し、上記のステップ150に達する。
いくつかの等価な候補が特定された場合、均衡状態を解消するものとして他の基準が使用されてもよい。
図3は、特定の実施形態の機能要素の概略ブロック図を示す。図のように、ライセンス・アトリビュータ(license attributor)350が提供され、これは、直線301によって表されているインスタンス通知を受信する。この通知を受信すると、ライセンス・アトリビュータ350は、命令351をソフトウェア・ライセンスのリポジトリ310に発行し、インスタンス化されているソフトウェアに関連するライセンスの詳細を読み出す。読み出されたライセンスの詳細311は、ライセンス・パーサ320に出力され、ライセンス・パーサ320は、メッセージ321内でエンタイトルメント値Eを、以下に記載されているライセンス使用シグネチャ・ビルダの第2のモジュールに提供し、さらに、候補ライセンスの過去の情報を求めるリクエスト322を、記録されているライセンス帰属情報データベース330に提出する。この過去の使用情報が、メッセージ331内でライセンス使用シグネチャ・ビルダ340に渡される。ライセンス使用シグネチャ・ビルダの第1のモジュール341は、上記のように値C、S、及びNを計算し、これらをライセンス使用シグネチャ・ビルダの第2のモジュール342に渡し、これが、各ライセンスに関して、上記のように計算R(n)=E−N×C×Sにより残余容量値Rを計算する。ライセンス使用シグネチャ・ビルダは、R値のセット343及びC値のセット344をライセンス・アトリビュータ350に出力する。したがって、この実施形態によれば、ライセンス使用シグネチャは、各候補ライセンスに関して、R値及びC値を含む。ライセンス・アトリビュータは、このシグネチャを受信すると、上記のように最良の候補ライセンスを選択して、記録されているライセンス帰属情報データベース330を、メッセージ352を用いて更新する。
当然のことながら、図3に関して記載された機能要素、並びにそれに対応して、図1及び2に関して記載された方法のステップ、並びにその他の実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、又はハードウェア要素とソフトウェア要素との両方を含む実施形態という形態で実装され得る。好適な実施形態では、本発明はソフトウェアにおいて実装され、これは、限定はされないが、ファームウェア、常駐ソフトウェア、マイクロコードなどを含む。
上記の実施形態は、いくつかのインスタンスが既に時間フレーム内でライセンスに割り当てられており、別のインスタンスを割り当てなければならない状況の概略を説明した。以後、第1のステップとして、ライセンシング・システムがライセンスと利用インスタンスとの関連付けを算定し、続いて、関連付けられたインスタンスに基づきライセンス消費を計算する、別の状況を検討する。そのような状況のもとでは、すべてのインスタンスが既に関連付けられている限り、R値の算定はできない。これは、アルゴリズムが、例えば以前の計算期間においてライセンスに関してどれだけの容量が残ったかなど、過去の残余容量としてRを計算するべきであるということを意味する。この変形では、過去のRを算定した後、アルゴリズムは、消費インスタンスをライセンスに関連付けることに移る。各セッションに関して、アルゴリズムが、適したライセンスを発見する。ライセンスが、前の期間に関連付けられたものと同じであれば、それ以上の計算はなしに割り当てられる(前日にこの割り当てが準拠したライセンスをもたらせば、結果は今日も同じになる)。結果としてのライセンスが、前の日に使用されたものでなければ(例えば前の期間に消費セッションが生じなかった場合も)、この時点でRを検討し、
R−(消費セッション)*C*S
を計算して、したがってRを得る必要がある。最大のRを伴うライセンスを使用する。別の消費セッションがこのライセンスに割り当てられなければならない場合、
R”=R−(利用セッション)*C*S
などを、割り当てられなければならない新たなインスタンスそれぞれに関して計算する。「新たな」とは、それが前の期間内に割り当てられなかったことを意味する。
この実施形態では、保護閾値が特に重要である。それは、この第1の段階で、インスタンスは、算定を加速するために、過去のデータに基づき算定された統計パラメータに基づき割り当てられるためである。しかし、この期間の最後には、実質消費を計算して、正確な計算を行う必要がある。正確な計算を実行するとき、過去のデータに基づきインスタンスを割り当てるときに楽観的すぎたため、過去のデータに基づく算定はどのライセンスも超過使用にならなかったことを示したが、実際には、正確な計算を実行すると、割り当てによってライセンスの超過使用が生じることを、システムが発見することがあり得るであろう。このため、正確な計算の結果が予想よりも悪いと分かっても、超過使用を避けるマージンがあるよう、保護係数が望まれる。
さらなる実施形態によれば、システムは、より小さいC及び0より大きいRを備えるライセンスを選択するのではなく、最大の残余容量を有する何れかのライセンスを選択してもよい。これは、Cに基づく割り当てには、何らかの副作用があることがあるためである(例えば、大きいC及び非常に小さいSを備えるライセンスは、Cは小さいが非常に大きいSを備えるライセンスよりも好ましいことがある)。
さらに別の実施形態によれば、システムは、より小さいC及び0より大きいRを備えるライセンスを選択するのではなく、CとSとの積がより小さい何れかのライセンスを選択してもよい。この手法は、アルゴリズムにさらなる強度を提供する。これは、インスタンスが何かを消費する確率が、消費が生じた場合の費用とともに考慮され、したがって、最悪の事態、すなわちインスタンスが消費することの確率を、この最悪の事態で支払うペナルティ、すなわち平均予想消費と併せて考慮するためである。上記の手法では、各ライセンスに関するライセンス使用シグネチャはさらに、上記のSの値を含む。C及びSの両方を考慮することによって、課金の確率及び課金対象となった場合に支払う「スロット価格」両方が考慮に入れられる。これら2つの値を乗算することで、ライセンスへの関連付けについて、統計的にどの程度の費用がかかるかを、結果として導き出すことになる。
さらに別の実施形態によれば、例えば同じCの値を有する2つのライセンスなど、2つ以上の等しく適格なライセンスの中からシステムが選ぶ必要がある場合、システムは、均衡状態を解消するものとして上述した代替方法のうちの1つを使用してもよい。
さらに、本発明は、コンピュータ使用可能又はコンピュータ可読媒体からアクセス可能なコンピュータ・プログラム製品の形態をとり、コンピュータ又は任意の命令実行システムにより、又はそれに関連して使用されるプログラム・コードを提供することができる。本記載では、コンピュータ使用可能又はコンピュータ可読媒体は、命令実行システム、装置若しくはデバイスによって、又はそれに関連して使用されるプログラムを含むこと、記憶すること、伝達すること、伝播させること、又は搬送することができる任意の装置とすることができる。
図4は、特定の実施形態を実装するのに適したコンピュータ環境を示す。図4に示されているように、コンピュータ・システム400は、プロセッサ410と、メイン・メモリ420と、大容量記憶インターフェイス430と、ディスプレイ・インターフェイス440と、ネットワーク・インターフェイス450とを含む。これらのシステム・コンポーネントは、システム・バス401を使用して相互接続されている。大容量記憶インターフェイス430は、大容量記憶デバイス(ハード・ディスク・ドライブ455)をコンピュータ・システム400に接続するために使用される。リムーバブル記憶インターフェイス・ドライブ462の1つの特定のタイプは、フレキシブル・ディスク・ドライブであり、これは、フレキシブル・ディスク495に対するデータの記憶及びそこからのデータの読み取りを行うこともできるが、読み取り可能かつ任意選択で書き込み可能なCD ROM(compact disk−read only memory:コンパクト・ディスク読み取り専用メモリ)ドライブなど、多数の他のタイプのコンピュータ可読記憶媒体が想定され得る。同様に、ユーザ入力インターフェイス444が提供され、これは、マウス465及びキーボード464などのインターフェイス・デバイスからユーザ対話を受信する。さらに、プリンタ・インターフェイス446が提供され、これは、プリンタ466に信号を送信し、さらに任意選択でプリンタ466から信号を受信するとよい。
好適な実施形態によるメイン・メモリ420は、データ422、オペレーティング・システム424を含む。
コンピュータ・システム400は、周知の仮想アドレス指定メカニズムを利用し、このメカニズムは、コンピュータ・システム400のプログラムが、メイン・メモリ420及びHDD(hard disk drive:ハード・ディスク・ドライブ)455などの複数のより小さな記憶エンティティへのアクセスの代わりに、単一の大きな記憶エンティティにのみアクセスできるかのように動くことを可能にする。したがって、データ422、オペレーティング・システム424は、メイン・メモリ420に存在するよう示されているが、当業者には当然のことながら、これらの項目は、必ずしも同時に、すべて完全にメイン・メモリ420に含まれるとは限らない。なお、さらに、「メモリ」という用語は、コンピュータ・システム400の仮想メモリ全体を総称的に指すよう、本願明細書で使用される。
データ422は、コンピュータ・システム200内の任意のプログラムの入力又は出力となる任意のデータを表す。オペレーティング・システム424は、OS/400(IBM社の登録商標)として業界で既知であるマルチタスク・オペレーティング・システムである。しかし、当業者には当然のことながら、本発明の意図及び範囲は、任意の1つのオペレーティング・システムに限定されない。
プロセッサ410は、1つ以上のマイクロプロセッサ若しくは集積回路又はその両方から構成されるとよい。プロセッサ410は、メイン・メモリ420に記憶されているプログラム命令を実行する。メイン・メモリ420は、プロセッサ410がアクセスしてよいプログラム及びデータを記憶する。コンピュータ・システム400が起動すると、プロセッサ410は最初に、オペレーティング・システム424を構成するプログラム命令を実行する。オペレーティング・システム424は、コンピュータ・システム400のリソースを管理する高度なプログラムである。これらのリソースの一部は、プロセッサ410、メイン・メモリ420、大容量記憶インターフェイス430、ディスプレイ・インターフェイス440、ネットワーク・インターフェイス450、及びシステム・バス401である。
コンピュータ・システム400は、単一のプロセッサ及び単一のシステム・バスのみを含むよう示されているが、当業者には当然のことながら、本発明は、複数のプロセッサ若しくは複数のバス又はその両方を有するコンピュータ・システムを使用して実践されてもよい。さらに、好適な実施形態では、使用されるインターフェイスはそれぞれ、別個の、完全にプログラムされたマイクロプロセッサを含み、これらが、プロセッサ410から計算集中型の処理をオフロードするために使用される。なお、当業者には当然のことながら、本発明は、同様の機能を実行するためにI/Oアダプタを単に使用するコンピュータ・システムに等しく当てはまる。
ディスプレイ・インターフェイス440は、1つ以上のディスプレイ460をコンピュータ・システム400に直接接続するよう使用される。これらのディスプレイ460は、非インテリジェント(すなわちダム)ターミナルであっても、又は完全にプログラム可能なワークステーションであってもよく、これらは、システム管理者及びユーザが、コンピュータ・システム400と通信できるようにするために使用される。ただし、ディスプレイ・インターフェイス440は、1つ以上のディスプレイ460との通信をサポートするよう提供されるが、ユーザ及び他のプロセスとの必要な対話はすべてネットワーク・インターフェイス450を介して生じ得るため、コンピュータ・システム400は、ディスプレイ460を必ずしも必要としないということに注意されたい。
ネットワーク・インターフェイス450は、他のコンピュータ・システム若しくはワークステーション又はその両方(例えば図4の485)を、ネットワーク470をわたってコンピュータ・システム400に接続するために使用される。本発明は、ネットワーク接続470が現代のアナログ若しくはデジタル又はその両方の技術を使用して行われるか、又は将来の何らかのネットワーク構築メカニズムを介して行われるかにかかわらず、コンピュータ・システム400が他のコンピュータ・システム若しくはワークステーション、又はその両方に接続される方法を問わず、等しく当てはまる。さらに、多数の異なるネットワーク・プロトコルを、ネットワークを実装するために使用可能である。これらプロトコルは、コンピュータがネットワーク470で通信できるようにする専用コンピュータ・プログラムである。TCP/IP(Transmission Control Protocol/Internet Protocol:伝送制御プロトコル/インターネット・プロトコル)は、例えばイーサネット・ネットワーク上の適したネットワーク・プロトコルの例である。図のように、ネットワーク470は、システム400を2つのさらなるデバイス471及び472に接続する。これらは、上述のものに似た他のコンピュータ・システム、又はプリンタ、ルータなどの他のネットワーク対応デバイスであるとよい。本例では、ネットワーク・デバイス472は、ローカル・サーバであり、これは、モデム481を介して、ワールド・ワイド・ウェブなどのパブリック・ネットワーク480に接続されている。このパブリック・ネットワーク480によって、リモート・デバイス又はシステム485への接続が確立されるとよい。
現在のところ、本発明は、完全に機能的なコンピュータ・システムの文脈で記載されてきており、そうであり続けるが、当業者には当然のことながら、本発明は、様々な形態でプログラム製品として配布されることができ、本発明は、配布を実際に実行するために使用する信号保持媒体の特定のタイプにかかわらず、等しく当てはまるということに留意することが重要である。適した信号保持媒体の例には、フレキシブル・ディスク及びCD ROM(例えば図4の495)などの記録可能なタイプの媒体、デジタル及びアナログ通信リンクなどの伝送タイプの媒体がある。
媒体は、電子、磁気、光学、電磁気、赤外線、又は半導体システム、(若しくは装置若しくはデバイス)、又は伝播媒体とすることができる。コンピュータ可読媒体の例には、半導体又は固体メモリ、磁気テープ、リムーバブル・コンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read−only memory)、剛体磁気ディスク、及び光ディスクが含まれる。光ディスクの現在の例には、コンパクト・ディスク読み取り専用メモリ(CD−ROM)、コンパクト・ディスク読み取り/書き込み(CD−R/W:compact disk−read/write)、及びDVDが含まれる。
プログラム・コードの記憶若しくは実行又はその両方に適したデータ処理システムは、システム・バスを介してメモリ要素に直接又は間接的に結合された少なくとも1つのプロセッサを含む。メモリ要素は、プログラム・コードを実際に実行する間に用いられるローカル・メモリ、大容量記憶装置、及び、実行中にコードが大容量記憶装置から読み出されなければならない回数を減らすために少なくとも一部のプログラム・コードの一時的な記憶装置となるキャッシュ・メモリを含むことができる。
入出力、すなわちI/O(input/output)デバイス(限定はされないが、キーボード、ディスプレイ、ポインティング・デバイスなどを含む)は、直接、又は介在するI/Oコントローラを介して、システムに結合されることが可能である。
ネットワーク・アダプタもシステムに結合されて、データ処理システムが、他のデータ処理システム又はリモート・プリンタ又は記憶デバイスに、介在するプライベート又はパブリック・ネットワークを介して結合された状態となることを可能にしてもよい。モデム、ケーブル・モデム、及びイーサネット・カードが、現在利用可能なタイプのネットワーク・アダプタのごく一部である。
本発明は、ソフトウェア・ライセンスを帰属させるという文脈において記載されたが、当然のことながら、いくつかの異なるライセンス契約からの選択を必要とする任意のアクティビティの帰属を処理できる。
さらなる実施形態により、様々な異なる条件及び制限を提供するソフトウェア・ライセンスの選択肢が存在する環境に関して、過去の使用パターンに基づいて好適なライセンスを選択する方法が記載される。新たなインスタンスは、任意インスタンスがライセンスに従い課金対象となるであろう確率(C)が最も低い当該ライセンスであって、当該ライセンスに関し、新たなインスタンスが当該ライセンスに従い課金対象となるであろう確率(C)に、当該ライセンスに関して、インスタンス毎に消費されたスロットの平均数(S)を乗じ、現在の時間フレームの間に当該ライセンスに既に帰属させられたインスタンスの数を乗じると、当該ライセンスのエンタイトルメント値よりも小さい、該ライセンスに帰属させられることが好ましい。

Claims (10)

  1. プロセッサおよびメモリを含むコンピュータで実行され、特定のソフトウェア・アプリケーションの使用に対するエンタイトルメントを与える可能性がある複数のライセンスのもとで、特定の時間フレームの間、当該アプリケーションのインスタンスにエンタイトルメント・スロットを帰属させる方法であって、前記ライセンスはそれぞれ、前記時間フレームの間に当該ライセンスに帰属させられてよいスロットの最大限の数を定義するエンタイトルメント値(E)を有し、任意の所与のインスタンスは、0以上の前記スロットを消費し得るものであり、前記方法は、前記コンピュータが、
    記録されているライセンス帰属情報からライセンス使用シグネチャを判断するステップと、
    ライセンスにまだ帰属させられていないインスタンスの通知を受信するステップと、
    前記ライセンス使用シグネチャに応じて、新たな前記インスタンスを前記ライセンスのうちの1つに帰属させるステップと、
    を含み、
    ライセンス使用シグネチャを判断する前記ステップは、
    前記ライセンスそれぞれに関して、任意インスタンスが当該ライセンスに従い課金対象となるであろう確率(C)を、記録されているライセンス帰属情報から判断するステップと、
    前記ライセンスそれぞれに関して、インスタンス毎に消費されたスロットの平均数(S)を、記録されているライセンス帰属情報から判断するステップと、
    を含み、帰属させる前記ステップは、
    任意インスタンスが当該ライセンスに従い課金対象となるであろう確率(C)が最も低い何れかのライセンスであって、当該ライセンスに関して新たなインスタンスが当該ライセンスに従い課金対象となるであろう前記確率(C)に、当該ライセンスに関してインスタンス毎に消費されたスロットの前記平均数(S)を乗じ、現在の前記時間フレームの間に当該ライセンスに既に帰属させられたインスタンスの数を乗じると、当該ライセンスの前記エンタイトルメント値よりも小さい、前記ライセンスに、前記新たなインスタンスを帰属させるステップ
    を含む方法。
  2. 前記シグネチャは、典型的なライセンス使用パターンを表し、帰属させる前記ステップは、前記新たなインスタンスを前記ライセンスのうちの最も好都合なものに帰属させ、その一方で、前記ライセンスの条件に確実に準拠することを含む、請求項1に記載の方法。
  3. 前記ライセンスそれぞれに関して、任意インスタンスが当該ライセンスに従い課金対象となるであろう前記確率(C)は、各時間フレーム内にスロットが帰属させられたインスタンスの数(dN)と、同じ前記時間フレーム内に当該ライセンスを用いたインスタンスの総数(dL)との比の、過去の記録内のすべての時間フレームにわたる平均として計算される、請求項1に記載の方法。
  4. インスタンス毎に消費されたスロットの前記平均数(S)は、過去の前記記録内に含まれている各時間フレームに消費されたスロットの数(dC)と、同じ当該時間フレーム内にスロットが帰属させられたインスタンスの数(dN)との比の、前記過去の記録内のすべての時間フレームにわたる平均として計算される、請求項に記載の方法。
  5. 個々の前記エンタイトルメント値(E)に所定の保護閾値(P)が乗じられ、その結果、前記エンタイトルメント値(E)は、各ライセンスによって定義されている厳密な前記最大限よりも小さくなる、請求項に記載の方法。
  6. 前記時間フレームは1日である、請求項1〜に記載の方法。
  7. 特定のインスタンスによって消費されるスロットの前記数は、前記インスタンスが実行されるプロセッサの数によって決まる、請求項1〜に記載の方法。
  8. 請求項1〜のうちの何れか1項に記載の方法の前記ステップを、コンピュータに実行させる、コンピュータ・プログラム。
  9. 請求項に記載のコンピュータ・プログラムがエンコードされている、コンピュータ可読記録媒体。
  10. 請求項1〜の何れか1項に記載の方法の前記ステップを実行する手段を含むシステム。
JP2012523269A 2009-08-06 2010-07-16 ライセンス使用を最適化する方法及びシステム Expired - Fee Related JP5643307B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP09167398.8 2009-08-06
EP09167398 2009-08-06
PCT/EP2010/060306 WO2011015441A1 (en) 2009-08-06 2010-07-16 A method and system for optimising license use

Publications (2)

Publication Number Publication Date
JP2013501281A JP2013501281A (ja) 2013-01-10
JP5643307B2 true JP5643307B2 (ja) 2014-12-17

Family

ID=42767975

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012523269A Expired - Fee Related JP5643307B2 (ja) 2009-08-06 2010-07-16 ライセンス使用を最適化する方法及びシステム

Country Status (4)

Country Link
US (1) US9672545B2 (ja)
JP (1) JP5643307B2 (ja)
CN (1) CN102473252B (ja)
WO (1) WO2011015441A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8196210B2 (en) * 2008-03-10 2012-06-05 Microsoft Corporation Software license compliance
US9672545B2 (en) 2009-08-06 2017-06-06 International Business Machines Corporation Optimizing license use for software license attribution
US8561131B1 (en) * 2011-06-30 2013-10-15 Crimson Corporation Allocating products to licenses on a computing device
US8528100B2 (en) * 2011-09-17 2013-09-03 International Business Machines Corporation Software license reconciliation within a cloud computing infrastructure
US20130262265A1 (en) * 2012-03-27 2013-10-03 Futurewei Technologies, Inc. System and Method for Managing Software Licenses
US9122676B2 (en) * 2012-10-12 2015-09-01 International Business Machines Corporation License reconciliation with multiple license types and restrictions
US9672334B1 (en) 2016-04-25 2017-06-06 Flexera Software Llc License entitlement assignment ambiguity resolution
US10616311B2 (en) 2016-06-03 2020-04-07 At&T Intellectual Property I, L.P. Facilitating management of communications systems
JP7216619B2 (ja) * 2019-06-25 2023-02-01 シャープ株式会社 ライセンス管理システム、ライセンス管理方法、及びライセンス管理プログラム
US11379561B2 (en) * 2019-07-15 2022-07-05 At&T Intellectual Property I, L.P. License usage management

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905860A (en) * 1996-03-15 1999-05-18 Novell, Inc. Fault tolerant electronic licensing system
JP4242458B2 (ja) * 1997-07-15 2009-03-25 新光電気工業株式会社 ライセンス管理システム
GB2346989A (en) * 1999-02-19 2000-08-23 Ibm Software licence management system uses clustered licence servers
JP2001222424A (ja) * 2000-02-08 2001-08-17 Fujitsu Ltd ソフトウェアライセンス管理装置,ソフトウェアライセンス管理方法およびソフトウェアライセンス管理用プログラム記録媒体
JP3959516B2 (ja) * 2001-08-06 2007-08-15 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワークシステム、cpu資源プロバイダ、クライアント装置、処理サービスの提供方法、およびプログラム
JP2003323224A (ja) * 2002-04-30 2003-11-14 Daikin Ind Ltd ライセンス管理システムおよび方法、情報処理装置および方法、並びにプログラム
WO2003093961A2 (en) * 2002-05-02 2003-11-13 Shieldip, Inc. Method and apparatus for protecting information and privacy
US7565325B2 (en) * 2002-07-09 2009-07-21 Avaya Technology Corp. Multi-site software license balancing
US7966520B2 (en) * 2002-08-30 2011-06-21 Avaya Inc. Software licensing for spare processors
JP4061163B2 (ja) * 2002-09-30 2008-03-12 富士通株式会社 ソフトウェアライセンス管理装置、ソフトウェアライセンス管理プログラム、ソフトウェアライセンス管理方法およびソフトウェアライセンス管理システム
EP1414194B1 (en) * 2002-10-22 2006-12-13 Hewlett-Packard Company, A Delaware Corporation Method and Apparatus for operating a telecommunication platform
US7574406B2 (en) * 2003-03-31 2009-08-11 Satyam Computer Services Limited Of Mayfair Centre System and method maximizing video license utilization using billboard services
WO2004109470A2 (en) * 2003-06-06 2004-12-16 Computer Associates Think, Inc. System and method for distribution of software licenses in a networked computing environment
US8898657B2 (en) * 2003-10-03 2014-11-25 Cyberlink Corp. System and method for licensing software
US8229858B1 (en) * 2004-09-30 2012-07-24 Avaya Inc. Generation of enterprise-wide licenses in a customer environment
US8781970B2 (en) * 2005-07-12 2014-07-15 International Business Machines Corporation System, method and program product to determine resolution when software installed on a computer is not properly licensed
JP4865418B2 (ja) * 2006-06-23 2012-02-01 キヤノン株式会社 ライセンス管理システム、管理サーバ装置、およびその制御方法、プログラム
US7634561B2 (en) * 2006-10-26 2009-12-15 International Business Machines Corporation Application usage metering management system
EP2078273A1 (en) 2006-11-02 2009-07-15 International Business Machines Corporation A method, system and computer program for metering usage of software products with a dynamically optimised license use
US8725647B2 (en) * 2008-03-27 2014-05-13 Ca, Inc. Method and system for determining software license compliance
US8320948B2 (en) * 2009-03-25 2012-11-27 Futurewei Technologies, Inc. System and method for probability-based resource allocation in a wireless communications system
US8260715B2 (en) * 2009-07-13 2012-09-04 International Business Machines Corporation Software license usage amongst workgroups using software usage data
US9672545B2 (en) 2009-08-06 2017-06-06 International Business Machines Corporation Optimizing license use for software license attribution
US9065825B2 (en) * 2010-02-05 2015-06-23 International Business Machines Corporation Method and system for license management

Also Published As

Publication number Publication date
WO2011015441A1 (en) 2011-02-10
US9672545B2 (en) 2017-06-06
CN102473252B (zh) 2015-12-09
CN102473252A (zh) 2012-05-23
JP2013501281A (ja) 2013-01-10
US20120130911A1 (en) 2012-05-24

Similar Documents

Publication Publication Date Title
JP5643307B2 (ja) ライセンス使用を最適化する方法及びシステム
JP5785434B2 (ja) 仮想化環境のための管理システム、方法、およびコンピュータ・プログラム
CN100487659C (zh) 用于优化分段资源分配的方法和设备
US9009294B2 (en) Dynamic provisioning of resources within a cloud computing environment
US9218196B2 (en) Performing pre-stage replication of data associated with virtual machines prior to migration of virtual machines based on resource usage
US20080140469A1 (en) Method, system and program product for determining an optimal configuration and operational costs for implementing a capacity management service
US20080270153A1 (en) Service oriented architecture (soa) lifecycle model migration
US8635618B2 (en) Method and system to identify conflicts in scheduling data center changes to assets utilizing task type plugin with conflict detection logic corresponding to the change request
US9294236B1 (en) Automated cloud resource trading system
US8874457B2 (en) Concurrent scheduling of plan operations in a virtualized computing environment
US8516495B2 (en) Domain management and integration in a virtualized computing environment
US20110145094A1 (en) Cloud servicing brokering
US9985848B1 (en) Notification based pricing of excess cloud capacity
US9240025B1 (en) Dynamic pricing of network-accessible resources for stateful applications
US20100049851A1 (en) Allocating Resources in a Distributed Computing Environment
US20080281652A1 (en) Method, system and program product for determining an optimal information technology refresh solution and associated costs
CN103380423A (zh) 用于私人云计算的系统和方法
US11416782B2 (en) Dynamic modification of interruptibility settings for network-accessible resources
Kochut et al. Evolution of the IBM Cloud: Enabling an enterprise cloud services ecosystem
Westermann et al. Using software performance curves for dependable and cost-efficient service hosting
Ciavotta et al. Architectural design of cloud applications: A performance-aware cost minimization approach
Beaty et al. Economics of cloud computing for enterprise IT
US20090164285A1 (en) Auto-cascading clear to build engine for multiple enterprise order level parts management
Barbosa et al. Impact of pay-as-you-go cloud platforms on software pricing and development: a review and case study
JP2022094945A (ja) コンピュータ実装方法、システム及びコンピュータプログラム(バッチジョブのスケジューリングの最適化)

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120522

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140304

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140603

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140905

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140905

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141014

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141030

R150 Certificate of patent or registration of utility model

Ref document number: 5643307

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees