Program understanding and the concept assignment problem
Communications of the ACM
The concept of dynamic analysis
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
Compression Techniques to Simplify the Analysis of Large Execution Traces
IWPC '02 Proceedings of the 10th International Workshop on Program Comprehension
Scaling an Object-Oriented System Execution Visualizer through Sampling
IWPC '03 Proceedings of the 11th IEEE International Workshop on Program Comprehension
CSMR '04 Proceedings of the Eighth Euromicro Working Conference on Software Maintenance and Reengineering (CSMR'04)
A survey of trace exploration tools and techniques
CASCON '04 Proceedings of the 2004 conference of the Centre for Advanced Studies on Collaborative research
Software Clustering Based on Dynamic Dependencies
CSMR '05 Proceedings of the Ninth European Conference on Software Maintenance and Reengineering
Applying Webmining Techniques to Execution Traces to Support the Program Comprehension Process
CSMR '05 Proceedings of the Ninth European Conference on Software Maintenance and Reengineering
Correlating Features and Code Using a Compact Two-Sided Trace Analysis Approach
CSMR '05 Proceedings of the Ninth European Conference on Software Maintenance and Reengineering
System Evolution Tracking through Execution Trace Analysis
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
Analyzing Feature Traces to Incorporate the Semantics of Change in Software Evolution Analysis
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
ICPC '06 Proceedings of the 14th IEEE International Conference on Program Comprehension
Reengineering Process Based on the Unified Process
ICSM '06 Proceedings of the 22nd IEEE International Conference on Software Maintenance
Proceedings of the 2nd India software engineering conference
EvoSpaces - Multi-dimensional Navigation Spaces for Software Evolution
Human Machine Interaction
Reverse-engineering of an industrial software using the unified process: an experiment
SEA '07 Proceedings of the 11th IASTED International Conference on Software Engineering and Applications
Automatic generation of abstract views for legacy software comprehension
Proceedings of the 3rd India software engineering conference
A software behaviour analysis framework based on the human perception systems (NIER track)
Proceedings of the 33rd International Conference on Software Engineering
Understanding Ajax applications by connecting client and server-side execution traces
Empirical Software Engineering
Stratified sampling of execution traces: Execution phases serving as strata
Science of Computer Programming
Hi-index | 0.00 |
In dynamic analysis (i.e. execution trace analysis), an important problem is to cope with the volume of data to process. However, in the literature, no definitive solution has yet been proposed. Generally, the techniques start by compressing the execution trace before proceeding with the analysis. In this paper we propose a way to process the uncompressed execution trace using a sampling technique. Then, we present the concept of temporally omnipresent class that is the analogy of the "noise" in signal processing. During analysis, the omnipresent classes can be filtered out to concentrate only on relevant ones. Next, we present the extension of our sampling technique to the dynamic clustering of classes. This is a way to recover the components of a legacy system. We finally show the application of this approach to a medium size industrial software system, as well as the tool that supports it. As a conclusion, we suggest that our noise reduction and clustering techniques are both efficient and scalable.