IP Library Granted Patent US 8,646,093
Granted Patent B2
US 8,646,093 · App. 12/634,534 · Granted Feb 4, 2014

Method and system for configuration management database software license compliance

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,646,093
App. No.
12/634,534
Granted
Feb 4, 2014
Kind
B2
Abstract

A software license engine allows an enterprise to model software license contracts and evaluate deployment of software for compliance with the software license contracts. Deployment of software products in the enterprise is modeled in a configuration management database. The software license engine maintains a license database for connecting software license contracts with software deployment modeled by the configuration management database. Users of the software license engine may use license types that are predefined in the software license engine or may define custom license types. The software license engine may indicate compliance or non-compliance with the software license contracts.

Claims (59)

1. A computer-implemented method, comprising:

modeling deployment of a software product and a software license contract for the software product;

storing a first model of the modeled deployment of the software product in a configuration management database (CMDB) by storing information related to the software product as a first configuration item in the CMDB and by storing information related to the software license contract as a second configuration item in the CMDB;

storing a second model of the modeled software license contract for the software product in a license database by generating a license certificate corresponding to the software license contract and storing the license certificate in the license database; and

evaluating the deployment of the software product for compliance with the software license contract, comprising:

connecting and comparing the first model and the second model by comparing the first configuration item with the license certificate and connecting the license certificate with the second configuration item responsive to comparing the first configuration item with the license certificate; and

generating an exception indication if the act of comparing the first model and the second model indicates non-compliance with the software license contract.

2. The method of claim 1 , wherein the act of storing a first model comprises:

storing a third configuration item in the CMDB modeling at least a portion of an organizational structure;

storing a fourth configuration item in the CMDB modeling a hardware element on which the software product is deployed.

3. The method of claim 2 , wherein the act of connecting the first model and the second model comprises:

comparing the third configuration item with the license certificate; and

comparing the fourth configuration item with the license certificate.

4. The method of claim 2 , wherein the act of connecting the first model and the second model comprises:

comparing one or more of the third configuration item, the fourth configuration item, and the first configuration item with the license certificate; and

connecting the license certificate with the second configuration item responsive to the act of comparing one or more of the third configuration item, the fourth configuration item, and the first configuration item with the license certificate.

5. The method of claim 1 , wherein the act of evaluating is performed on demand.

6. The method of claim 1 , wherein the act of evaluating is performed automatically responsive to a change in the CMDB.

7. The method of claim 1 , wherein the act of connecting the first model and the second model comprises:

generating an exception indication if the first model cannot be connected to the second model.

8. The method of claim 1 , wherein the act of connecting the first model and the second model comprises:

generating an exception indication if the first model can be connected to a plurality of models in the license database.

9. The method of claim 1 , further comprising:

outputting a result of the act of evaluating compliance from a license engine computer.

10. The method of claim 1 , wherein the act of evaluating compliance further comprises:

indicating a suggested action for achieving compliance if the act of comparing the first model and the second model indicates non-compliance with the software license contract.

11. The method of claim 1 , further comprising:

generating the second model, comprising:

receiving a selection of a license type corresponding to the software license contract; and receiving license contract data corresponding to the selected license type.

12. The method of claim 11 , wherein the act of generating the second model further comprises:

providing a plurality of predetermined license types.

13. The method of claim 11 , wherein the act of generating the second model further comprises:

allowing a user to define a custom license type.

14. The method of claim 1 , wherein the act of storing a second model comprises:

generating a first license certificate corresponding to the software license contract;

generating a second license certificate corresponding to the software license contract;

generating a master license certificate, grouping the first license certificate and the second license certificate; and

storing the master license certificate, the first license certificate, and the second license certificate in the license database, and wherein the act of comparing the first model and the second model comprises:

comparing the master license certificate with the first model, comprising:

comparing the first license certificate with a first portion of the first model; and

comparing the second license certificate with a second portion of the first model.

15. The method of claim 14 , wherein the act of generating an exception indication comprises:

generating a first exception indication corresponding to the first license certificate if the act of comparing the first license certificate indicates non-compliance with the software license contract;

generating a second exception indication corresponding to the second license certificate if the act of comparing the second license certificate indicates non-compliance with the software license contract; and

generating an exception indication corresponding to the master license certificate responsive to the generation of either the first exception indication or the second exception indication.

16. A system, comprising:

a server computer, comprising:

a processor;

a configuration database, coupled to the processor;

a license database, coupled to the processor; and

a program store, coupled to the processor, on which is stored instructions for the processor, wherein the instructions cause the processor to perform the method of claim 1 .

17. The system of claim 16 , wherein the server computer further comprises:

a database, comprising the configuration database and the license database.

18. The system of claim 16 , further comprising:

a client computer, adapted to communicate with the server computer, wherein the client computer requests the processor to execute the instructions that cause the server processor to perform the method of claim 1 .

19. A non-transitory computer readable medium with instructions for a programmable control device stored thereon wherein the instructions cause the programmable control device to perform the method of claim 1 .

20. A networked computer system comprising:

a plurality of computers on which software products are deployed; and

one or more configuration management database computers, communicatively coupled to the plurality of computers, programmed to perform the method of claim 1 .

Assignments (14)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY AGREEMENT Recorded Sep 11, 2013
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 031204/0225 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2009
From: MYERS, ANTHONY GEORGE; ADRIAN, THOMAS LOUIS
To: BMC SOFTWARE, INC.
Reel/Frame 023631/0190 →