User workflow replication for execution error analysis

US9442832B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9442832-B2
Application numberUS-201414324895-A
CountryUS
Kind codeB2
Filing dateJul 7, 2014
Priority dateJul 7, 2014
Publication dateSep 13, 2016
Grant dateSep 13, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Examples of workflow replication and execution error analysis are provided herein. Data describing how a user interacts with a software application and describing the context within which the user is working is recorded and provided to a user workflow replication system when an execution error occurs. A simulation of the execution error can be performed by replicating a configuration of the software application and/or the computer system that executed the software application and then performing functions specified in the provided data. The results of the simulation of the execution error can then be analyzed according to a number of scenarios.

First claim

Opening claim text (preview).

What is claimed is: 1. One or more computer-readable storage media storing instructions that, when executed by a computing device, perform a method of replicating a user workflow, the method comprising: receiving user workflow data representing one or more user interactions with a software application executed by a computer system; receiving configuration data for at least one of the software application or the computer system, wherein the user workflow data and the configuration data are received in response to a detection of an execution error in the software application; performing a simulation of the execution error by: based on the configuration data, replicating a configuration of the at least one of the software application or the computer system; and performing one or more functions specified in the user workflow data; and analyzing results of the simulation of the execution error, wherein analyzing the results of the simulation of the execution error comprises: determining a portion of code in the software application corresponding to the execution error; determining a date when the portion of code was updated; accessing an execution error data store storing references to other execution errors detected in the software application by other computer systems and references to portions of code corresponding to the other execution errors; and based at least in part on the date when the portion of code was updated or a number of other execution errors in the data store corresponding to the portion of code, determining a likelihood that the execution error for which the simulation was performed is a result of a code error in the portion of code. 2. The computer-readable storage media of claim 1 , further comprising: receiving additional user workflow data and additional configuration data for additional computer systems that have executed the software application; and aggregating at least some of the additional user workflow data and configuration data into a customer usage data store for the software application. 3. The computer-readable storage media of claim 2 , further comprising based at least in part on the customer usage data store, determining that the use of one or more functions of the software application are below a predetermined frequency of use threshold for function removal. 4. The computer-readable storage media of claim 3 , further comprising providing an update for the software application to at least some of: the computer system executing the software application and the additional computer systems executing the software application, wherein the update for the software application hides or removes functionality determined to be below the predetermined frequency of use threshold for function removal. 5. The computer-readable storage media of claim 2 , further comprising: based at least in part on the customer usage data store, determining that a sequence of two or more method calls or a sequence of two or more user interface interactions is performed more often than a predetermined frequency of use threshold for shortcut creation; creating a shortcut combining the functionality of the sequence of two or more method calls or the sequence of two or more user interface interactions; and providing an update for the software application to at least some of the computer system executing the software application and the additional computer systems executing the software application, the update including the shortcut. 6. The computer-readable storage media of claim 1 , further comprising receiving data accessed by the software application prior to the detection of the execution error, and wherein the data accessed by the software application is used in the simulation of the execution error. 7. The computer-readable storage media of claim 1 , wherein the user workflow data comprises a plurality of method calls logged in a call stack of the computer system, wherein the method calls correspond to functions performed by the software application prior to the execution error, and wherein the method calls are logged in a time-ordered sequence. 8. The computer-readable storage media of claim 7 , wherein the user workflow data further comprises, for at least one of the plurality of method calls, an additional method call that called the method call, wherein the method call and the additional method call that called the method call are stored in association in the call stack of the computer system, and wherein the analyzing results of the simulation of the execution error is based at least in part on the additional method call that called the method call. 9. The computer-readable storage media of claim 1 , wherein the user workflow data comprises a list of user interface interactions. 10. The computer-readable storage media of claim 1 , wherein the configuration data includes at least one of: a software application customization, a software application version, a software application setting, an operating system support pack version, an operating system version, or a hardware configuration of the computer system. 11. The computer-readable storage media of claim 1 , wherein the user workflow data and the configuration data are received as an XML file. 12. One or more server computers implementing a user workflow replication system, the system comprising: a data module configured to receive data associated with a remote computer system, the data associated with an execution error in a software application executed by the remote computer system, the data comprising: user workflow data comprising a plurality of method calls logged in a call stack of the remote computer system, wherein the method calls correspond to functions performed by the software application prior to the execution error, and wherein the method calls are logged in a time-ordered sequence; configuration data for at least one of the software application or the remote computer system; and data accessed by the software application prior to the execution error; a simulation engine configured to reproduce the execution error by: configuring a simulation environment based at least in part on the software application, the configuration data, and the data accessed by the software application prior to the execution error; and using the simulation environment, performing the plurality of method calls from the user workflow data; and an analysis module configured to determine a cause of the execution error based on the performance of the plurality of method calls by the simulation engine. 13. The one or more server computers of claim 12 , wherein the analysis module is further configured to identify a portion of code in the software application corresponding to the execution error. 14. The one or more server computers of claim 13 , wherein the analysis module is further configured to access an execution error data store to determine a number of execution errors corresponding to the portion of code detected by other remote computer systems that have executed the software application. 15. The one or more server computers of claim 12 , wherein the system further comprises: a customer usage data store containing user workflow data and configuration data for other remote computer systems that have executed the software application; and an update module configured to identify one or more usage patterns based on the user workflow data in the customer usage database and determine an update for the software application based on the one or more usage patterns. 16. A method of replicating a user workflow, the method compris

Assignees

Inventors

Classifications

  • Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36) · CPC title

  • for test results analysis · CPC title

  • monitoring of user actions (tracking the activity of the user H04L67/535) · CPC title

  • by simulating additional hardware, e.g. fault simulation · CPC title

  • in a remote unit communicating with a single-box computer node experiencing an error/fault (remote testing G06F11/2294) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9442832B2 cover?
Examples of workflow replication and execution error analysis are provided herein. Data describing how a user interacts with a software application and describing the context within which the user is working is recorded and provided to a user workflow replication system when an execution error occurs. A simulation of the execution error can be performed by replicating a configuration of the sof…
Who is the assignee on this patent?
Bharara Aavishkar, Sap Se
What technology area does this patent fall under?
Primary CPC classification G06F11/3692. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 13 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).