IEEE Access (Jan 2019)

Understanding Effects of Collaborations in Developing Mobile Computing Systems: Popularity, Efficiency, and Quality

  • Weixuan Mao,
  • Bo Sun,
  • Guangquan Xu,
  • Cheng Liu,
  • Chengxiang Si,
  • Wei Wang

DOI
https://doi.org/10.1109/ACCESS.2019.2904333
Journal volume & issue
Vol. 7
pp. 33380 – 33392

Abstract

Read online

The development of mobile computing systems is an inherently collaborative activity, and the nature of the collaboration likely affects systems success. Collaboration can lead to faster development of systems and increased creativity, but it may also adversely affect the quality of systems. As one of the most popular and active Web services for developing open source software, Github has been a place of origin of many novel mobile computing systems with the Internet of Things, such as OpenEdge and CloudSim. Meanwhile, Github provides a place for people to collaborate with each other on developing novel mobile service computing systems. In this paper, we explore the effects of collaboration in developing systems hosted by Github and use a model of collaboration to detect bugs of systems aiming to enhance their quality. We conduct an at-scale study of more than five million projects on GitHub to reveal collaboration's effects on the popularity of software systems and speed of development. We find that having more collaborators results in higher popularity but slower development. Projects that use Objective-C are at an even more significant risk for lower development speeds than other projects. We define collaboration networks and co-commit networks, which capture the projects' collaboration patterns and use structural features of these networks to identify files within commits with bugs. By examining 18 large popular projects, we find that involving these features statistically significantly improves bug detection by 6.7% on average.

Keywords