VVZ API is not affiliated with ETH Zurich. Data might be outdated or incorrect. Please view the official ETHZ Vorlesungsverzeichnis for binding information.
Automated Debugging and Testing
Last Updated: 2026-02-05 15:19:55
Abstract
Even with the best software engineering techniques, faults will pop up during the development of programs. The process of finding these faults ("bugs") through analysis of failures in program runs is called debugging. The course presents a scientific method to debugging, based on recent research and on techniques for large-scale data analysis.
Content
Even with the best software engineering techniques, faults will pop up during the development of programs. The process of finding these faults ("bugs") through analysis of failures in program runs is called debugging; as commonly practiced, it is one of the least systematic and least pleasant activities in programming. It is possible, however, to apply the scientific method to debugging and to the related issue of testing, turning them into much more interesting activities. This course presents such a scientific approach, based on recent research and on techniques for large-scale data analysis. Topics include: - How failures come to be - Making programs fail - Tracking bugs - Reproducing and simplifying bugs - Scientific debugging: observing program execution facts, deducing faults - Using assertions - Detecting anomalies - Causes and effects - Isolating failure causes - Results from large-scale experiments (Microsoft, Eclipse, Eiffel).
General Information
- Language
- English
- Levels
- BSC , DS , MSC
Examination
- Type
- end-of-semester examination
Course Components
| Type | Title | Time & Place | Hours |
|---|---|---|---|
| lecture with exercise |
Automated Debugging and Testing
Blockkurs vom 11 - 22 Juni 2007, weitere Informationen folgen.
|
No time listed | 20 h semesterly |