Proceedings of the 1998 ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering 1998
DOI: 10.1145/277631.277647
|View full text |Cite
|
Sign up to set email alerts
|

An empirical investigation of program spectra

Abstract: A variety of expensive software maintenance and testing tasks require a comparison of the behaviors of program versions. Program spectra have recently been proposed as a heuristic for use in pcrforrning such comparisons. To assess t,lrc potential 11sefulness of spectra in this cont,ext, we conducted an experiment that examined the relationship bct,wccn program spectra and program behavior, and empirically compared several types of spectra. This paper reports the results of that experiment,.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
81
0

Year Published

2005
2005
2022
2022

Publication Types

Select...
4
3
1

Relationship

0
8

Authors

Journals

citations
Cited by 113 publications
(81 citation statements)
references
References 8 publications
0
81
0
Order By: Relevance
“…We rate the importance of entities based on their frequency of usage, i.e., we make use of program spectra (Harrold et al 1998). A program spectrum characterizes a program's behavior by recording the set of entities that are exercised as the program executes.…”
Section: Operational Profile-based Coveragementioning
confidence: 99%
See 2 more Smart Citations
“…We rate the importance of entities based on their frequency of usage, i.e., we make use of program spectra (Harrold et al 1998). A program spectrum characterizes a program's behavior by recording the set of entities that are exercised as the program executes.…”
Section: Operational Profile-based Coveragementioning
confidence: 99%
“…Program spectra (Harrold et al 1998) have been used extensively in software analysis. Beyond the original application in program optimization (Ball et al 1998), more recently code profiling information has been used to analyze the executions of different versions of code, e.g., in regression testing (Xie and Notkin 2005), and to compare traces of failed and successful runs in fault diagnosis (Wong et al 2016).…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Depending on the amount of knowledge that is required about the system's internal component structure and behavior, the most predominant approaches can be classified as i) statistical approaches or ii) reasoning approaches (for an overview of approaches, see [2]). The former approach uses an abstraction of program traces, dynamically collected at runtime (also known as program spectra [8]), to produce a list of likely candidates to be at fault [3,10,11], whereas the latter combines a static model of the expected behavior with a set of observations to compute the diagnostic report [14]. In this paper, we use a statistical technique, in particular spectrum-based fault localization [3,10] due its effectiveness in locating faults, while entailing low time and space complexity [2].…”
Section: Background: Spectrum-based Fault Localizationmentioning
confidence: 99%
“…The type of the applied profiling should reflect the runtime events. Software testing research and practice suggest a variety of alternatives such as statement, basic block, branch, all-uses and so on [20].…”
Section: Distribution-based Techniquesmentioning
confidence: 99%