Genealogy Extraction from Version Archives

Lehrstuhl für Softwaretechnik (Prof. Zeller)
Universität des Saarlandes – Informatik
Informatik Campus des Saarlandes
Campus E9 1 (CISPA)
66123 Saarbrücken
E-mail: zeller @
Telefon: +49 681 302-70970

Deutschsprachige Startseite Page d'acceuil en français English home page

The Software Evolution project at the Software Engineering Chair, Saarland University, analyzes version and bug databases to predict failure-prone modules, related changes, and future development activities.

Mining Cause-Effect-Chains From Version Histories

Software evolution can be characterized as a sequence of changes. How do these changes relate to each other? By analyzing the impacted methods definitions and usages, we determine dependencies between changes, resulting in a change genealogy that captures how earlier changes enable and cause later ones. Model checking this genealogy reveals temporal process patterns that encode key features of the software process: "Whenever class A is changed, its test case is later updated as well."

The process

geneva process


  • 2010-08-20: We submitted first results of our GENEVA tool to ICSE 2011.


  • Capturing the Long-Term Impact of Changes. K. Herzig. Saarland University, May 2010. Proc. 32nd ACM/IEEE International Conference on Software Engineering, Pages 393-396, ACM, New York, NY, USA, May 2010.
    Abstract. Developers change source code to add new functionality, fix bugs, or refactor their code. Many of these changes have immediate impact on quality or stability. However, some impact of changes may become evident only in the long term. The goal of this thesis is to explore the long-term impact of changes by detecting dependencies between code changes and by measuring their influence on software quality, software maintainability, and development effort. Being able to identify the changes with the greatest long-term impact will strengthen our understanding of a projectÕs history and thus shape future code changes and decisions.

Discuss GENEVA @ Google


See also

<> · · Stand: 2017-01-03 21:10