Mining Cause-Effect-Chains from Version Histories – ISSRE 2011

Software reliability is heavily impacted by soft- ware changes. How do these changes relate to each other? By analyzing the impacted method 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 such as pending development activities: “Whenever class A is changed, its test case is later updated as well.” Such patterns can be validated automatically: In an evaluation of four open source histories, our prototype would recommend pending activities with a precision of 60–72%.

  • [PDF] [DOI] K. Herzig and A. Zeller, “Mining cause-effect-chains from version histories,” in Proceedings of the 2011 ieee 22nd international symposium on software reliability engineering, Washington, DC, USA, 2011, p. 60–69.
    [Bibtex]
    @inproceedings{herzig-issre-2011,
    author = {Herzig, Kim and Zeller, Andreas},
    title = {Mining Cause-Effect-Chains from Version Histories},
    booktitle = {Proceedings of the 2011 IEEE 22nd International Symposium on Software Reliability Engineering},
    series = {ISSRE '11},
    year = {2011},
    isbn = {978-0-7695-4568-4},
    pages = {60--69},
    numpages = {10},
    doi = {10.1109/ISSRE.2011.16},
    acmid = {2120915},
    publisher = {IEEE Computer Society},
    address = {Washington, DC, USA},
    link={http://www.kim-herzig.de/2011/09/28/mining-cause-effect-chains-from-version-histories-issre-2011/},
    pdf={http://www.kim-herzig.de/wp-content/uploads/2012/06/issre2011.pdf}
    }