Empirical Study on the Evolution of Developer Social Networks

Software development is incredibly complex. Specifically, open-source software (OSS) development requires developers to collaborate with each other to conduct their work. Because software systems are evolving with time, collaboration among software developers may affect the quality of evolved software. The OSS developer teams collaborate in various tasks, including communications, coordination, and making various social collaboration in the OSS projects (e.g., bug/issue report, discussion, code revisions, and so on) without access restriction, and all these activities are used to generate an implicit developer social network (DSN). The DSN that is based on a bug tracking system is one of the most important DSNs that reflect the real collaboration between developers. As the software system evolves, the DSN evolves. This paper describes an empirical study of the evolution of DSNs on OSS projects collected from GitHub. Four perspectives were used: social network analysis, DSN as an ecosystem, community evolution patterns, and the core-periphery structure. The results demonstrated the DSNs over time have followed the power law degree distribution with +1% or more as an increasing rate to be more fitting over time. DSNs over time are considered a small-world community. DSNs over time exhibits about 55% diversity with 75% of evenness between the developers to contribute in different OSS projects in the same environment. Moreover, DSNs over time have a few developers as core members and large developers as peripheral members. Finally, about 10% of developers changed their positions frequently over time.

[1]  Gabriele Bavota,et al.  The Evolution of Project Inter-dependencies in a Software Ecosystem: The Case of Apache , 2013, 2013 IEEE International Conference on Software Maintenance.

[2]  Martin G. Everett,et al.  Models of core/periphery structures , 2000, Soc. Networks.

[3]  Yun Chi,et al.  Blog Community Discovery and Evolution Based on Mutual Awareness Expansion , 2007, IEEE/WIC/ACM International Conference on Web Intelligence (WI'07).

[4]  Audris Mockus,et al.  Software Dependencies, Work Dependencies, and Their Impact on Failures , 2009, IEEE Transactions on Software Engineering.

[5]  Ashish Sureka,et al.  Using social network analysis for mining collaboration data in a defect tracking system for risk and vulnerability analysis , 2011, ISEC.

[6]  Jeffrey C. Carver,et al.  Impact of developer reputation on code review outcomes in OSS projects: an empirical investigation , 2014, ESEM '14.

[7]  Daniela E. Damian,et al.  Does Socio-Technical Congruence Have an Effect on Software Build Success? A Study of Coordination in a Software Project , 2011, IEEE Transactions on Software Engineering.

[8]  Michele Lanza,et al.  Collaboration in open-source projects: myth or reality? , 2014, MSR 2014.

[9]  He Jiang,et al.  Developer prioritization in bug repositories , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[10]  Daniela E. Damian,et al.  Predicting build failures using social network analysis on developer communication , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[11]  Alberto Sillitti,et al.  Exploring Collaboration Networks in Open-Source Projects , 2013, OSS.

[12]  Bogdan Vasilescu,et al.  Developer initiation and social interactions in OSS: A case study of the Apache Software Foundation , 2015, Empirical Software Engineering.

[13]  Vibhu Saujanya Sharma,et al.  Studying team evolution during software testing , 2011, CHASE '11.

[14]  Amit Kumar,et al.  Evolution of developer social network and its impact on bug fixing process , 2013, ISEC.

[15]  Tao Zhang,et al.  An Automated Bug Triage Approach: A Concept Profile and Social Network Based Developer Recommendation , 2012, ICIC.

[16]  James D. Herbsleb,et al.  Communication networks in geographically distributed software development , 2008, CSCW.

[17]  Mircea Lungu,et al.  Towards reverse engineering software ecosystems , 2008, 2008 IEEE International Conference on Software Maintenance.

[18]  Hosung Park,et al.  What is Twitter, a social network or a news media? , 2010, WWW '10.

[19]  Kouichi Kishida,et al.  Toward an understanding of the motivation of open source software developers , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[20]  Weiqiang Zhang,et al.  Developer social networks in software engineering: construction, analysis, and applications , 2014, Science China Information Sciences.

[21]  Jesús M. González-Barahona,et al.  Lessons learned from applying social network analysis on an industrial Free/Libre/Open Source Software ecosystem , 2015, Journal of Internet Services and Applications.

[22]  Tom Mens,et al.  Studying Evolving Software Ecosystems based on Ecological Models , 2014, Evolving Software Systems.

[23]  Shing-Chi Cheung,et al.  Understanding a developer social network and its evolution , 2011, 2011 27th IEEE International Conference on Software Maintenance (ICSM).

[24]  Ingo Scholtes,et al.  Categorizing bugs with social networks: A case study on four open source software communities , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[25]  Peter J. Bentley,et al.  Evolving relationships between social networks and stakeholder involvement in software projects , 2011, GECCO '11.

[26]  Georgios Gousios,et al.  Lean GHTorrent: GitHub data on demand , 2014, MSR 2014.

[27]  Christoph Treude,et al.  The Social Side of Software Platform Ecosystems , 2016, CHI.

[28]  Kevin Crowston,et al.  The social structure of free and open source software development , 2005, First Monday.

[29]  Jesús M. González-Barahona,et al.  Evolution of the core team of developers in libre software projects , 2009, 2009 6th IEEE International Working Conference on Mining Software Repositories.

[30]  James D. Herbsleb,et al.  Influence of social and technical factors for evaluating contribution in GitHub , 2014, ICSE.

[31]  Zhongjie Wang,et al.  Empirical Study on the Similarity and Difference between VCS-DSN and BTS-DSN , 2017, ICMSS '17.

[32]  Andreas Zeller,et al.  When do changes induce fixes? , 2005, ACM SIGSOFT Softw. Eng. Notes.

[33]  James M. Bieman,et al.  The FreeBSD project: a replication case study of open source development , 2005, IEEE Transactions on Software Engineering.

[34]  Ahmed E. Hassan,et al.  Studying the impact of social interactions on software quality , 2012, Empirical Software Engineering.