IP Library Granted Patent US 9,009,289
Granted Patent B1
US 9,009,289 · App. 14/230,515 · Granted Apr 14, 2015

Systems and methods for assessing application usage

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 9,009,289
App. No.
14/230,515
Granted
Apr 14, 2015
Kind
B1
Abstract

Various of the disclosed embodiments disclose systems and methods for assessing usage of a resource, such as hardware, software, or firmware, in a computer system. For example, some embodiments contemplate a model in which an enterprise application derives its license cost based upon the actual business value provided by the licensed resource to the enterprise. If an enterprise has purchased software that it uses very heavily, then the license cost may increase. Conversely, if the enterprise uses the software rarely, then the license cost may decrease. This usage granularity may allow an enterprise executive to purchase a software license without fear that the software will be inefficiently utilized. A licensor may similarly use the system to charge more accurate fees.

Claims (52)

1. A computer-implemented method for contextually assessing the relative usage of an n-tier enterprise application in a given business environment context comprising:

determining the n-tier enterprise application's deployment structure including the number of tiers that are deployed and the number of nodes that service each tier;

determining a plurality of server characteristic values based upon the n-tier enterprise application's deployment structure;

summing the plurality of server characteristic values weighted by a plurality of server characteristic weights to generate a server hardware score for a node, the server characteristic weights having values in accordance with the relative usage associated with the business environment context;

determining a plurality of middleware characteristic values based upon the n-tier enterprise application's deployment structure;

summing the plurality of middleware characteristic values weighted by a plurality of middleware characteristic weights to generate a middleware score for the node, the plurality of middleware characteristic weights having values in accordance with the relative usage associated with the business environment context;

generating a first node score for the node by combining the server hardware score and the middleware score, where the node is one of a plurality of nodes in a tier of the n-tier enterprise application;

determining an aggregate tier node score by summing a plurality of node scores in the tier, including the first node score, where each of the node scores is weighted based upon the node's usage by the n-tier enterprise application, the aggregate tier node normalized by the number of nodes in the tier;

determining a combined application middleware and server score by dividing the aggregate tier node score by a number of tiers used by the application;

determining an application characteristics score by summing a plurality of application characteristic values weighted by a plurality of weights; and

determining the relative usage of the n-tier enterprise application for the given business environment context by scaling the application characteristics score by the combined application middleware and server score.

2. The computer-implemented method of claim 1 , wherein the number of tiers used by the application comprises a business logic tier and a persistence tier.

3. The computer-implemented method of claim 1 , wherein the server characteristic values include an indication of the context switches on the server.

4. The computer-implemented method of claim 1 , wherein the middleware characteristic values include one or more of an indication of a number of active methods of Enterprise Java Bean (EJB) modules, an indication of a number of instantiates and destroys of EJB instances, and the total number of EJB method calls.

5. The computer-implemented method of claim 1 , the method further comprising aggregating the Application Usage Score with a plurality of Application Usage Scores determined over a period of time.

6. The computer-implemented method of claim 1 , wherein determining an aggregate tier node score comprises determining a load-balancing distribution of the application's operations across nodes.

7. A non-transitory computer-readable medium comprising instructions configured to cause at least one processor to perform a method to contextually assess the relative usage of an n-tier enterprise application in a given business environment context, the method comprising:

determining the n-tier enterprise application's deployment structure including the number of tiers that are deployed and the number of nodes that service each tier;

determining a plurality of server characteristic values based upon the n-tier enterprise application's deployment structure;

summing the plurality of server characteristic values weighted by a plurality of server characteristic weights to generate a server hardware score for a node, the server characteristic weights having values in accordance with the relative usage associated with the business environment context;

determining a plurality of middleware characteristic values based upon the n-tier enterprise application's deployment structure;

summing the plurality of middleware characteristic values weighted by a plurality of middleware characteristic weights to generate a middleware score for the node, the plurality of middleware characteristic weights having values in accordance with the relative usage associated with the business environment context;

generating a first node score for the node by combining the server hardware score and the middleware score, where the node is one of a plurality of nodes in a tier of the n-tier enterprise application;

determining an aggregate tier node score by summing a plurality of node scores in the tier, including the first node score, where each of the node scores is weighted based upon the node's usage by the n-tier enterprise application, the aggregate tier node normalized by the number of nodes in the tier;

determining a combined application middleware and server score by dividing the aggregate tier node score by a number of tiers used by the application;

determining an application characteristics score by summing a plurality of application characteristic values weighted by a plurality of weights; and

determining the relative usage of the n-tier enterprise application for the given business environment context by scaling the application characteristics score by the combined application middleware and server score.

8. The non-transitory computer-readable medium of claim 7 , wherein a first tier of the n-tiers comprises a business logic tier and a second tier of the n-tiers comprises a persistence tier.

9. The non-transitory computer-readable medium of claim 7 , the method further comprising determining a licensing value based on a determination that the relative usage of the n-tier enterprise application exceeds a first application usage barrier, but is less than a second application usage barrier.

10. The non-transitory computer-readable medium of claim 7 , wherein the n-tiers used by the application comprise a business logic tier and a persistence tier.

11. The non-transitory computer-readable medium of claim 7 , wherein the server characteristic values include an indication of the context switches on the server.

12. The non-transitory computer-readable medium of claim 7 , wherein the middleware characteristic values include one or more of an indication of a number of active methods of Enterprise Java Bean (EJB) modules, an indication of a number of instantiates and destroys of EJB instances, and the total number of EJB method calls.

13. The non-transitory computer-readable medium of claim 7 , the method further comprising aggregating the Application Usage Score with a plurality of Application Usage Scores determined over a period of time.

14. A computer system comprising:

at least one processor;

at least one memory comprising instructions configured to cause the at least one processor to perform a method to contextually assess the relative usage of an n-tier enterprise application in a given business environment context, the method comprising:

determining the n-tier enterprise application's deployment structure including the number of tiers that are deployed and the number of nodes that service each tier;

determining a plurality of server characteristic values based upon the n-tier enterprise application's deployment structure;

summing the plurality of server characteristic values weighted by a plurality of server characteristic weights to generate a server hardware score for a node, the server characteristic weights having values in accordance with the relative usage associated with the business environment context;

determining a plurality of middleware characteristic values based upon the n-tier enterprise application's deployment structure;

summing the plurality of middleware characteristic values weighted by a plurality of middleware characteristic weights to generate a middleware score for the node, the plurality of middleware characteristic weights having values in accordance with the relative usage associated with the business environment context;

generating a first node score for the node by combining the server hardware score and the middleware score, where the node is one of a plurality of nodes in a tier of the n-tier enterprise application;

determining an aggregate tier node score by summing a plurality of node scores in the tier, including the first node score, where each of the node scores is weighted based upon the node's usage by the n-tier enterprise application, the aggregate tier node normalized by the number of nodes in the tier;

determining a combined application middleware and server score by dividing the aggregate tier node score by a number of tiers used by the application;

determining an application characteristics score by summing a plurality of application characteristic values weighted by a plurality of weights; and

determining the relative usage of the n-tier enterprise application for the given business environment context by scaling the application characteristics score by the combined application middleware and server score.

15. The computer system of claim 14 , wherein a first tier of the n-tiers comprises a business logic tier and a second tier of the n-tiers comprises a persistence tier.

16. The computer system of claim 14 , the method further comprising determining a licensing value based on a determination that the relative usage of the n-tier enterprise application exceeds a first application usage barrier, but is less than a second application usage barrier.

17. The computer system of claim 14 , wherein the n-tiers used by the application comprise a business logic tier and a persistence tier.

18. The computer system of claim 14 , wherein the server characteristic values include an indication of the context switches on the server.

19. The computer system of claim 14 , wherein the middleware characteristic values include one or more of an indication of a number of active methods of Enterprise Java Bean (EJB) modules, an indication of a number of instantiates and destroys of EJB instances, and the total number of EJB method calls.

20. The computer system of claim 14 , the method further comprising aggregating the Application Usage Score with a plurality of Application Usage Scores determined over a period of time.

Assignments (8)
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS - REEL/FRAME 045441/ 0499 Recorded Aug 25, 2025
From: JEFFERIES FINANCE LLC
To: FLEXERA SOFTWARE LLC; PALAMIDA, INC.; BDNA CORPORATION
Reel/Frame 072552/0558 →
SECURITY INTEREST Recorded Aug 15, 2025
From: FLEXERA SOFTWARE LLC
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL GENT
Reel/Frame 072460/0828 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Apr 18, 2024
From: JEFFERIES FINANCE LLC
To: BDNA CORPORATION; FLEXERA SOFTWARE LLC; PALAMIDA, INC.; RIGHTSCALE, INC.; RISC NETWORKS, LLC; REVULYTICS, INC.
Reel/Frame 067636/0534 →
SECOND LIEN SECURITY AGREEMENT Recorded Mar 3, 2021
From: BDNA CORPORATION; FLEXERA SOFTWARE LLC; PALAMIDA, INC.; RIGHTSCALE, INC.; RISC NETWORKS, LLC; REVULYTICS, INC.
To: JEFFERIES FINANCE LLC
Reel/Frame 055487/0354 →
RELEASE OF SECOND LIEN SECURITY INTEREST Recorded Feb 28, 2020
From: JEFFERIES FINANCE LLC
To: FLEXERA SOFTWARE LLC; PALAMIDA, INC.; BDNA CORPORATION; RIGHTSCALE, INC.; RISC NETWORKS, LLC
Reel/Frame 052049/0560 →
SECOND LIEN SECURITY AGREEMENT Recorded Feb 27, 2018
From: FLEXERA SOFTWARE LLC; PALAMIDA, INC.; BDNA CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 045451/0499 →
FIRST LIEN SECURITY AGREEMENT Recorded Feb 26, 2018
From: FLEXERA SOFTWARE LLC; PALAMIDA, INC.; BDNA CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 045441/0499 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2015
From: JACOB, JIJU
To: FLEXERA SOFTWARE LLC
Reel/Frame 034836/0561 →