Programmers who changed this function also changed...
If you browse the books at Amazon or a similar shop, you may have
encountered suggestions of this type: ``Customers who bought this book
also bought...'' Such findings stem from Amazon's purchase history:
Buying two books or more together establish a relationship between
these two books.
We realized a similar feature for software: "Programmers who
changed function X also changed function Y". For this purpose, we
analyze version histories of large software systems, trying to
identify commonalities and anomalities, and guiding the programmer in
understanding and maintenance.
Getting started
- Install eROSE
- Setup eROSE for a project
- Using eROSE
Papers
-
Mining Version Histories to Guide
Software Changes. T. Zimmermann, P. Weißgerber,
S. Diehl, A. Zeller. Saarland University, September 2003.
Proc.
26th International Conference on Software Engineering (ICSE), Edinburgh, UK, May 2004.
[PDF]
Abstract.
We apply data mining to version histories in order to guide
programmers along related changes: "Programmers who changed these
functions also changed...". Given a set of existing changes, such
rules a) suggest and predict likely further changes,
b) show up item coupling that is indetectable
by program analysis, and
c) prevent errors due to incomplete changes.
Our evaluation shows after an initial change, our ROSE prototype can
correctly predict 26% of further files to be changed—and 15%
of the precise functions or variables. 30% of the suggested files
and 26% of the suggested functions or variables were correct
predictions.
Discuss eROSE @ Google
People