This advanced course (Weiterführende Vorlesung, 6 CP) teaches advanced debugging methods—from interactive debugging tools over program analysis to experimental methods.
Lecture Topics and Dates
Lectures and Tutorials
All lectures and tutorials will take place in Building E1 3, HS 003.
- Tuesday, 8:30–10:00
- Thursday, 8:30–10:00
Lecture start: Tuesday, 2008-10-21. Details about the lectures and tutorials will be provided during this first lecture.
Topics and Scheduling
|2008-10-21||About the Course · How Failures Come to Be|
|2008-10-23||Tracking Problems · Making Programs Fail|
|2008-10-28||Tutorial: Introduction to Python (recorded terminal session)|
|2008-11-06||Tutorial: Project 1|
|2008-11-11||The Scientific Method|
|2008-11-18||Tutorial: Questions and Answers (Project 1)|
|2008-12-02||Tutorial: Project 2|
|2008-12-18||Tutorial: Project 3|
|2009-01-06||Causes and Effects|
|2009-01-08||Isolating Failure Causes|
|2009-01-13||Isolating Cause-Effect Chains|
|2009-01-15||Tutorial: Project 4|
|2009-01-20||Locating Failure Causes|
|2009-01-22||Fixing the Defect · Learning from Mistakes|
|2009-01-27||Learning from Software|
|2009-01-29||Seeding Bugs to Find Bugs|
The book "Why Programs Fail: A Guide to Systematic Debugging" is the base of this course. It contains all the material required for the excercises and the final exam.
You have to pass four programming assignments, every project will be graded.
- Simplifying Input
- from 2008-11-06
- to 2008-11-19
- Comparing Coverage
- from 2008-11-27
- to 2008-12-19
- Examples: obtaining and comparing coverage (UPDATE: with a mistake corrected)
- Detecting Anomalies
- from 2008-12-18
- to 2009-01-09
- Cause-Effect Chains
- from 2009-01-15
- to 2009-02-13
The exams will take place during the week from 2009-02-02 to 2009-02-06.