Learning from Code History





The interactive transcript could not be loaded.



Rating is available when the video has been rented.
This feature is not available right now. Please try again later.
Uploaded on Nov 17, 2009

Google Tech Talk
November 11, 2009


Presented by Andreas Zeller.

Why does my program fail? Your version history might have the answer. First, the failure may occur only in the most recent version. If there is some old version which worked, one can narrow down the change that caused the failure. By leveraging automated tests, one can even isolate such changes automatically: "The failure was caused by a change to line 365 in submit.py". Second, your version history also records all the fixes that were made. If we have many fixes in one unit, this means that this unit is particularly error-prone - and hence should deserve particular attention: "This compiler code is seven times as error-prone as the GUI code." In this talk, I show how to automate these techniques to learn what is wrong and how to predict bugs in large-scale systems such as Eclipse, SAP, or Microsoft Windows.

Andreas Zeller is professor for software engineering at Saarland University, Saarbrücken, Germany. His research is concerned with the analysis of large software systems, in particular their execution ("Why does my program fail?") and their development history ("Where do most bugs occur?"). In 2006, his book "Why Programs Fail" received the Software Development Magazine productivity award. In 2009, his work on delta debugging got the ACM SIGSOFT Impact Paper Award as the most influential software engineering paper of 1999.


When autoplay is enabled, a suggested video will automatically play next.

Up Next

to add this to Watch Later

Add to

Loading playlists...