# US 2016/0259709 A1 · Preemptive trouble shooting using dialog manager

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

- Number: US 2016/0259709 A1
- Document ID: US20160259709A1
- Status: Published application
- Kind: A1
- Application number: 14/748,724
- Filed: 2015-06-24
- Published: 2016-09-08
- Earliest claimed: 2015-03-04
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Rangachari Anand; Juhnyoung Lee; Feng Li; Qi C. Li; Shao C. Li; Lijun Mei
- Web page: https://patentgrep.com/patent/US20160259709A1

## CPC

- G06F 11/3612: {by runtime analysis (performance monitoring G06F11/3466)}
- G06F 3/0481: based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F 3/0484: for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F 11/3003: {Monitoring arrangements specially adapted to the computing system or computing system component being monitored}
- G06F 11/3093: {Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes}
- G06F 11/3466: {Performance evaluation by tracing or monitoring}
- G06F 16/245: Query processing
- G06F 16/24575: {using context}
- G06F 16/248: Presentation of query results
- G06F 2201/865: Monitoring of software
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

One or more problems may be detected in an executing application by retrieving runtime execution information from the application executing on one or more computers. The runtime information is transformed into a temporal sequence of events. A knowledgebase is searched for a dialog that has nodes in an order that match the temporal sequence of events according to a threshold degree. Responsive to finding the dialog in the knowledgebase, the dialog is launched on a user interface to interact with a user and guide the user through a problem identification and solution. Responsive to not finding the dialog, additional instrumenter is enabled in the application.

## Claims

### Claim 1

A method of discovering problems in an application executing on a computing environment, the method performed by one or more processors, comprising:
retrieving runtime execution information from an application executing on one or more computers;
transforming the runtime information into a temporal sequence of events;
determining that the temporal sequence of events is associated with a proven problem by comparing the temporal sequence of events with a database of historical problems;
searching a knowledgebase for a dialog that has nodes in an order that match the temporal sequence of events according to a threshold degree;
responsive to finding the dialog in the knowledgebase, launching the dialog on a user interface to interact with a user and guide the user through a problem identification and solution; and
responsive to not finding the dialog, enabling additional instrumenter in the application executing on one or more computers to retrieve additional runtime execution information.

### Claim 2 (depends on 1)

The method of claim 1, further comprising harvesting the dialog by logging dialog nodes traversed during the user interaction via the user interface.

### Claim 3 (depends on 1)

The method of claim 1, wherein the retrieving runtime execution information comprises retrieving screen snapshots associated with the application and retrieving output data generated by one or more instrumenters injected into the application.

### Claim 4 (depends on 1)

The method of claim 1, wherein the searching a knowledgebase for a dialog comprises:
mapping the temporal sequence of events into a temporal sequence of instrumenters and screen snapshots; and
searching a dialog to instrumenter association database and a dialog to screen snapshot association database for a dialog that is associated with the temporal sequence of instrumenters and screen snapshots, wherein the knowledgebase comprises the dialog to instrumenter association database and the dialog to screen snapshot association database.

### Claim 5 (depends on 1)

The method of claim 1, wherein the knowledgebase is generated by:
retrieving an existing dialog from a dialog knowledgebase;
for each node in the dialog, tagging the node with one or more of an associated instrumenter or screen snapshot, based on topic matching between content of the node and one or more of content of the instrumenter's output or screen snapshot; and
storing associations between the nodes of the existing dialog and one or more of instrumenters and screen snapshots.

### Claim 6 (depends on 5)

The method claim 5, wherein the one or more of content of the instrumenter's output or screen snapshot are transformed to tags and stored as instrumenter and screen snapshot tag database, wherein the topic matching is performed between the content of the node and the instrumenter and screen snapshot tag database.

### Claim 7 (depends on 1)

The method of claim 1, wherein the application comprises an application client running on a client machine and an application server running on a server machine.
