IP Library Granted Patent US 10,257,022
Granted Patent B2
US 10,257,022 · App. 16/129,156 · Granted Apr 9, 2019

Determining statuses of computer modules

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 10,257,022
App. No.
16/129,156
Granted
Apr 9, 2019
Kind
B2
Abstract

A non-transitory computer-readable storage medium may include instructions stored thereon for ranking multiple computer modules to reduce failure impacts. When executed by at least one processor, the instructions may be configured to cause a computing system implementing the multiple computer modules to at least associate the multiple computer modules with multiple services that rely on the multiple computer modules, at least one of the multiple services relying on more than one of the multiple computer modules, determine values of the multiple services, and rank the multiple computer modules based on the determined values of the multiple services with which the respective multiple computer modules are associated.

Claims (76)

1. A non-transitory computer-readable storage medium comprising instructions stored thereon for determining statuses of computer modules to reduce failure impacts, that, when executed by at least one processor, are configured to cause a computing system implementing the computer modules to at least:

determine an association of at least two computer modules with at least one service that requires the at least two computer modules to implement the at least one service;

determine at least one value of the at least one service;

determine scores of the at least two computer modules based on the at least one value of the at least one service with which the at least two computer modules are associated;

rank the at least two computer modules based on the determined scores of the at least two computer modules;

re-determine a value of the at least one service based on a computational trigger, the computational trigger including at least one of:

a present time being in a different part of a schedule than a previous time, the schedule being associated with the at least one service;

at least one event occurring in a computing network monitored by the computing system;

an event associated with at least one of the at least two computing modules exceeding a time threshold;

a new computer module being added to the computing network that the computing system is monitoring; or

a computer module ceasing to function properly;

re-determine the scores of the at least two computer modules based on the re-determined value of the at least one service;

re-rank the at least two computer modules based on the re-determined scores of the at least two computer modules;

increase a frequency of determining a status of a first of the at least two computer modules based on the re-ranking, causing the first of the at least two computer modules to have a higher rank than before the re-ranking;

decrease a frequency of determining a status of a second of the at least two computer modules based on the re-ranking, causing the second of the at least two computer modules to have a lower rank than before the re-ranking; and

in response to the computing system having insufficient resources to support the at least two computer modules, decommission one of the at least two computer modules based on the one of the at least two computer modules having a low rank based on the re-ranking of the at least two computer modules.

2. The non-transitory computer-readable storage medium of claim 1 , wherein the determining the association of the at least two computer modules with the at least one service is performed in conjunction with provisioning the at least one service.

3. The non-transitory computer-readable storage medium of claim 1 , wherein the determined value of the at least one service is based on a determined importance of the at least one service.

4. The non-transitory computer-readable storage medium of claim 1 , wherein the ranking the at least two computer modules includes ranking each of the at least two computer modules based on the determined value of the at least one service.

5. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions are further configured to cause the computing system to select the second of the at least two computer modules for which to decrease the frequency of determining the status based on the lower rank of the second of the at least two computer modules.

6. The non-transitory computer-readable storage medium of claim 1 , wherein the determining the status of the first of the at least two computer modules comprises determining whether the first of the at least two computer modules has failed.

7. The non-transitory computer-readable storage medium of claim 1 , wherein the determining the status of the first of the at least two computer modules comprises determining whether a proportion of resources that the first of the at least two computer modules is using exceeds a threshold that indicates a risk of exceeding the resources of the first of the at least two computer modules.

8. The non-transitory computer-readable storage medium of claim 1 , wherein the computational trigger comprises the present time being in the different part of the schedule than the previous time, the schedule being associated with the at least one service.

9. The non-transitory computer-readable storage medium of claim 1 , wherein the computational trigger comprises the at least one event occurring in the computing network monitored by the computing system.

10. The non-transitory computer-readable storage medium of claim 1 , wherein the computational trigger comprises the event associated with at least one of the at least two computing modules exceeding the time threshold.

11. The non-transitory computer-readable storage medium of claim 1 , wherein the computational trigger comprises the new computer module being added to the computing network that the computing system is monitoring.

12. The non-transitory computer-readable storage medium of claim 1 , wherein the computational trigger comprises the computer module ceasing to function properly.

13. A computing system comprising:

at least one processor; and

a non-transitory computer-readable storage medium comprising instructions stored thereon for determining statuses of computer modules to reduce failure impacts, that, when executed by the at least one processor, are configured to cause the computing system to at least:

determine an association of at least two computer modules with at least one service that requires the at least two computer modules to implement the at least one service;

determine a value of the at least one service;

determine scores of the at least two computer modules based on the value of the at least one service with which the at least two computer modules are associated;

rank the multiple computer modules based on the determined scores of the at least two computer modules;

re-determine a value of the at least one service based on a computational trigger, the computational trigger including at least one of:

a present time being in a different part of a schedule than a previous time, the schedule being associated with the at least one service;

at least one event occurring in a computing network monitored by the computing system;

an event associated with at least one of the at least two computing modules exceeding a time threshold;

a new computer module being added to the computing network that the computing system is monitoring; or

a computer module ceasing to function properly;

re-determine the scores of the at least two computer modules based on the re-determined value of the at least one service;

re-rank the at least two computer modules based on the re-determined scores of the at least two computer modules;

increase a frequency of determining a status of a first of the at least two computer modules based on the re-ranking causing the first of the at least two computer modules to have a higher rank than before the re-ranking;

decrease a frequency of determining a status of a second of the at least two computer modules based on the re-ranking causing the second of the at least two computer modules to have a lower rank than before the re-ranking; and

decommission one of the at least two computer modules based on the one of the at least two computer modules having a low rank based on the re-ranking of the at least two computer modules.

14. The computing system of claim 13 , wherein the instructions are further configured to cause the computing system to select at least one of the at least two computer modules for provisioning a new service based on the re-ranking of the at least one of the computer modules.

15. The computing system of claim 13 , wherein the instructions are further configured to cause the computing system to select at least one of the at least two computer modules for failover support based on the re-ranking of the at least one of the at least two computer modules.

16. The computing system of claim 15 , wherein the instructions are further configured to cause the computing system to provide the failover support to the selected at least one of the at least two computer modules by associating a redundant computer module with a service associated with the selected at least one of the at least two computer modules.

17. The computing system of claim 13 , wherein the computational trigger comprises the present time being in the different part of the schedule than the previous time, the schedule being associated with the at least one service.

18. The computing system of claim 13 , wherein the computational trigger comprises the at least one occurring in the computing network monitored by the computing system.

19. The computing system of claim 13 , wherein the computational trigger comprises the event associated with at least one of the at least two computing modules exceeding the time threshold.

20. The computing system of claim 13 , wherein the computational trigger comprises the new computer module being added to the computing network that the computing system is monitoring.

21. The computing system of claim 13 , wherein the computational trigger comprises the computer module ceasing to function properly.

22. A method for determining statuses of computer modules to reduce failure impacts, the method comprising:

provisioning at least one service that requires at least two computer modules to implement the at least one service;

in conjunction with the provisioning the at least one service, determining an association of the at least two computer modules with the at least one service;

determining a value of the at least one service, the value of the at least one service being based on a determined importance of the at least one service;

determining scores of the at least two computer modules based on the determined value of the at least one service with which the at least two computer modules are associated;

ranking the at least two computer modules based on the determined scores of the at least two computer modules;

re-determining the value of the at least one service based on a computational trigger, the computational trigger including at least one of:

a present time being in a different part of a schedule for the at least one service than a previous time;

at least one event occurring in a computing network monitored by a computing system implementing the computer modules;

an event associated with at least one of the at least two computing modules exceeding a time threshold;

a new computer module being added to the computing network that the computing system is monitoring; or

a computer module ceasing to function properly;

re-determining the scores of the at least two computer modules based on the re-determined value of the at least one service;

re-ranking the multiple computer modules based on the re-determined scores of the multiple computer modules;

selecting at least one of the at least two computer modules for failover support based on the rank of the at least one of the at least two computer modules;

providing the failover support to the selected at least one of the at least two computer modules by associating a redundant computer module with a service associated with the selected at least one of the at least two computer modules;

increasing a frequency of determining a status of a first of the at least two computer modules based on the re-ranking causing the first of the at least two computer modules to have a higher rank than before the re-ranking; and

decreasing a frequency of determining a status of a second of the at least two computer modules based on the re-ranking causing the second of the at least two computer modules to have a lower rank than before the re-ranking.

23. The method of claim 22 , wherein the computational trigger comprises the present time being in the different part of the schedule than the previous time, the schedule being associated with the at least one service.

24. The method of claim 22 , wherein the computational trigger comprises the at least one occurring in the computing network monitored by the computing system.

25. The method of claim 22 , wherein the computational trigger comprises the event associated with at least one of the at least two computing modules exceeding the time threshold.

26. The method of claim 22 , wherein the computational trigger comprises the new computer module being added to the computing network that the computing system is monitoring.

27. The method of claim 22 , wherein the computational trigger comprises the computer module ceasing to function properly.

Assignments (12)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
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 →
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 →
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 →
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 →
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 →
SECURITY INTEREST Recorded Sep 10, 2019
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 050327/0634 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2018
From: PHADKE, NILESH; PHADKE, PALLAVI
To: BMC SOFTWARE, INC.
Reel/Frame 046885/0425 →