Quantifying effectiveness of team recommendation for collaborative software development

作者:Noppadol Assavakamhaenghan, Waralee Tanaphantaruk, Ponlakit Suwanworaboon, Morakot Choetkiertikul, Suppawong Tuarob

摘要

It is undeniable that software development is a team-based activity. The quality of the delivered product highly depends on the team configuration. However, selecting an appropriate team to complete a software task is non-trivial, as it needs to consider team compatibility in multiple aspects. While extensive literature introduced multiple team recommendation algorithms, such algorithms are not designed to support the specific roles in software teams. This paper proposes a novel set of metrics for measuring five dimensions of a software team’s effectiveness, including historical collaboration, team cohesiveness, teammate interaction, team members’ expertise, and role experience. Furthermore, Wining Experience-based Software Team RECommendation (WESTREC) is introduced to solve the software team recommendation problem. WESTREC considers multiple aspects of team characteristics, including historical collaboration, team cohesiveness, teammate interaction, project description, team members’ expertise, and role experience. Specifically, given a software project, a machine learning based team scoring function is used along with the Max-Logit algorithm to approximate and recommend suitable software team configurations for the given task. We validate the effectiveness of the WESTREC on real-world software development datasets (i.e., Atlassian and Apache). Furthermore, we study the factors that affect the performance of collaborative software development and propose a method to evaluate the effectiveness of a software team. The results show that WESTREC outperforms state-of-the-art baseline approaches in three out of five groups of team effectiveness metrics associated with different team characteristics in large software systems. Our research findings not only illustrate the efficacy of automatic software team evaluation using machine learning techniques but also serve as building blocks for potential applications that involve automatic team formation and evaluation, such as automatic recommendation of research collaborators and grouping personnel for team-based projects.

论文关键词:Collaborative software development, Machine learning, Knowledge graph, Software team effectiveness, Team recommendation

论文评审过程:

论文官网地址:https://doi.org/10.1007/s10515-022-00357-7