Title :
How we resolve conflict: an empirical study of method-level conflict resolution
Author :
Yuzuki, Ryohei ; Hata, Hideaki ; Matsumoto, Kenichi
Author_Institution :
Grad. Sch. of Inf. Sci., Nara Inst. of Sci. & Technol., Nara, Japan
Abstract :
Context: Branching and merging are common activities in large-scale software development projects. Isolated development with branching enables developers to focus their effort on their specific tasks without wasting time on the problems caused by other developers´ changes. After the completion of tasks in branches, such branches should be integrated into common branches by merging. When conflicts occur in merging, developers need to resolve the conflicts, which are troublesome. Goal: To support conflict resolution in merging, we aim to understand how conflicts are resolved in practice from large-scale study. Method: We present techniques for identifying conflicts and detecting conflict resolution in method level. Result: From the analysis of 10 OSS projects written in Java, we found that (1) 44% (339/779) of conflicts are caused by changing concurrently the same positions of methods, 48% (375/779) are by deleting methods, 8% (65/779) are by renaming methods, and that (2) 99% (771/779) of conflicts are resolved by adopting one method directly. Conclusions: Our results suggest that most of conflicts are resolved by simple way. One of our future works is developing methods for supporting conflict resolution.
Keywords :
Java; merging; project management; software development management; Java; OSS projects; branching; deleting methods; isolated development; level conflict resolution; merging; renaming methods; software development projects; Conferences; Control systems; Java; Measurement; Merging; Software; Software engineering;
Conference_Titel :
Software Analytics (SWAN), 2015 IEEE 1st International Workshop on
Conference_Location :
Montreal, QC
DOI :
10.1109/SWAN.2015.7070484