Identifying TraIn

Xiao Wang,Lu Xiao,Ye Yang,Xinyi Xu,Yu Jiang
DOI: https://doi.org/10.1145/3183440.3195008
2018-01-01
Abstract:Socio-Technical Congruence (STC) indicates that social interactions among developers should be congruent with technical dependencies among their tasks. Prior research discovered that the lack of the "should-happen" communication will lead to integration errors and productivity decrease. However, the opposite scenario, excessive communication not matched by any technical dependencies, has been largely neglected. This paper terms such scenario as Transgressive Incongruence (TraIn). To automatically pin-point source files involved in TraIn, this paper defines a new form of coupling between files, called communication coupling. It measures the communication traffic among developers working on two files. Evaluation on 6 Apache open source projects reveals: 1) the communication coupling between files with structural dependencies is 3 to 10 times higher than that between files independent from each other; and 2) source files involved in TraIn are usually very bug-prone. This implies that TraIn may have negative impact on the quality of software systems, and thus should merit due attention.
What problem does this paper attempt to address?