Device based software authorizations for software asset management
First Claim
1. A method for managing software license compliance for an entity, comprising:
- defining at least one device group, the device group including a plurality of devices each capable of running an instance of at least one software package and further assigning a group owner responsible for those instances running on those devices by searching for an identifier for the group owner and dynamically selecting associated device to fully source the at least one device group, and wherein fully sourcing the at least one device group further includes using an asset repository management (ARM) database in which a grid is auto-populated with assets where the identifier for the group owner is an asset custodian of record in the ARM database, which is completed independent of whether an initial set of members is dynamically added;
obtaining discovery information for each of the devices of the device group, the discovery information including information about each device and any software package active on the device;
based on the discovery information, determining that at least one of the devices in the device group includes a plurality of virtual central processing units (CPUs);
obtaining asset information indicating the number of licenses available to the device group for each software package and that at least one of the licenses requires an individual license for each of the plurality of CPUs;
associating each license with a specific virtual CPU, wherein in the event that one or more of the virtual CPUs is removed the associated license will also be removed;
comparing the discovery information and the asset information to determine any software packages where the number of instances of a software package or the number of CPUs running on the at least one device exceeds the number of licenses for that software package and generating an exception in response thereto; and
notifying the group owner of any generated exception.
1 Assignment
0 Petitions
Accused Products
Abstract
Software device groups allow owners and administrators to be defined for various intelligent devices, instead of tracking by primary user. A software license compliance management system obtains discovery information for these devices to determine software installed or active on these devices. The management system also obtains the number of licenses for each software package and determines whether the software is in compliance, or if the number of instances exceeds the number of licenses. This determination is flexible and can handle various license types, such as per user, per device, and per processor. For any exception, the group owner is informed and then can re-allocate licenses, purchase additional licenses, or request the uninstalling of a software instance(s). Device groups also can include sub-groups with sub-group owners responsible for handling any exception in that sub-group.
144 Citations
26 Claims
-
1. A method for managing software license compliance for an entity, comprising:
-
defining at least one device group, the device group including a plurality of devices each capable of running an instance of at least one software package and further assigning a group owner responsible for those instances running on those devices by searching for an identifier for the group owner and dynamically selecting associated device to fully source the at least one device group, and wherein fully sourcing the at least one device group further includes using an asset repository management (ARM) database in which a grid is auto-populated with assets where the identifier for the group owner is an asset custodian of record in the ARM database, which is completed independent of whether an initial set of members is dynamically added; obtaining discovery information for each of the devices of the device group, the discovery information including information about each device and any software package active on the device; based on the discovery information, determining that at least one of the devices in the device group includes a plurality of virtual central processing units (CPUs); obtaining asset information indicating the number of licenses available to the device group for each software package and that at least one of the licenses requires an individual license for each of the plurality of CPUs; associating each license with a specific virtual CPU, wherein in the event that one or more of the virtual CPUs is removed the associated license will also be removed; comparing the discovery information and the asset information to determine any software packages where the number of instances of a software package or the number of CPUs running on the at least one device exceeds the number of licenses for that software package and generating an exception in response thereto; and notifying the group owner of any generated exception. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system for managing software license compliance for an entity, the system including a processor operable to execute instructions and a data storage medium for storing the instructions which, when executed by the processor, cause the processor to:
-
define at least one device group, the device group including a plurality of devices each capable of running an instance of at least one software package and further assigning a group owner responsible for those instances running on those devices by searching for an identifier for the group owner and dynamically selecting associated device to fully source the at least one device group, and wherein fully sourcing the at least one device group further includes using an asset repository management (ARM) database in which a grid is auto-populated with assets where the identifier for the group owner is an asset custodian of record in the ARM database, which is completed independent of whether an initial set of members is dynamically added; obtain discovery information for each of the devices of the device group, the discovery information including information about each device and any software package active on the device; based on the discovery information, determine that at least one of the devices in the device group includes a plurality of virtual central processing units (CPUs); obtain asset information indicating the number of licenses available to the device group for each software package and that at least one of the licenses requires an individual license for each of the plurality of CPUs; associate each license with a specific virtual CPU, wherein in the event that one or more of the virtual CPUs is removed the associated license will also be removed; compare the discovery information and the asset information to determine any software packages where the number of instances of a software package or the number of CPUs running on the at least one device exceeds the number of licenses for that software package and generating an exception in response thereto; and notify the group owner of any generated exception. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A computer program product embedded in a non-transitory computer readable medium for managing software license compliance for an entity, comprising:
-
program code for defining at least one device group, the device group including a plurality of devices each capable of running an instance of at least one software package and further assigning a group owner responsible for those instances running on those devices by searching for an identifier for the group owner and dynamically selecting associated device to fully source the at least one device group, and wherein fully sourcing the at least one device group further includes using an asset repository management (ARM) database in which a grid is auto-populated with assets where the identifier for the group owner is an asset custodian of record in the ARM database, which is completed independent of whether an initial set of members is dynamically added; program code for obtaining discovery information for each of the devices of the device group, the discovery information including information about each device and any software package active on the device; based on the discovery information, program code for determining that at least one of the devices in the device group includes a plurality of virtual central processing units (CPUs); program code for obtaining asset information indicating the number of licenses available to the device group for each software package and that at least one of the licenses requires an individual license for each of the plurality of CPUs; program code for associating each license with a specific virtual CPU, wherein in the event that one or more of the virtual CPUs is removed the associated license will also be removed; program code for comparing the discovery information and the asset information to determine any software packages where the number of instances of a software package or the number of CPUs running on the at least one device exceeds the number of licenses for that software package and generating an exception in response thereto; and program code for notifying the group owner of any generated exception. - View Dependent Claims (21, 22, 23, 24, 25, 26)
-
Specification