Learning from project history to support programmers
T. Zimmermann
Abstract
Nowadays, any larger software project collects lots of data. Changes to source code are stored in version control archives, and problems in bug databases. In this paper we present two tools that mine both sources to help developers writing better programs. The eROSE tool guides programmers along related changes in a similar way Amazon.com supports its customers: You changed fKeys[] and eROSE suggests $initDefaults()$, because in the past both items always have been changed together. The HATARI tool warns programmers against risky locations: “Programmers failed at changing $resolveClasspath()$. Be careful.†To measure risk, HATARI locates changes that lead to problems, as indicated by later fixes.
Full Text: PDF