OSS projects are dynamic in nature. Developers contribute to a project for a certain period of time and later leave the project or join other projects of high interest. Hence, the OSS community always welcomes members who can attain the role of a developer in a project. In this paper, we investigate contributions made by members who have attained the role of a developer. In particular, we study the contributions made by the members in terms of bugs reported, comments on bugs, source-code patch submissions, and their social relation with other members of an OSS community. Further, we study the significance of nondevelopers contribution and investigate if and to what extent they play a role in the long-term survival of an OSS project. Moreover, we investigate the ratio of contributions made by a member before and after attaining the role of a developer. We have outlined 4 research questions in this regard and further discuss our findings based on the research questions by taking into account data from software repositories of 4 different Apache projects. 1. Introduction and Motivation Open source software (OSS) is a good example of global software development. It has gained a lot of attraction from the public and the software engineering community over the past decade. The success of an OSS project is highly dependent on the infrastructure provided by the community to the developers and users in order to collaborate with each other [1]. It is important to understand how the OSS project and the community surrounding it evolve over time. During the project and community evolution, the roles of the members change significantly, depending on how much the member wants to get involved into the community. Unlike a project member in a software company whose role is determined by a project manager and remains unchanged for a long period of time until the member is promoted or leaves, the role in an OSS project is not preassigned and is assumed by a member as he/she interacts with other members. An active and determined member usually becomes a “core member” through the following path: a newcomer starts as a “reader”, reading messages on the mailing lists, going through the wiki pages and other documentation, and so forth, in order to understand how the system works. Later, he starts to discover and report bugs, which does not require any technical knowledge, and becomes a “bug reporter”. After gaining good understanding of the system and community, he may start fixing small and easy bugs which he identifies himself or are reported by other members of the system,
References
[1]
B. Shibuya and T. Tamai, “Understanding the process of participating in open source communities,” in Proceedings of the ICSE Workshop on Emerging Trends in Free/Libre/Open Source Software Research and Development (FLOSS '09), pp. 1–6, IEEE Computer Society, Washington, DC, USA, May 2009.
[2]
G. Von Krogh, S. Spaeth, and K. R. Lakhani, “Community, joining, and specialization in open source software innovation: a case study,” Research Policy, vol. 32, no. 7, pp. 1217–1241, 2003.
[3]
C. Bird, A. Gourley, P. Devanbu, A. Swaminathan, and G. Hsu, “Open borders? Immigration in open source projects,” in Proceedings of the 4th International Workshop on Mining Software Repositories (MSR '07), Washington, DC, USA, May 2007.
[4]
M. Antikainen, T. Aaltonen, and J. V?is?nen, “The role of trust in OSS communities—case Linux Kernel community,” IFIP International Federation for Information Processing, vol. 234, pp. 223–228, 2007.
[5]
Y. Ye, K. Nakakoji, Y. Yamamoto, and K. Kishida, “The co-evolution of systems and communities in Free and Open Source Software Development,” in Free/Open Source Software Development, pp. 59–82, Idea Group, Hershey, Pa, USA, 2004.
[6]
http://ant.apache.org/.
[7]
http://lucene.apache.org/.
[8]
http://maven.apache.org/.
[9]
http://lucene.apache.org/solr/.
[10]
K. Crowston and J. Howison, “The social structure of free and open source software development,” in Proceedings of the International Conference on Information Systems, Seattle, Wash, USA, 2003.
[11]
C. Jensen and W. Scacchi, “Modelling recruitment and role migration process in oosd projects,” in Proceedings of the 6th International Workshop on Software Process Simulation and Modeling, St. Louis, Mo, USA, 2005.
[12]
A. Mockus, R. T. Fielding, and J. D. Herbsleb, “Two case studies of open source software development: apache and mozilla,” ACM Transactions on Software Engineering and Methodology, vol. 11, no. 3, pp. 309–346, 2002.
[13]
T. Dinh-Trong and J. M. Bieman, “Open source software development: a case study of freeBSD,” in Proceedings of the 10th International Symposium on Software Metrics (METRICS '04), pp. 96–105, Washington, DC, USA, September 2004.
[14]
N. Ducheneaut, “Socialization in an open source software community: a socio-technical analysis,” Computer Supported Cooperative Work, vol. 14, no. 4, pp. 323–368, 2005.
[15]
D. Cox and D. Oakes, Analysis of Survival Data: Monographs on Statistics and Applied Probability, Chapman and Hall, 1984.
[16]
I. Herraiz, G. Robles, J. J. Amor, T. Romera, and J. M. G. Barahona, “The processes of joining in global distributed software projects,” in Proceedings of the International Workshop on Global Software Development for the Practitioner (GSD '06), pp. 27–33, 2006.
[17]
W. Scacchi, J. Feller, B. Fitzgerald, S. Hissam, and K. Lakhani, “Understanding free/open source software development processes,” Software Process Improvement and Practice, vol. 11, no. 2, pp. 95–105, 2006.
[18]
M. Fischer, M. Pinzger, and H. Gall, “Populating a release history database from version control and bug tracking systems,” in Proceedings of the International Conference on Software Maintenance (ICSM '03), pp. 23–32, IEEE Computer Society, Washington, DC, USA, September 2003.
[19]
S. Wasserman and K. Faust, Social Network Analysis: Methods and Applications, Cambridge University Press, 1994.
[20]
A. Iqbal and M. Hausenblas, “Interlinking developer identities within and across open source projects: the linked data approach,” ISRN Software Engineering, vol. 2013, Article ID 584731, 12 pages, 2013.
[21]
C. Bird, A. Gourley, and P. Devanbu, “Detecting patch submission and acceptance in OSS projects,” in Proceedings of the 4th International Workshop on Mining Software Repositories (MSR '07), Washington, DC, USA, May 2007.
[22]
A. Iqbal, O. Ureche, M. Hausenblas, and G. Tummarello, “LD2SD: linked data driven software development,” in Proceedings of the 21st International Conference on Software Engineering and Knowledge Engineering (SEKE '09), pp. 240–245, Boston, Mass, USA, July 2009.