Efficient automatic population of downgrade rights of licensed software

US11263002B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11263002-B2
Application numberUS-202017096657-A
CountryUS
Kind codeB2
Filing dateNov 12, 2020
Priority dateMay 3, 2019
Publication dateMar 1, 2022
Grant dateMar 1, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A software model specification for a software package can be associated with representation of a software downgrade definition. The software model specification can include a publisher of the software package, an application title of the software package, and the version of the software package. One or more entitlements for the software package can be obtained. Based on the software downgrade definition being associated with the software model specification, the software downgrade definition can be associated with the entitlement(s). Compliance of the installations of the software package with the entitlement(s) can be calculated, where the software downgrade definition can cause each of the entitlement(s) to be applicable to the installations of the version of the software package or one or more earlier versions of the software package.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: identifying installations of a software package on one or more computing devices; and calculating compliance of the installations by allocating an entitlement corresponding to a software license for the software package to each installation of the installations, wherein allocating a first entitlement to a first installation comprises: identifying a group of associated entitlements for the software package; selecting a closest-match entitlement of the group of associated entitlements based at least in part on a software downgrade definition associated with each associated entitlement of the group of associated entitlements, wherein the closest-match entitlement comprises a smallest number of applicable versions of the software package of the group of associated entitlements, wherein the applicable versions of the software package are specified by the software downgrade definition associated with each associated entitlement of the group of associated entitlements; determining whether a first software license for the software package associated with the closest-match entitlement is available; in response to determining that the first software license associated with the closest-match entitlement is available, updating metric data to indicate that the first software license associated with the closest-match entitlement has been allocated to the first installation; in response to determining that the first software license associated with the closest-match entitlement is not available, selecting a minimum entitlement of the group of associated entitlements, wherein the minimum entitlement comprises a next smallest number, greater than the smallest number, of applicable versions of the software package of the group of associated entitlements; and in response to determining that a second software license of the software package associated with the minimum entitlement is available, updating the metric data to indicate that the second software license associated with the minimum entitlement has been allocated to the first installation. 2. The method of claim 1 , comprising determining an installed version of the software package for the first installation. 3. The method of claim 2 , wherein each associated entitlement of the group of associated entitlements is associated with the installed version of the software package. 4. The method of claim 2 , wherein the closest-match entitlement comprises applicability for only the installed version of the software package. 5. The method of claim 1 , determining the software downgrade definition associated with each associated entitlement based at least in part on software upgrades or software downgrades supported by the associated entitlement. 6. The method of claim 5 , comprising: determining relationships between discovery maps, wherein each discovery map of the discovery maps comprises version information associated with the software package; and determining the software upgrades or the software downgrades supported by each associated entitlement based at least in part on the determined relationships. 7. The method of claim 1 , comprising generating a compliance report of the installations of the software package based at least in part on the metric data, wherein the compliance report indicates whether any software license is available for the first installation of the software package. 8. A system comprising: one or more processors; and non-transitory memory comprising instructions executable by the one or more processors, wherein the instructions comprise instructions to perform operations comprising: identifying installations of a software package on one or more computing devices; and calculating compliance of the installations, wherein calculating the compliance of the installations comprises: allocating an entitlement corresponding to a software license for the software package to each installation of the installations, wherein allocating a first entitlement to a first installation comprises: identifying a group of associated entitlements for the software package; determining an installed version of the software package for the first installation; selecting a minimum entitlement of the group of associated entitlements based at least in part on a software downgrade definition associated with each associated entitlement of the group of associated entitlements, wherein the minimum entitlement comprises an available software license with a smallest number of applicable versions of the software package of the group of associated entitlements, wherein the applicable versions of the software package are specified by the software downgrade definition associated with each associated entitlement of the group of associated entitlements; and updating metric data to indicate that the minimum entitlement has been allocated to the first installation; and allocating a second entitlement to a second installation having the installed version of the software package, wherein allocating the second entitlement to the second installation comprises: identifying the group of associated entitlements for the software package; determining that no additional software license associated with the minimum entitlement is available; selecting a second minimum entitlement, wherein the second minimum entitlement comprises a second available software license with a second smallest number, greater than the smallest number, of applicable versions of the software package of the group of associated entitlements; and updating the metric data to indicate that the second minimum entitlement has been allocated to the second installation. 9. The system of claim 8 , wherein each associated entitlement of the group of associated entitlements is associated with the installed version of the software package. 10. The system of claim 8 , wherein calculating the compliance of the installations comprises attempting to allocate a third entitlement to a third installation having the installed version of the software package, wherein attempting to allocate the third entitlement to the third installation comprises: identifying the group of associated entitlements for the software package; determining that no additional software license associated with the group of associated entitlements is available; and update the metric data to indicate a compliance issue associated with the third installation. 11. The system of claim 8 , wherein the minimum entitlement comprises a closest-match entitlement. 12. The system of claim 8 , wherein the operations comprise determining the software downgrade definition associated with each associated entitlement based at least in part on software upgrades or software downgrades supported by the associated entitlement. 13. The system of claim 12 , wherein the operations comprise: determining relationships between discovery maps, wherein each discovery map of the discovery maps comprises version information associated with the software package; and determining the software upgrades or the software downgrades supported by each associated entitlement based at least in part on the determined relationships. 14. A non-transitory, computer-readable medium storing instructions executable by one or more processors of a computing system, wherein the instructions comprise instructions to perform operations comprising: identifying installations of a software package on one or more computing devices; and calculating compliance of the installations, wherein calculating compliance of the installations comprises: allocating an entitlement corresponding to a

Assignees

Inventors

Classifications

  • Protecting distributed programs or content, e.g. vending or licensing of copyrighted material (protection in video systems or pay television H04N7/16) {; Digital rights management [DRM]} · CPC title

  • Software metrics · CPC title

  • G06F8/61Primary

    Installation · CPC title

  • Structural analysis for program understanding · CPC title

  • G06F8/71Primary

    Version control (security arrangements therefor G06F21/57); Configuration management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11263002B2 cover?
A software model specification for a software package can be associated with representation of a software downgrade definition. The software model specification can include a publisher of the software package, an application title of the software package, and the version of the software package. One or more entitlements for the software package can be obtained. Based on the software downgrade d…
Who is the assignee on this patent?
Servicenow Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/61. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 01 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).