Patent ID: 7530054
Filing Date: 2009-05-05
Classification: G06F

Abstract:
1. A method comprising steps of: loading a computer program onto an information processing system; analyzing a certain key event in an execution of the program by analyzing node transition from source nodes to destination nodes in nodes associated with the certain key event, wherein each associated node represents an object comprising a method invocation or a field assignment in the execution; generating an object containment hierarchy of relationships between the associated nodes of the computer program using a program analysis tool, wherein the object containment hierarchy comprises a description of how each of the objects between the source node and the destination node are stored into each other; wherein ordering is implied, with earlier events at a top of the hierarchy and later events at a bottom of the hierarchy; generating a temporal flow hierarchy using the program analysis tool, wherein the temporal flow hierarchy comprises control flow and node creation information, linking events contributing to a state of the program during the node transition and describing said events; wherein at least some of the events are not referenced in the object containment hierarchy; wherein ordering is implied in both hierarchies, with earlier events at the top of the hierarchy and later events at the bottom of the hierarchy; expanding the object containment hierarchy by appending the temporal flow hierarchy in a form of annotations, such that the annotations are linked with the associated nodes which they describe, to form an annotated object containment hierarchy; wherein the annotations are appended such that said annotations are distinguishable from the object containment graph; and presenting at least a portion of the annotated object containment hierarchy in response to a user request.