Dies ist ein Archiv des alten Softwaretechnik Lehrstuhls der Universität des Saarlandes. Es ist nicht länger aktuell.

  

Lightweight Defect Localization for Java
Valentin Dallmeier, Christian Lindig, and Andreas Zeller

Lehrstuhl für Softwaretechnik (Prof. Zeller)
Universität des Saarlandes – Informatik
Informatik Campus des Saarlandes
Campus E9 1 (CISPA)
66123 Saarbrücken
E-mail: zeller @ cs.uni-saarland.de
Telefon: +49 681 302-70970

Deutschsprachige Startseite Page d'acceuil en français English home page
   Valentin Dallmeier, Christian Lindig and Andreas Zeller. Lightweight Defect Localization for Java. To appear at 19th European Conference on Object-Oriented Programming, Glasgow, Scotland, July 2005.
In the AspectJ ranking, the faulty class is at position 10 out of 542 executed classes—meaning that the programmer, starting at the top, has to examine only 1.8% of the executed classes or 3.3% of the executed code (0.3% of all classes or 0.8% of the entire code) in order to find the defect. (In comparison, comparing coverage of passing and failing run yields no difference in the faulty class, making coverage difference worse than a random guess.) (How Call Sequences Indicate Defects)

Get the paper in PDF format (22 pages, 1MB).

Abstract

A common method to localize defects is to compare the coverage of passing and failing program runs: A method executed only in failing runs, for instance, is likely to point to the defect. Some failures, though, come to be only through a specific sequence of method calls, such as multiple deallocation of the same resource. Such sequences can be collected from arbitrary Java programs at low cost; comparing object-specific sequences predicts defects better than simply comparing coverage. In a controlled experiment, our technique pinpointed the defective class in 36% of all test runs.

Contents

  1. Introduction
  2. How Call Sequences Indicate Defects
  3. Summarizing Call Sequences
    • From Traces to Call Sequences
    • From Objects to Classes
    • Incoming vs. Outgoing Calls
    • Collecting Traces
    • Overhead
  4. Relating Call Anomalies to Failures
  5. A Case Study
    • Object of Study
    • Experimental Setup
    • Threats to Validity
    • Discussion of Results
  6. Related Work
  7. Conclusion and Consequences
  8. References

Download

See Also...

Impressum Datenschutzerklärung

<webmaster@st.cs.uni-saarland.de> · http://www.st.cs.uni-saarland.de//papers/dlz2004/ · Stand: 2018-04-05 13:41