Community smells are negative patterns in software development teams' interactions that impede their ability to successfully create software. Examples are team members working in isolation, lack of communication and collaboration across departments or sub-teams, or areas of the codebase where only a few team members can work on. Current approaches aim to detect community smells by analysing static network representations of software teams' interaction structures. In doing so, they are insufficient to locate community smells within development processes. Extending beyond the capabilities of traditional social network analysis, we show that higher-order network models provide a robust means of revealing such hidden patterns and complex relationships. To this end, we develop a set of centrality measures based on the MOGen higher-order network model and show their effectiveness in predicting influential nodes using five empirical datasets. We then employ these measures for a comprehensive analysis of a product team at the German IT security company genua GmbH, showcasing our method's success in identifying and locating community smells. Specifically, we uncover critical community smells in two areas of the team's development process. Semi-structured interviews with five team members validate our findings: while the team was aware of one community smell and employed measures to address it, it was not aware of the second. This highlights the potential of our approach as a robust tool for identifying and addressing community smells in software development teams. More generally, our work contributes to the social network analysis field with a powerful set of higher-order network centralities that effectively capture community dynamics and indirect relationships.
翻译:社区异味是软件开发团队交互中的负面模式,会阻碍其成功创建软件的能力。例如,团队成员孤立工作、跨部门或子团队之间缺乏沟通与协作,以及代码库中仅少数成员能够处理的区域。现有方法通过分析软件团队交互结构的静态网络表征来检测社区异味,但这种方式不足以在开发过程中定位社区异味。我们突破传统社交网络分析的能力边界,证明高阶网络模型为揭示此类隐藏模式与复杂关系提供了稳健手段。为此,我们基于MOGen高阶网络模型开发了一套中心性度量指标,并通过五个经验数据集验证了其在预测影响力节点方面的有效性。随后,我们将这些指标应用于德国IT安全公司genua GmbH产品团队的全面分析,展示了本方法在识别与定位社区异味方面的成功。具体而言,我们在该团队开发流程的两个区域发现了关键社区异味。对五位团队成员进行的半结构化访谈验证了我们的发现:团队虽意识到其中一种社区异味并已采取措施应对,但并未察觉第二种异味。这凸显了本方法作为软件开发团队社区异味识别与处理稳健工具的潜力。更广泛地说,我们的研究为社交网络分析领域贡献了一套强有力的高阶网络中心性指标,能够有效捕捉社区动态与间接关系。