×

Object lifecycle analysis tool

  • US 10,133,997 B2
  • Filed: 02/13/2015
  • Issued: 11/20/2018
  • Est. Priority Date: 04/22/2014
  • Status: Active Grant
First Claim
Patent Images

1. A computer implemented method for identifying concurrency bottlenecks occurring while processing lifecycle transactions from an initiation state to a completion state by visualizing said lifecycles transactions when processed concurrently in a system, the method comprising:

  • generating, by a computer, for each of the lifecycle transactions, a plurality of transaction objects that include an identifiable run tag that distinguishes a set of test run data from other transaction data being normally processed;

    receiving, by the computer, the set of test run data comprising the plurality of transaction objects, each of the transaction objects having a specified identifier indicating that each of the transaction objects is associated with the set of test run data and each of the respective transaction objects defined by a set of operations that together perform a task relating to each of the lifecycle transactions;

    sending, by the computer, the set of test run data to an application of the computer;

    processing by the application the set of test run data;

    storing by the application in timeline tables of a transaction database, transition state information for each of the respective transaction objects, processed in each second for a duration of time by subtype and status of each of the lifecycle transactions corresponding to each of the transaction objects having been processed, wherein the transition state information corresponding to each of the transaction objects results from the application performing one or more of the operations in the set of operations associated with each of the transaction objects;

    generating, by the computer, a database query that uses, at least in part, the specified identifier to retrieve the transition state information corresponding to all of the transaction objects associated with the first set of test run data;

    executing, by the computer, the database query against the transaction database to retrieve the transition state information corresponding to all of the transaction objects associated with the set of test run data from the transaction database;

    as each of the lifecycle transactions in the set of test run data is processed, storing, by the computer, the transition state information in the transaction database including beginning and ending times of each transition state, a duration of each transition state, a transaction count, and transactions per second;

    organizing, by the computer, the transition state associated with each of the transaction objects into a chronological order;

    reorganizing, by the computer, the transition state information obtained from the transaction database chronologically and storing the reorganized transition state in the timeline tables;

    accumulating, by the computer, active transition states that had been processed in each second for the duration of time by the subtype and the status of each of the lifecycle transactions;

    storing, by the computer, results of the accumulated active transition states in a timeline table of the timeline tables corresponding to each transaction object;

    mappings, by the computer, transaction types to the transaction objects as representations of a graph;

    retrieving, by the computer, the mappings and transition state information from a history of each of the lifecycle transactions;

    retrieving, by the computer, a total duration of each lifecycle transaction, a subtype of each lifecycle transaction, and the transition state information of each lifecycle transaction;

    obtaining, by the computer, the beginning time and the ending time for each transition state in each lifecycle transaction;

    retrieving, by the computer from the transaction database, a total transaction count, a number of transactions per second, and a total duration of the set of test run data;

    initializing, by the computer, after gathering the set of test run data, a transaction object creation timeline table, a transaction object timeline table, and a transaction state timeline table of the timeline tables;

    populating, by the computer, the timeline tables with the set of test run data gathered from the transaction database based on the beginning time and the ending time to identify the transaction objects being processed for each of a second of the test run data and storing results of the processed transaction objects in the object creation timeline table;

    identifying, by the computer, the transaction objects being processed for each second of the test run data and storing the results in the transaction object timeline table;

    processing, by the computer, the transaction states being processed for each second of the test run data and storing results of the processed transaction states in the transaction state timeline table;

    generating, by the computer, after processing the transaction states, the graph of the transition state information for each transaction object in a logarithmic scale based on the reorganized transition state information and the timeline tables; and

    outputting, by the computer, the graph into a spreadsheet to identify the concurrency bottlenecks occurring while processing the lifecycle transactions from the initiation state to the completion state.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×