• Title of article

    Stratified sampling of execution traces: Execution phases serving as strata

  • Author/Authors

    Heidar Pirzadeh، نويسنده , , Sara Shanian، نويسنده , , Abdelwahab Hamou-Lhadj، نويسنده , , Luay Alawneh، نويسنده , , Arya Shafiee، نويسنده ,

  • Issue Information
    ماهنامه با شماره پیاپی سال 2013
  • Pages
    20
  • From page
    1099
  • To page
    1118
  • Abstract
    The understanding of the behavioral aspects of a software system is an important enabler for many reverse engineering activities. The behavior of software is typically represented in the form of execution traces. Traces, however, can be overwhelmingly large. To reduce their size, sampling techniques, especially the ones based on random sampling, have been extensively used. Random sampling, however, may result in samples that are not representative of the original trace. In this paper, we propose a trace sampling technique that not only reduces the size of a trace but also results in a sample that is representative of the original trace by ensuring that the desired characteristics of an execution are distributed similarly in both the sampled and the original trace. Hence, the insights gained from analyzing the sample trace could be extrapolated to the original execution trace. Our approach is based on stratified sampling instead of random sampling and uses the concept of execution phases as strata. We define an execution phase as a part of a trace that represents a specific task of the traced system. We also present an approach for the automatic detection of execution phases from a trace. Finally, we show the effectiveness of our sampling technique through two case studies.
  • Keywords
    Program comprehension , Sampling techniques , Stratified sampling , Execution phases , trace analysis
  • Journal title
    Science of Computer Programming
  • Serial Year
    2013
  • Journal title
    Science of Computer Programming
  • Record number

    1080376