Source code analysis: A road map
D Binkley - Future of Software Engineering (FOSE'07), 2007 - ieeexplore.ieee.org
The automated and semi-automated analysis of source code has remained a topic of
intense research for more than thirty years. During this period, algorithms and techniques for …
intense research for more than thirty years. During this period, algorithms and techniques for …
A systematic survey of program comprehension through dynamic analysis
B Cornelissen, A Zaidman… - IEEE Transactions …, 2009 - ieeexplore.ieee.org
Program comprehension is an important activity in software maintenance, as software must
be sufficiently understood before it can be properly modified. The study of a program's …
be sufficiently understood before it can be properly modified. The study of a program's …
Algorithmic profiling
D Zaparanuks, M Hauswirth - Proceedings of the 33rd ACM SIGPLAN …, 2012 - dl.acm.org
Traditional profilers identify where a program spends most of its resources. They do not
provide information about why the program spends those resources or about how resource …
provide information about why the program spends those resources or about how resource …
The causes of bloat, the limits of health
N Mitchell, G Sevitsky - Proceedings of the 22nd annual ACM SIGPLAN …, 2007 - dl.acm.org
Applications often have large runtime memory requirements. In some cases, large memory
footprint helps accomplish an important functional, performance, or engineering …
footprint helps accomplish an important functional, performance, or engineering …
Heapviz: interactive heap visualization for program understanding and debugging
Understanding the data structures in a program is crucial to understanding how the program
works, or why it doesn't work. Inspecting the code that implements the data structures …
works, or why it doesn't work. Inspecting the code that implements the data structures …
Contextual analysis of program logs for understanding system behaviors
Understanding the behaviors of a software system is very important for performing daily
system maintenance tasks. In practice, one way to gain knowledge about the runtime …
system maintenance tasks. In practice, one way to gain knowledge about the runtime …
Person reidentification using quaternionic local binary pattern
Person reidentification is to identify the persons observed in nonoverlapping camera
networks. Most existing methods usually extract features from the red, green, and blue color …
networks. Most existing methods usually extract features from the red, green, and blue color …
Travioli: A dynamic analysis for detecting data-structure traversals
Traversal is one of the most fundamental operations on data structures, in which an
algorithm systematically visits some or all of the data items of a data structure. We propose a …
algorithm systematically visits some or all of the data items of a data structure. We propose a …
Abstracting runtime heaps for program understanding
Modern programming environments provide extensive support for inspecting, analyzing, and
testing programs based on the algorithmic structure of a program. Unfortunately, support for …
testing programs based on the algorithmic structure of a program. Unfortunately, support for …
Shape-analysis driven memory graph visualization
JH Boockmann, G Lüttgen - Proceedings of the 30th IEEE/ACM …, 2022 - dl.acm.org
Analyzing heap dumps containing complex dynamic data structures is essential when
debugging modern software systems. However, existing tools for visualizing memory graphs …
debugging modern software systems. However, existing tools for visualizing memory graphs …