Early detection of collaboration conflicts and risks

Download: PDF, ESEC/FSE 2011 slides (PDF), tool demo paper (PDF), Crystal implementation.

“Early detection of collaboration conflicts and risks” by Yuriy Brun, Reid Holmes, Michael D. Ernst, and David Notkin. IEEE Transactions on Software Engineering, vol. 39, no. 10, Oct. 2013, pp. 1358-1375.
A previous version appeared as “Proactive detection of collaboration conflicts” by Yuriy Brun, Reid Holmes, Michael D. Ernst, and David Notkin. In ESEC/FSE 2011: The 8th joint meeting of the European Software Engineering Conference (ESEC) and the ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE), (Szeged, Hungary), Sep. 2011, pp. 168-178.
A tool demonstration appeared as “Crystal: Precise and unobtrusive conflict warnings” by Yuriy Brun, Reid Holmes, Michael D. Ernst, and David Notkin. In ESEC/FSE 2011: The 8th joint meeting of the European Software Engineering Conference (ESEC) and the ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE), (Szeged, Hungary), Sep. 2011, pp. 267-277.
A previous version appeared as “Speculative identification of merge conflicts and non-conflicts” by Yuriy Brun, Reid Holmes, Michael D. Ernst, and David Notkin. University of Washington Department of Computer Science and Engineering technical report UW-CSE-10-03-01, (Seattle, WA, USA), Mar. 2010.

Abstract

Conflicts among developers' inconsistent copies of a shared project arise in collaborative development and can slow progress and decrease quality. Identifying and resolving such conflicts early can help. Identifying situations which may lead to conflicts can prevent some conflicts altogether. By studying nine open-source systems totaling 3.4 million lines of code, we establish that conflicts are frequent, persistent, and appear not only as overlapping textual edits but also as subsequent build and test failures. Motivated by this finding, we develop a speculative analysis technique that uses previously unexploited information from version control operations to precisely diagnose important classes of conflicts. Then, we design and implement Crystal, a publicly available tool that helps developers identify, manage, and prevent conflicts. Crystal uses speculative analysis to make concrete advice unobtrusively available to developers.

Download: PDF, ESEC/FSE 2011 slides (PDF), tool demo paper (PDF), Crystal implementation.

BibTeX entry:

@article{BrunHEN2013,
   author = {Yuriy Brun and Reid Holmes and Michael D. Ernst and David Notkin},
   title = {Early detection of collaboration conflicts and risks},
   journal = {IEEE Transactions on Software Engineering},
   volume = {39},
   number = {10},
   pages = {1358--1375},
   month = oct,
   year = {2013}
}

(This webpage was created with bibtex2web.)

Back to Michael Ernst's publications.