# US 10,769,009 B2 · Root cause analysis for correlated development and operations data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,769,009 B2
- Document ID: US10769009B2
- Status: Granted
- Kind: B2
- Application number: 15/927,363
- Filed: 2018-03-21
- Published: 2019-09-26
- Granted: 2020-09-08
- Earliest claimed: 2018-03-21
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Yan Luo; Peter Haumer; Gary Mazo
- Web page: https://patentgrep.com/patent/US10769009B2

## CPC

- G06F 11/0739: {in a data processing system embedded in automotive or aircraft systems}
- G06F 11/079: {Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36)}
- G06F 11/0778: {Dumping, i.e. gathering error/state information after a fault for later diagnosis}
- G06F 11/0781: {Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level}
- G06F 11/0793: {Remedial or corrective actions (recovery from an exception in an instruction pipeline G06F9/3861; by retry G06F11/1402; for recovering from a failure of a protocol instance or entity H04L69/40)}
- G06F 11/323: {Visualisation of programs or trace data}
- G06F 11/3676: {for coverage analysis}
- G06N 5/02: Knowledge representation; Symbolic representation
- G06N 5/022: Knowledge engineering; Knowledge acquisition
- G06N 20/00: Machine learning
- G06F 11/3409: {for performance assessment}
- G06F 11/3419: {by assessing time}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

Embodiments of the invention include methods, systems, and computer program products for root cause analysis. Aspects of the invention include receiving, by a processor, operations data associated with a plurality of applications. A trend analysis is performed on the operations data to determine an operations issue associated with at least one of the plurality of applications. And a root-cause analysis is performed on the operations issue to identify a set of candidate applications from the plurality of applications that may be a cause of the operations issue.

## Claims

### Claim 1

A computer-implemented method for root cause analysis, the method comprising:
receiving, by a processor, operations data associated with a plurality of applications;
performing a trend analysis on the operations data to determine an operations issue associated with at least one of the plurality of applications; and
performing a root-cause analysis on the operations issue to identify a set of candidate applications from the plurality of applications that may be a cause of the operations issue by:
displaying, on a user dashboard, call graph data associated with the operations data for each candidate application, wherein the call graph data includes one or more weighted features of each candidate application;
selecting, by a user, a root cause feature from the one or more weighted features from a root cause application based at least in part on the call graph data displayed on the user dashboard.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein performing the trend analysis on the operations data comprises:
applying a peak detection algorithm to the operations data to determine one or more peaks in a trend; and
identifying the operations issue based at least in part on the one or more peaks in the trend.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein performing the trend analysis on the operations data comprises:
applying a peak prediction algorithm to the operations data to predict one or more future peaks in a trend; and
identifying the operations issue based at least in part on the one or more future peaks in the trend, wherein the trend is a performance characteristic of at least one of the plurality of applications and is part of the operations data.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, further comprising:
accessing a rules knowledge base; and
determining an actionable recommendation for the root cause feature based at least in part on the root-cause analysis and a rules knowledge base.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein performing the root cause analysis on the operations issue comprises:
providing root-cause training data as an input to a machine learning model;
applying the machine learning model to the operations issue associated with the plurality of applications to determine the set of candidate applications that may be the cause of the operations issue; and
determining, based at least in part on the machine learning model, a set of features that are likely to be a root cause of the operations issue for each of the candidate applications.

### Claim 6 (depends on 5)

The computer-implemented method of claim 5, further comprising
analyzing the set of features for each candidate application in the set of candidate applications to determine a candidate score for each candidate application and a feature score for each feature in the set of features for each candidate application;
determining a root cause application based at least in part on the candidate score for each candidate application; and
determining a root cause feature for the root cause application based at least in part on the feature score for the root cause feature.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein the operation issue is selected from a set of pre-defined operation issues.

### Claim 8 (depends on 5)

The computer-implemented method of claim 5, wherein the set of features comprise at least one of a maintainability index, a complexity index, lines of code, calls to a database, recent changes, and code coverage.

### Claim 9 (depends on 5)

The computer-implemented method of claim 5, wherein the root cause training data comprises historical root cause data.

### Claim 10

A system for root cause analysis comprising:
a processor communicatively coupled to a memory, the processor configured to:
receive operations data associated with a plurality of applications;
perform a trend analysis on the operations data to determine an operations issue associated with at least one of the plurality of applications; and
perform a root-cause analysis on the operations issue to identify a set of candidate applications from the plurality of applications that may be a cause of the operations issue by:
displaying, on a user dashboard, call graph data associated with the operations data for each candidate application, wherein the call graph data includes one or more weighted features of each candidate application;
selecting, by a user, a root cause feature from the one or more weighted features from a root cause application based at least in part on the call graph data displayed on the user dashboard.

### Claim 11 (depends on 10)

The system of claim 10, wherein performing the trend analysis on the operations data comprises:
applying a peak detection algorithm to the operations data to determine one or more peaks in a trend; and
identifying the operations issue based at least in part on the one or more peaks in the trend.

### Claim 12 (depends on 10)

The system of claim 10, wherein performing the trend analysis on the operations data comprises:
applying a peak prediction algorithm to the operations data to predict one or more future peaks in a trend; and
identifying the operations issue based at least in part on the one or more future peaks in the trend, wherein the trend is a performance characteristic of at least one of the plurality of applications and is part of the operations data.

### Claim 13 (depends on 10)

The system of claim 10, further comprising:
accessing a rules knowledge base; and
wherein the processor is further configured to determine an actionable recommendation for the root cause feature based at least in part on the root-cause analysis and a rules knowledge base.

### Claim 14

A computer program product for root cause analysis, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising:
receiving, by a processor, operations data associated with a plurality of applications;
performing a trend analysis on the operations data to determine an operations issue associated with at least one of the plurality of applications; and
performing a root-cause analysis on the operations issue to identify a set of candidate applications from the plurality of applications that may be a cause of the operations issue by:
displaying, on a user dashboard, call graph data associated with the operations data for each candidate application, wherein the call graph data includes one or more weighted features of each candidate application;
selecting, by a user, a root cause feature from the one or more weighted features from a root cause application based at least in part on the call graph data displayed on the user dashboard.

### Claim 15 (depends on 14)

The computer program product of claim 14, wherein performing the root cause analysis on the operations issue further comprises:
providing root-cause training data as an input to a machine learning model;
applying the machine learning model to the operations issue associated with the plurality of applications to determine the set of candidate applications that may be the cause of the operations issue; and
determining, based at least in part on the machine learning model, a set of features that are likely to be a root cause of the operations issue for each of the candidate applications.

### Claim 16 (depends on 15)

The computer program product of claim 15, further comprising
analyzing the set of features for each candidate application in the set of candidate applications to determine a candidate score for each candidate application and a feature score for each feature in the set of features for each candidate application;
determining a root cause application based at least in part on the candidate score for each candidate application; and
determining a root cause feature for the root cause application based at least in part on the feature score for the root cause feature.

### Claim 17 (depends on 14)

The computer program product of claim 14, wherein the operation issue is selected from a set of pre-defined operation issues.

### Claim 18 (depends on 15)

The computer program product of claim 15, wherein the set of features comprise at least one of a maintainability index, a complexity index, lines of code, calls to a database, recent changes, and code coverage.
