專利名稱:用于優(yōu)化許可使用的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及許可管理的領(lǐng)域,并且更具體地,涉及軟件許可歸屬(attribution)。
背景技術(shù):
軟件通常受到版權(quán)法的保護(hù),并且對于其版權(quán)不屬于用戶財產(chǎn)的軟件的任何使用是依賴于來自版權(quán)所有者的許可。此類許可通常對于軟件可以被使用的方式施加約束,尤其是對可以同時在給定系統(tǒng)上使用軟件的并發(fā)用戶數(shù)量、可以在其上安裝軟件的機(jī)器數(shù)量等方面具有約束。實(shí)際上,通常需要對許可進(jìn)行付費(fèi),并且在某些情況下,正在進(jìn)行的支付可能需要依賴于使用軟件的程度和特征。另外,在其中涉及超時使用導(dǎo)致特定許可不再滿意地覆蓋軟件使用的某些情況下,可以獲取備選許可項(xiàng)。一方面在企業(yè)環(huán)境中具有大量用戶和機(jī)器,另一方面存在各種不同支付或者版稅機(jī)制,特定許可與特定使用之間的關(guān)聯(lián)變得越來越復(fù)雜。在此情況下,已知的是提供功能為監(jiān)視軟件使用的許可管理軟件。在許可管理領(lǐng)域中的近期發(fā)明應(yīng)用多種不同方法,以將軟件安裝或者使用與針對所討論軟件的最適當(dāng)?shù)亩鄠€有效許可相關(guān)聯(lián)。這些方法的目的在于優(yōu)化許可使用以便在不必過度采購(over-procure)的情況下保持與條款和條件相一致。W00805280A1公開了一種用于控制和計量在計算機(jī)上的軟件產(chǎn)品使用的方法和相應(yīng)裝置。當(dāng)對于相同產(chǎn)品可以獲得多個許可時,提出了一種用于確定最佳許可的方法以便將許可的利用最大化。這種確定基于影響最佳可用許可選擇的預(yù)定參數(shù)集合。許可存儲在目錄上,該目錄具有指示產(chǎn)品使用約束的相關(guān)聯(lián)參數(shù)列表。根據(jù)預(yù)定的參數(shù)優(yōu)化標(biāo)準(zhǔn)來定購許可,從而當(dāng)接收請求時,許可管理器可以容易地找到最佳許可,即,該許可適合于被請求的使用,具有最高使用約束。一個附加特征在于,根據(jù)一個或者多個層級來定購許可,每個層級是相對于根據(jù)預(yù)定優(yōu)先級規(guī)則的其他層級而排序的。在兩個許可具有類似特征的情況下,這種現(xiàn)有技術(shù)的方法應(yīng)用一種簡單方案、嘗試在許可之間平均地分配使用會話(session)。全部這些方法的缺陷在于,選擇是基于固定規(guī)則通過嘗試做出最佳選擇而驅(qū)動。 在實(shí)際情況下,軟件使用可以在很大程度上不同于規(guī)則中假定的邏輯,而該方法可以做出導(dǎo)致不一致或者非優(yōu)化許可使用的選擇。
發(fā)明內(nèi)容
根據(jù)本發(fā)明,提供了 一種根據(jù)所附獨(dú)立權(quán)利要求1的、在多個許可的情況下用于歸屬權(quán)利時隙的方法,根據(jù)所附權(quán)利要求10的計算機(jī)程序,根據(jù)所附權(quán)利要求11的計算機(jī)可讀介質(zhì),以及根據(jù)所附權(quán)利要求12的系統(tǒng)。在從屬權(quán)利要求中定義了優(yōu)選實(shí)施方式?;谘芯扛綀D和詳細(xì)描述,本發(fā)明的進(jìn)一步優(yōu)勢對于本領(lǐng)域技術(shù)人員將變得清晰。期望的是,在此可以結(jié)合任何附加優(yōu)勢。
現(xiàn)在將參考附圖借助于示例方式描述本發(fā)明的實(shí)施方式,在附圖中相同的參考表示相似的元件,并且在附圖中圖1是本發(fā)明第一優(yōu)選實(shí)施方式的方法步驟的示意性表示;圖2是本發(fā)明第二優(yōu)選實(shí)施方式的方法步驟的示意性表示;圖3示出了特定實(shí)施方式的功能元件的示意性框圖;以及圖4示出了適用于實(shí)現(xiàn)特定實(shí)施方式的計算機(jī)環(huán)境。
具體實(shí)施例方式參考上文,期望提供一種針對給定動作實(shí)例(諸如,運(yùn)行一個軟件的實(shí)例)來動態(tài)選擇最佳適用許可的方法,以便當(dāng)應(yīng)用開始時可以向應(yīng)用分配那時的最佳許可。在應(yīng)用的生命期期間,最佳許可可以改變或者所使用的許可可能不再適用。下文是某些示例-在應(yīng)用開始時所使用的許可在特定時間被釋放,因而該許可變?yōu)樽罴芽捎迷S可;-原始許可不再被使用,因?yàn)樵撛S可以某種方式被改變,例如向該許可添加附加約束,因而其不再適合于正在其上運(yùn)行應(yīng)用的操作系統(tǒng);-硬件配置或者管理層級中的某些變化,例如a.主控應(yīng)用的OS被從一個部門移動至另一個,因而使得原始許可不再適用或者使得另一許可成為最佳可用許可;b.其中應(yīng)用運(yùn)行的主控OS的硬件(HW)被升級(在不停止應(yīng)用的情況下),因而使得許可不再適合。存在對于如下內(nèi)容的改變的簡單示例許可屬性、硬件(即,資源)屬性、組織屬性 (例如,群組屬性)或者在這些實(shí)體中任意項(xiàng)之間的鏈路的屬性。這些改變可以意味著另一許可變?yōu)樽罴言S可。在下文中借助于示例,在完整許可解譯系統(tǒng)的上下文中描述本發(fā)明的實(shí)施方式, 然而應(yīng)當(dāng)理解,本發(fā)明可以在更簡單的環(huán)境或者不同環(huán)境中等效地實(shí)施,或者作為完整的單獨(dú)方案實(shí)施。通常,組織被劃分為表示企業(yè)的地理或者組織形式劃分的層級。在這些層級的不同水平上,可能需要或者分配許可。出于此原因,當(dāng)確定哪個許可是分配軟件實(shí)例的最佳許可時,優(yōu)選地考慮這些層級。借助于示例方式,許可解譯系統(tǒng)可以接受如下輸入基于層級的許可組織的抽象 一個層級可以是地理層級(大陸、區(qū)域、州、城市…),而另一層級可以是組織層級(研發(fā)實(shí)驗(yàn)室、代碼研發(fā)團(tuán)隊(duì)、Java研發(fā)部門…)。定義分組層級的集合(其中每個分組是上述枚舉的樣本實(shí)體)。每個層級具有其自身的標(biāo)識符,該標(biāo)識符有可能區(qū)別作為每個層級的部分的分組。層級中的分組可以具有相同層級中的父親,并且可以(作為孩子)在任意時間點(diǎn)被鏈接至其他層級中的最多一個組。層級標(biāo)識符生成層級的分級一個層級中的分組(作為孩子)可以僅關(guān)聯(lián)于較高分級的層級的分組。另一層級包含虛擬層每個節(jié)點(diǎn)是此類層級的根,其孩子可以是共享的池、邏輯劃分(LPAR)、vm、操作系統(tǒng)和容器(如由IBM WebSphere 所提供)。這種層級中的每個成員都是資源。資源被鏈接至其父親資源(根作為節(jié)點(diǎn))并且還可以被鏈接至每個分組層級的最多一個分組。資源可以具有一個父親,并且可以在任意給定時間點(diǎn)被鏈接至每個層級的一個分組,這意味著在兩個不同的時間,其可以具有兩個不同資源父親或者被鏈接至相同層級中的分組。資源、分組或者資源和分組之間的每個鏈接利用有效性時間間隔標(biāo)記,其意味著在給定時間段期間例如部門許可管理器是研發(fā)實(shí)驗(yàn)室的部分、并且在進(jìn)一步的時間段期間例如已經(jīng)被移至研究實(shí)驗(yàn)室?;蛘撸僮飨到y(tǒng)已經(jīng)在機(jī)器A上駐留了給定時段,并且例如出于升級而已經(jīng)被移至機(jī)器B。每個資源或者分組可以與特定屬性相關(guān)聯(lián)。屬性依賴于許可系統(tǒng)用以獲取關(guān)于每個實(shí)體的有用數(shù)據(jù)的能力例如,節(jié)點(diǎn)的處理器的數(shù)量、操作系統(tǒng)的存儲器的量、部門中雇員的數(shù)量。采集這些屬性是由于定價模塊可以潛在地需要它們以計算已經(jīng)使用了多少許可 (例如,特定許可需要在虛擬層級的每個水平上的容量信息以計算軟件使用)。算法的另一輸入是對于許可系統(tǒng)已知的用戶集合。這些用戶可以是安裝或者執(zhí)行軟件的用戶,并且還可以用于將許可消費(fèi)僅限制于企業(yè)雇員的子集。每個用戶可以利用附加屬性來標(biāo)記,該附加屬性描述許可系統(tǒng)能夠獲取的用戶的任何歸屬、以及哪些對于某些定價模塊在許可計算中是有用的。另一輸入是許可集合,每個許可與由許可系統(tǒng)支持的一個定價模塊相關(guān)聯(lián)。每個許可可以潛在地被劃分為多個分布,即,許可權(quán)利的劃分,每個與允許使用許可的不同主題相關(guān)聯(lián)。每個分布具有允許使用此分布(它們作為分組或者資源)的目標(biāo)集合,并且針對這些目標(biāo)中的每一個來提供一個或者多個關(guān)聯(lián)有效性間隔,其意味著僅允許目標(biāo)在這些時間間隔中使用許可。另外,每個分布可以與全部用戶或者用戶的子集相關(guān)聯(lián),由此限制可以使用該分布的用戶。另外,這些關(guān)聯(lián)中的每個與詳細(xì)描述關(guān)聯(lián)有效性的一個或者多個時間間隔相爭議??梢韵胂笤S可形式中的不計其數(shù)的變化,例如-可用于研發(fā)實(shí)驗(yàn)室中任何雇員的許可(目標(biāo)是表示研發(fā)實(shí)驗(yàn)室的分組,而不存在用戶限制);-可用于意大利內(nèi)的任何雇員的許可(目標(biāo)是表示地理位置意大利的分組。不存在用戶限制);-僅在特定硬件系統(tǒng)(諸如特定PC)上可用的許可。目標(biāo)是表示特定硬件的資源, 而不存在用戶限制;-僅由指明用戶可用的許可。目標(biāo)是整個企業(yè)但是存在用戶限制,僅將許可與一個用戶關(guān)聯(lián)。每個許可和分布具有相關(guān)屬性,該相關(guān)屬性是當(dāng)定義許可和分布時由用戶輸入并且由關(guān)聯(lián)于許可的定價模塊所需的值、以用于計算許可使用和一致性。這些示例是應(yīng)用在其上執(zhí)行的處理器的數(shù)量、或者針對許可(諸如層許可)的多個數(shù)量,其中每個數(shù)量是用于不同的硬件層等。為確保對許可的使用的良好關(guān)聯(lián),許可系統(tǒng)支持非消費(fèi)許可的概念如果用戶需要獨(dú)立于軟件使用量而為許可支付相同額度,則許可(或者定價模塊)可以被標(biāo)示為“非消費(fèi)型”。例如,針對特定研發(fā)組使用的給定產(chǎn)品的站點(diǎn)許可可以是非消費(fèi)許可的良好示例 當(dāng)獲得許可時實(shí)驗(yàn)室為許可付費(fèi),并且一旦支付則可以在無需支付額外費(fèi)用、并且在沒有過度使用許可危險的情況下,每當(dāng)需要時使用該產(chǎn)品。如果此類許可針對產(chǎn)品可用則其必須被認(rèn)為是優(yōu)選許可,這是因?yàn)榭梢栽跊]有過度使用風(fēng)險或者無需支付額外費(fèi)用(諸如, 在每次使用許可時付費(fèi))的情況下,將使用與該許可相關(guān)聯(lián)。此實(shí)施方式的許可解譯系統(tǒng)執(zhí)行以下步驟1至6 1.導(dǎo)航資源和分組層級,從源起軟件使用的資源開始,在每個時間間隔提取關(guān)聯(lián)于生成消費(fèi)會話的產(chǎn)品以及從該資源可達(dá)的許可分布的集合,即,對此的軟件示例可以是必須關(guān)聯(lián)使用時隙。資源層級是第一個將被訪問的。每個資源的父親在資源自身之后被訪問。在多個父親的情況下,它們可以按時間順序被訪問(然而,這對于算法校正而言并非嚴(yán)格需要)。 在訪問資源的同時,算法采集從每個資源可達(dá)的分組的列表。在完成資源層級的訪問之后, 算法移至分組層級,從具有較低分級(即,最高id)的層級開始。在訪問期間,總是維護(hù)可達(dá)時間間隔。2.基于用戶限制來選擇每個許可的有效性時間。如果許可(或者分布)不具有用戶限制,則該許可可以在任意時間與消費(fèi)會話相關(guān)聯(lián)。否則許可(或者分布)不能在消費(fèi)會話用戶沒有與許可(或分布)相關(guān)聯(lián)的時段內(nèi)被關(guān)聯(lián)。此步驟也可以在步驟1之前執(zhí)行,這是因?yàn)閮烧呤仟?dú)立的。3.對于可以與消費(fèi)會話相關(guān)聯(lián)的全部許可(或者分布),詢問定價模塊是否可以真正分配會話以及在什么時間間隔內(nèi)分配。存在向?qū)⒈魂P(guān)聯(lián)的消費(fèi)會話施加附加約束的多個定價模塊,諸如僅當(dāng)指定的第二產(chǎn)品也被安裝在機(jī)器上時允許消費(fèi)會話與許可(或者分布)相關(guān)聯(lián)、否則不能使用許可的定價模塊。因而,僅當(dāng)在機(jī)器上還安裝了所引用產(chǎn)品的時間間隔期間,關(guān)聯(lián)才有可能。4. 一旦算法獲得了將消費(fèi)會話與相關(guān)時間間隔相關(guān)聯(lián)的許可的列表,則算法優(yōu)選非消費(fèi)許可。5.如果沒有找到有效許可,則算法基于目標(biāo)約束搜索標(biāo)記為“默認(rèn)”并且針對到達(dá)能力在時間間隔從全部層級的根可達(dá)的許可(或者分布)。與源起消費(fèi)會話的產(chǎn)品相關(guān)聯(lián)的最近的許可(或者分布)被認(rèn)為是用于關(guān)聯(lián)的第一個有效許可。6.如果(因?yàn)樵S可中的兩個被關(guān)聯(lián)于相同的資源或者分組)對于給定時間間隔獲得兩個以上的許可(或者分布),則算法對于使用許可(或者分布)而言更優(yōu)選安裝許可。應(yīng)當(dāng)注意,用于自動解譯、選擇和應(yīng)用許可項(xiàng)的其他方法對于普通技術(shù)人員是易見的,并且這些方法與所附權(quán)利要求書中定義的本發(fā)明同樣地相一致。由此,所描述的許可管理系統(tǒng)旨在無需針對每個許可考慮期望消費(fèi)的情況下在許可之間平均地分配使用會話。然而,本發(fā)明基于如下實(shí)現(xiàn)許可管理系統(tǒng)已經(jīng)具有包含軟件目錄和使用信息的數(shù)據(jù)庫。數(shù)據(jù)可以追溯至數(shù)月前、甚至數(shù)年前。最近的歷史數(shù)據(jù)是典型使用模式的良好指示符,并且可以假定在任意特定日的軟件使用可能會匹配于在過去一周、兩周或者任意其他適當(dāng)近期時段內(nèi)觀察到的模式。許可管理系統(tǒng)使用關(guān)于在組織的各種分支中通常使用多少軟件實(shí)例、以及適用于任何特定軟件的許可的軟件使用的形式的知識,以便能夠以優(yōu)化方式在許可之間分布當(dāng)前使用,針對每個使用選擇最適合的許可以便優(yōu)化最為“方便”的許可的使用并確保沒有許可出現(xiàn)不兼容。由此,如果存在兩個安裝或者使用許可(或者分布),或者實(shí)際上有必要在任意其他上下文中在兩個許可之間進(jìn)行選擇,則算法使用歷史使用數(shù)據(jù)來理解哪個是用以使用的最佳許可。邏輯是基于從系統(tǒng)隨著時間而累積的數(shù)據(jù)獲得的統(tǒng)計指示符。由此,提供一種方法用于在特定時間幀期間、在多個軟件許可潛在地向所述軟件的實(shí)例提供對于所述特定軟件提供權(quán)限的情況下,歸屬權(quán)利時隙,其中每個所述許可具有定義可以用于在所述時間幀期間可以被歸屬于所述許可的最大數(shù)量時隙的權(quán)利值(E),所述方法包括步驟從記錄的許可歸屬信息確定許可使用簽名;接收實(shí)例尚未歸屬于許可的通知;以及按照所述許可使用簽名的函數(shù),將新的實(shí)例歸屬于所述許可之一。優(yōu)選地,模型表示典型許可使用模式,以及其中所述歸屬步驟包括將所述新的實(shí)例歸屬于最為方便的所述許可同時確保與其條款的一致性。時間幀可以是一個或者多個小時、天、周等,或者是在所討論許可中定義的任何其他時段。如果期望,則時間幀可以是在許可中定義的時段的片段。時隙可以按需在時間幀之間分布,并且未使用的時間幀被移至相同許可時段內(nèi)的稍后時間幀。時間幀可以選擇為適于相同軟件的各個許可的時段的最小公分母(commondenominator)。出于以下示例的目的,假定存在從功能點(diǎn)角度覆蓋相同軟件的多個許可。這些許可中的每個許可定義可以在給定日中消費(fèi)的使用時隙E (權(quán)利)的數(shù)量,其中每個使用時隙對應(yīng)于在單處理器上執(zhí)行一次軟件,即,一個軟件實(shí)例。其中相同軟件在多處理器系統(tǒng)上運(yùn)行一次,消費(fèi)的時隙數(shù)量可以乘以該系統(tǒng)中的處理器的數(shù)量。即,由特定實(shí)例消費(fèi)的時隙數(shù)量可以依賴于在其上執(zhí)行該實(shí)例的處理器的數(shù)量。特定許可可能需要僅在給定日第一次執(zhí)行時消費(fèi)時隙,而歸屬于相同許可的任何后續(xù)執(zhí)行只是落入相同時隙。自然地,可以想到符合這些思路的多種變形和置換。可以考慮如下值dC=對于給定許可,在特定日消費(fèi)的時隙總數(shù),如從歷史使用數(shù)據(jù)中確定的那些。dN =對于給定許可,歸屬于在特定日的許可的計費(fèi)軟件實(shí)例的數(shù)量。計費(fèi)軟件實(shí)例是產(chǎn)生至少一個時隙的消費(fèi)的實(shí)例。dL =對于給定許可,歸屬于在特定日的許可的軟件實(shí)例的數(shù)量。此值考慮全部歸屬的實(shí)例、它們是否產(chǎn)生時隙消費(fèi)。應(yīng)當(dāng)注意,對于給定許可,dN將總是小于或等于dL。d-2 日
權(quán)利要求
1.一種在特定時間幀期間在多個許可潛在地向應(yīng)用實(shí)例的特定軟件應(yīng)用使用提供權(quán)利的情況下的、用于歸屬權(quán)利時隙的方法,其中每個所述許可具有權(quán)利值(E),所述權(quán)利值用于定義在所述時間幀期間可以被歸屬于所述許可的時隙的最大數(shù)量,以及其中任何給定實(shí)例可以消費(fèi)在0至無限之間數(shù)量的所述時隙,所述方法包括以下步驟從所記錄許可歸屬信息確定許可使用簽名; 接收實(shí)例尚未被歸屬于許可的通知;以及按照所述許可使用簽名的函數(shù)將所述新的實(shí)例歸屬于所述許可中的一個。
2.根據(jù)權(quán)利要求1所述的方法,其中所述簽名表示典型許可使用模式,以及其中所述歸屬步驟包括將所述新的實(shí)例歸屬于最方便的所述許可,同時確保與所述許可的條款相一致。
3.根據(jù)權(quán)利要求1或2所述的方法,其中確定許可使用簽名的所述步驟包括以下步驟從所記錄許可歸屬信息確定針對每個所述許可的、任意實(shí)例根據(jù)所述許可將應(yīng)支付的概率(C);以及從所記錄許可歸屬信息確定針對每個所述許可的每實(shí)例所消耗時隙的平均數(shù)量(S);以及其中所述歸屬步驟包括以下步驟將所述新的實(shí)例歸屬于如下許可,所述許可具有任意實(shí)例根據(jù)所述許可將應(yīng)支付的最低概率(C),以及其中針對所述許可的新的實(shí)例根據(jù)所述許可將應(yīng)支付的所述概率(C)乘以針對所述許可的每實(shí)例所消耗的時隙的所述平均數(shù)量( 乘以在本時隙期間已經(jīng)歸屬于所述許可的實(shí)例數(shù)量的數(shù)量,小于針對所述許可的所述權(quán)利值。
4.根據(jù)權(quán)利要求3所述的方法,其中針對每個所述許可的、任意實(shí)例根據(jù)所述許可將應(yīng)支付的所述概率(C)計算為跨越在所述歷史記錄中包括的每個時間幀上消耗的時隙數(shù)量(dC)、以及時隙歸屬于相同時間幀中的實(shí)例的數(shù)量(dN)之間的比率的所述歷史記錄中的全部時間幀的平均。
5.根據(jù)權(quán)利要求3或4所述的方法,其中每實(shí)例所消耗時隙的所述平均數(shù)量( 優(yōu)選地計算為,跨越時隙歸屬于每個時間幀的實(shí)例的數(shù)量(dN)和在所述相同時間幀中具有所述許可的實(shí)例總數(shù)(dN)之間比率的所述歷史記錄中全部時間幀的平均。
6.根據(jù)權(quán)利要求3、4或者5所述的方法,其中相應(yīng)權(quán)利值(E)乘以預(yù)定義的保護(hù)閾值 (P),從而所述權(quán)利值(E)變得小于由每個許可定義的嚴(yán)格最大值。
7.根據(jù)前述權(quán)利要求中任一項(xiàng)所述的方法,其中所述時間幀是一天。
8.根據(jù)前述權(quán)利要求中任一項(xiàng)所述的方法,其中所述通知由在其上運(yùn)行所述應(yīng)用的操作系統(tǒng)生成。
9.根據(jù)前述權(quán)利要求中任一項(xiàng)所述的方法,其中由特定實(shí)例消費(fèi)的時隙的數(shù)量依賴于在其上執(zhí)行所述實(shí)例的處理器的數(shù)量。
10.一種包括指令的計算機(jī)程序,當(dāng)所述計算機(jī)程序在計算機(jī)上執(zhí)行時,執(zhí)行根據(jù)權(quán)利要求1至9中任一項(xiàng)所述方法的步驟。
11.一種其上編碼有根據(jù)權(quán)利要求10的計算機(jī)程序的計算機(jī)可讀介質(zhì)。
12.一種包括適用于執(zhí)行根據(jù)權(quán)利要求1至9中任一項(xiàng)所述方法的步驟的裝置的系統(tǒng)。
全文摘要
對于存在對提供各種不同條款和約束的軟件許可的選擇的環(huán)境,描述了一種基于歷史使用模式來選擇優(yōu)選許可的方法。優(yōu)選地,新的實(shí)例被歸屬于這樣的許可,該許可具有任意實(shí)例根據(jù)該許可將應(yīng)支付的最低概率(C),并且其中針對該許可的新的實(shí)例根據(jù)該許可將應(yīng)支付的概率(C)乘以針對該許可的每實(shí)例所消耗實(shí)例的平均數(shù)量(S)乘以在本時間幀期間歸屬于該許可的實(shí)例數(shù)量的數(shù)量,小于針對該許可的權(quán)利值。
文檔編號G06Q10/00GK102473252SQ201080034590
公開日2012年5月23日 申請日期2010年7月16日 優(yōu)先權(quán)日2009年8月6日
發(fā)明者A·佩龍, B·帕斯托雷利, S·麥克萊倫 申請人:國際商業(yè)機(jī)器公司