论文标题

Github上的沟通渠道如何向他们的预定受众介绍? - 主题分析

How Are Communication Channels on GitHub Presented to Their Intended Audience? -- A Thematic Analysis

论文作者

Ebert, Verena, Graziotin, Daniel, Wagner, Stefan

论文摘要

通信对于软件开发至关重要,甚至在分布式设置中更重要。需要组织和协调沟通活动,以防止生产力损失的威胁,认知负荷的增加以及团队成员之间的压力。通过以前的开源项目中的研究确定了很多沟通渠道,需要探讨如何在所有项目成员中介绍,解释和动机使用这些沟通渠道的组织问题。在这项研究中,我们想了解GitHub项目中使用了哪些通信渠道以及如何向GitHub项目受众介绍它们。我们采用了主题分析来分析90个GitHub项目中的151次工件。我们的结果揭示了32个独特的通信渠道,可以分为9种不同类型。项目主要提供不同类型的渠道,但是对于某些类型(例如,聊天),通常提供多个渠道。维护者知道渠道具有不同的属性,并帮助开发人员确定在这种情况下应使用哪种渠道。但是,对于所有项目而言,这并不是如此,而且我们通常没有发现维护者选择在另一个渠道上提供一个渠道的任何明确原因。可以将不同的渠道用于不同的目的并具有不同的负担,因此维护者必须明智地决定他们想要提供的渠道并清楚应在这种情况下使用哪种渠道。否则,开发人员可能会感到过多的渠道不知所措,并且信息可能会在多个渠道上分散。

Communication is essential in software development, and even more in distributed settings. Communication activities need to be organized and coordinated to defend against the threat of productivity losses, increases in cognitive load, and stress among team members. With a plethora of communication channels that were identified by previous research in open-source projects, there is a need to explore organizational issues in how these communication channels are introduced, explained, and motivated for use among all project members. In this study, we wanted to understand which communication channels are used in GitHub projects and how they are presented to the GitHub project audience. We employed thematic analysis to analyze 151 artifacts in 90 GitHub projects. Our results revealed 32 unique communications channels that can be divided into nine different types. Projects mostly provide channels of different types, but for some types (e.g., chat) it is common to provide several channels. Maintainers are aware that channels have different properties and help the developers to decide which channel should be used in which case. However, this is not true for all projects, and often we have not found any explicit reasons why maintainers chose to provide one channel over another. Different channels can be used for different purposes and have different affordances, so maintainers have to decide wisely which channels they want to provide and make clear which channel should be used in which case. Otherwise, developers might feel overwhelmed of too many channels and information can get fragmented over multiple channels.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源