|Title||Proactive detection of collaboration conflicts|
|Publication Type||Conference Paper|
|Year of Publication||2011|
|Authors||Brun Y, Holmes R, Ernst MD, Notkin D|
|Conference Name||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)|
|Date or Month Published||September|
|Conference Location||Szeged, Hungary|
Collaborative development can be hampered when conflicts arise because developers have inconsistent copies of a shared project. We present an approach to help developers identify and resolve conflicts early, before those conflicts become severe and before relevant changes fade away in the developers' memories. This paper presents three results.
First, a study of open-source systems establishes that conflicts are frequent, persistent, and appear not only as overlapping textual edits but also as subsequent build and test failures. The study spans nine open-source systems totaling 3.4 million lines of code; our conflict data is derived from 550,000 development versions of the systems.
Second, using previously-unexploited information, we precisely diagnose important classes of conflicts using the novel technique of speculative analysis over version control operations.
Third, we describe the design of Crystal, a publicly-available tool that uses speculative analysis to make concrete advice unobtrusively available to developers, helping them identify, manage, and prevent conflicts.
|Downloads||https://github.com/brunyuriy/crystalvc Crystal implementation http://people.cs.umass.edu/~brun/video/Brun11esecfse/ video of talk http://homes.cs.washington.edu/~mernst/pubs/vc-conflicts-fse2011-tooldem... tool demo paper (PDF)|