Are coupled file changes suggestions useful?
Background. Software maintenance is an important activity in the process of software engineering where over time maintenance team members leave and new members join. The identification of files being changes together frequently has been proposed several times. Yet, existing studies about these file changes ignore the feedback from developers as well as the impact on the performance of maintenance and rely on the analysis findings and expert evaluation. Methods. We conducted an experiment with the goal to investigate the usefulness of coupled file changes during maintenance tasks when developers are inexperienced in programming or when they are new on the project. Using data mining on software repositories we can identify files that changed most frequently together in the past. We extract coupled file changes from the Git repository of a Java software system and join them with corresponding attributes from the versioning and issue tracking system and the project documentation. We present a controlled experiment involving 36 student participants where we investigate if coupled file change suggestions influence the correctness of the task solutions and the time to complete them. Results. The results show that coupled file change suggestions significantly increase the correctness of the solutions. However, there is only a small effect on the time to complete the tasks. We also derived a set of the most useful attributes based on the developers feedback. Discussion. Coupled file changes and a limited number of the proposed attributes are useful for inexperienced developers working on maintenance tasks whereby although the developers using these suggestions solved more tasks, they still need time to organize and understand and implement this information.