Social Computing in Open Source Community: A Study of Software Reuse

Software projects are not developed in isolation but often build upon other open source resources. These projects form a kind of reference ecosystem regarded as a software world. Most of social computing works focus on social networks such as Facebook and weibo to mine information. However, few previous works analyze Open Source Community which could help developers conduct collaborative development. In this paper, we model the Java reference ecosystem as a network based on the reuse relationships of GitHub-hosted Java projects and analyze the characteristics and the patterns of this reference ecosystem by using community detection and pattern discovery algorithms. Our study indicates that (1) Developers prefer to reuse software limited in only a small part of projects with cross cutting functionality or advanced applications. (2) Developers usually select software reused with similar function widely depending on different requirements, resulting to different patterns. Based on these collective intelligence, our study opens up several possible future directions of reuse recommendation, which are considered as guidance of collaborative development.

[1]  Sushil Krishna Bajracharya,et al.  Automated dependency resolution for open source software , 2010, 2010 7th IEEE Working Conference on Mining Software Repositories (MSR 2010).

[2]  Rahul De',et al.  Notice of Violation of IEEE Publication PrinciplesOpen source reuse in commercial firms , 2004, IEEE Software.

[3]  Rafal Drezewski,et al.  The application of social network analysis algorithms in a system supporting money laundering detection , 2015, Inf. Sci..

[4]  Marko Bajec,et al.  Community structure of complex software systems: Analysis and applications , 2011, ArXiv.

[5]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[6]  Qiuju Luo,et al.  Using social network analysis to explain communication characteristics of travel-related electronic word-of-mouth on social networking sites. , 2015 .

[7]  Rodrigo Pereira dos Santos,et al.  A systematic mapping study on software ecosystems from a three-dimensional perspective , 2013 .

[8]  Jean-Loup Guillaume,et al.  Fast unfolding of communities in large networks , 2008, 0803.0476.

[9]  S. Shen-Orr,et al.  Network motifs: simple building blocks of complex networks. , 2002, Science.

[10]  M E J Newman,et al.  Finding and evaluating community structure in networks. , 2003, Physical review. E, Statistical, nonlinear, and soft matter physics.

[11]  Mathieu Bastian,et al.  Gephi: An Open Source Software for Exploring and Manipulating Networks , 2009, ICWSM.

[12]  Grady Booch,et al.  Reusing Open-Source Software and Practices: The Impact of Open-Source on Commercial Vendors , 2002, ICSR.

[13]  Sebastian Wernicke,et al.  FANMOD: a tool for fast network motif detection , 2006, Bioinform..

[14]  Trevor Darrell,et al.  Caffe: Convolutional Architecture for Fast Feature Embedding , 2014, ACM Multimedia.

[15]  Georgios Gousios,et al.  GHTorrent: Github's data from a firehose , 2012, 2012 9th IEEE Working Conference on Mining Software Repositories (MSR).

[16]  Alexander Serebrenik,et al.  Survival of Eclipse third-party plug-ins , 2012, 2012 28th IEEE International Conference on Software Maintenance (ICSM).