Automatic software defect repair
US-11157390-B2 · Oct 26, 2021 · US
US11635752B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11635752-B2 |
| Application number | US-202117314354-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 7, 2021 |
| Priority date | May 7, 2021 |
| Publication date | Apr 25, 2023 |
| Grant date | Apr 25, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An example embodiment involves rules related to repairing software programs, wherein the rules associate indications of software program failures with repair applications that are configured to correct the software program failures. One or more processors are configured to: (i) receive, by a predictive model, a representation of an execution history of a particular software program, wherein the predictive model has been trained on a corpus of execution histories of the software programs; (ii) generate, by the predictive model and from the execution history, a failure prediction for the particular software program; (iii) receive, by an automated repair controller application, the failure prediction from the predictive model; (iv) based on applying the rules to the failure prediction, determine, by the automated repair controller application, a repair application from the repair applications; and (v) cause, by the automated repair controller application, the repair application to be executed within the network.
Opening claim text (preview).
What is claimed is: 1. A system comprising: persistent storage containing rules related to repairing software programs in a network, wherein the rules associate indications of software program failures with repair applications implemented by an automated repair controller according to domain knowledge of the network, wherein the repair applications are configured to correct corresponding software program failures; and one or more processors configured to: receive, by a predictive model, a representation of an execution history of a particular software program of the software programs, wherein the predictive model has been trained on a corpus of execution histories of the software programs in order to be able to estimate root causes of software program failures; generate, by the predictive model and from the execution history, a failure prediction for the particular software program, the failure prediction including an estimated root cause; receive, by an automated repair controller application, the failure prediction from the predictive model; based on applying the rules to the failure prediction, determine, by the automated repair controller application, a repair application from the repair applications that is configured to correct the estimated root cause; and cause, by the automated repair controller application, the repair application to be executed within the network. 2. The system of claim 1 , wherein the one or more processors are further configured to: receive, by the predictive model, a second representation of a second execution history of a second particular software program of the software programs; generate, by the predictive model and from the second execution history, a second failure prediction for the second particular software program, the second failure prediction including a second estimated root cause; receive, by the automated repair controller application, the second failure prediction from the predictive model; based on applying the rules to the second failure prediction, determine, by the automated repair controller application, that the rules do not specify a matching repair application; and cause, by the automated repair controller application, an alert regarding the second failure prediction to be transmitted to a human agent. 3. The system of claim 2 , wherein the one or more processors are further configured to: after causing the alert to be transmitted to the human agent, receiving, from the human agent, an update to the rules that specifies the matching repair application for the second failure prediction. 4. The system of claim 1 , wherein the rules each include: (i) a repair application reference, and (ii) one or more of a software program name, a software program failure indication, or a network address. 5. The system of claim 4 , wherein the failure prediction includes at least one of the software program name, the software program failure indication, or the network address. 6. The system of claim 5 , wherein determining the repair application that is configured to correct the estimated root cause comprises: selecting a particular rule from the rules, wherein the particular rule matches one or more of the software program name, the software program failure indication, or the network address included in the failure prediction, and wherein the particular rule contains a particular repair application reference to the repair application. 7. The system of claim 4 , wherein the network address is of a computing device on which the particular software program executes or with which the particular software program attempts to communicate. 8. The system of claim 1 , wherein the estimated root cause is one or more of: missing authentication credentials, or a server or application being unreachable or unresponsive. 9. The system of claim 1 , wherein execution of the repair application causes the particular software program to be restarted or reconfigured. 10. The system of claim 1 , wherein execution of the repair application causes an application, device, or service used by the particular software program to be restarted or reconfigured. 11. The system of claim 1 , wherein the execution history of the particular software program includes at least part of a log file generated by the particular software program. 12. The system of claim 1 , wherein the predictive model was either trained on the corpus of execution histories using unsupervised machine learning, or trained on labelled entries of the corpus of execution histories using supervised machine learning. 13. The system of claim 1 , wherein the predictive model and the automated repair controller application are disposed within a computational instance of a remote network management platform that is configured to manage the network, and wherein receiving the representation of the execution history and causing the repair application to be executed within the network occur by way of a proxy server disposed within the network. 14. A computer-implemented method comprising: receiving, by a predictive model, a representation of an execution history of a particular software program, wherein the predictive model has been trained on a corpus of execution histories of software programs in order to be able to estimate root causes of software program failures, wherein persistent storage contains rules related to repairing software programs in a network, and wherein the rules associate indications of software program failures with repair applications implemented by an automated repair controller according to domain knowledge of the network, wherein the repair applications are configured to correct corresponding software program failures; generating, by the predictive model and from the execution history, a failure prediction for the particular software program, the failure prediction including an estimated root cause; receiving, by an automated repair controller application, the failure prediction from the predictive model; based on applying the rules to the failure prediction, determining, by the automated repair controller application, a repair application from the repair applications that is configured to correct the estimated root cause; and causing, by the automated repair controller application, the repair application to be executed within the network. 15. The computer-implemented method of claim 14 , wherein the rules each include: (i) a repair application reference, and (ii) one or more of a software program name, a software program failure indication, or a network address. 16. The computer-implemented method of claim 15 , wherein the failure prediction includes at least one of the software program name the software program failure indication, or the network address. 17. The computer-implemented method of claim 16 , wherein determining the repair application that is configured to correct the estimated root cause comprises: selecting a particular rule from the rules, wherein the particular rule matches one or more of the software program name, the software program failure indication, or the network address included in the failure prediction, and wherein the particular rule contains a particular repair application reference to the repair application. 18. The computer-implemented method of claim 15 , wherein the network address is of a computing device on which the particular software program executes or with which the particular software program attempts to communicate. 19. The computer-implemented method of claim 14 , wherein execution of the rep
Machine learning · CPC title
Predictive maintenance, e.g. involving the monitoring of a system and, based on the monitoring results, taking decisions on the maintenance schedule of the monitored system; Estimating remaining useful life [RUL] (preventive maintenance, i.e. planning maintenance according to the available resources without monitoring the system G06Q10/06) · CPC title
Data acquisition and logging (for input to computer G06F3/00) · CPC title
electric · CPC title
Quantitative, e.g. mathematical distance; Clustering; Neural networks; Statistical analysis · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.