Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1109/ICSE.2017.23acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Classifying developers into core and peripheral: an empirical study on count and network metrics

Published: 20 May 2017 Publication History

Abstract

Knowledge about the roles developers play in a software project is crucial to understanding the project's collaborative dynamics. In practice, developers are often classified according to the dichotomy of core and peripheral roles. Typically, count-based operationalizations, which rely on simple counts of individual developer activities (e.g., number of commits), are used for this purpose, but there is concern regarding their validity and ability to elicit meaningful insights. To shed light on this issue, we investigate whether count-based operationalizations of developer roles produce consistent results, and we validate them with respect to developers' perceptions by surveying 166 developers. Improving over the state of the art, we propose a relational perspective on developer roles, using fine-grained developer networks modeling the organizational structure, and by examining developer roles in terms of developers' positions and stability within the developer network. In a study of 10 substantial open-source projects, we found that the primary difference between the count-based and our proposed network-based core-peripheral operationalizations is that the network-based ones agree more with developer perception than count-based ones. Furthermore, we demonstrate that a relational perspective can reveal further meaningful insights, such as that core developers exhibit high positional stability, upper positions in the hierarchy, and high levels of coordination with other core developers, which confirms assumptions of previous work.

References

[1]
G. Bavota, B. Dit, R. Oliveto, M. Di Penta, D. Poshyvanyk, and A. De Lucia. An empirical study on the developers' perception of software coupling. In Proc. International Conference on Software Engineering, pages 692--701. IEEE, 2013.
[2]
C. Bird, A. Gourley, P. Devanbu, M. Gertz, and A. Swaminathan. Mining email social networks. In Proc. International Workshop on Mining Software Repositories, pages 137--143. ACM, 2006.
[3]
C. Bird, A. Gourley, P. Devanbu, A. Swaminathan, and G. Hsu. Open borders? Immigration in open source projects. In Proc. International Workshop on Mining Software Repositories. IEEE, 2007.
[4]
C. Bird, D. Pattison, R. D'Souza, V. Filkov, and P. Devanbu. Latent social structure in open source projects. In Proc. International Symposium on Foundations of Software Engineering, pages 24--35. ACM, 2008.
[5]
C. M. Bishop. Pattern recognition and machine learning. Springer, 2006.
[6]
S. P. Borgatti and M. G. Everett. Models of core/periphery structures. Social networks, 21(4):375--395, 2000.
[7]
U. Brandes and T. Erlebach. Network Analysis: Methodological Foundations. Springer, 2005.
[8]
M. Cataldo and J. D. Herbsleb. Communication networks in geo-graphically distributed software development. In Proc. International Conference on Computer Supported Cooperative Work, pages 579--588. ACM, 2008.
[9]
M. Cataldo and J. D. Herbsleb. Coordination breakdowns and their impact on development productivity and software failures. IEEE Transactions on Software Engineering, 39(3):343--360, 2013.
[10]
K. Crowston and J. Howison. The social structure of free and open source software development. First Monday, 10(2), 2005.
[11]
K. Crowston, K. Wei, Q. Li, and J. Howison. Core and periphery in free/libre and open source software team communications. In Proc. International Conference on System Sciences, pages 45--56. IEEE, 2006.
[12]
C. de Souza, J. Froehlich, and P. Dourish. Seeking the source: Software source code as a social and technical artifact. In Proc. International Conference on Supporting Group Work, pages 197--206. ACM, 2005.
[13]
C. R. B. de Souza and D. F. Redmiles. The awareness network, to whom should I display my actions? And, whose actions should I monitor? IEEE Transactions on Software Engineering, 37(3):325--340, 2011.
[14]
T. T. Dinh-Trong and J. M. Bieman. The FreeBSD project: A replication case study of open source development. IEEE Transactions on Software Engineering, 31(6):481--494, 2005.
[15]
I. Feinerer and W. Mauerer. tm.plugin.mail: Text Mining E-Mail Plug-In, 2014. R package version 0.1-1.
[16]
J. D. Hamilton. Time Series Analysis, volume 2. Princeton University Press, 1994.
[17]
J. D. Herbsleb and A. Mockus. Formulation and preliminary test of an empirical theory of coordination in software engineering. In Proc. European Software Engineering Conference and the International Symposium on Foundations of Software Engineering, pages 138--137. ACM, 2003.
[18]
C. Jensen and W. Scacchi. Role migration and advancement processes in OSSD projects: A comparative case study. In Proc. International Conference on Software Engineering, pages 364--374. IEEE, 2007.
[19]
C. Jergensen, A. Sarma, and P. Wagstrom. The onion patch: Migration in open source ecosystems. In Proc. European Software Engineering Conference and the International Symposium on the Foundations of Software Engineering, pages 70--80. ACM, 2011.
[20]
M. Joblin, S. Apel, and W. Mauerer. Evolutionary trends of developer coordination: A network approach. Empirical Software Engineering, 2017. Online first.
[21]
M. Joblin, W. Mauerer, S. Apel, J. Siegmund, and D. Riehle. From developer networks to verified communities: A fine-grained approach. In Proc. International Conference on Software Engineering, pages 563--573. IEEE, 2015.
[22]
J. R. Landis and G. G. Koch. The measurement of observer agreement for categorical data. Biometrics, 33(1):159--174, 1977.
[23]
C. Manteli, B. Van Den Hooff, and H. Van Vliet. The effect of governance on global software development: An empirical research in transactive memory systems. Information and Software Technology, 56(10):1309--1321, 2014.
[24]
A. Meneely and L. Williams. Socio-technical developer networks: Should we trust our measurements? In Proc. International Conference on Software Engineering, pages 281--290. ACM, 2011.
[25]
A. Mockus, R. T. Fielding, and J. D. Herbsleb. Two case studies of open source software development: Apache and Mozilla. ACM Transactions Software Engineering Methodology, 11(3):309--346, 2002.
[26]
K. Nakakoji, Y. Yamamoto, Y. Nishinaka, K. Kishida, and Y. Ye. Evolution patterns of open-source software systems and communities. In Proc. International Workshop on Principles of Software Evolution, pages 76--85. ACM, 2002.
[27]
G. A. Oliva, F. W. Santana, K. C. M. de Oliveira, C. R. B. de Souza, and M. A. Gerosa. Characterizing key developers: A case study with Apache Ant. In Proc. International Conference on Collaboration and Technology, pages 97--112. Springer, 2012.
[28]
E. Ravasz and A.-L. Barabási. Hierarchical organization in complex networks. Physical Review E, 67(2), 2003.
[29]
G. Robles and J. M. Gonzalez-Barahona. Contributor turnover in libre software projects. In Open Source Systems, pages 273--286. Springer, 2006.
[30]
G. Robles, J. M. Gonzalez-Barahona, and I. Herraiz. Evolution of the core team of developers in libre software projects. In Proc. Mining Software Repositories, pages 167--170. IEEE, 2009.
[31]
F. Shull, J. Singer, and D. I. Sjøberg. Guide to Advanced Empirical Software Engineering. Springer, 2007.
[32]
A. Terceiro, L. R. Rios, and C. Chavez. An empirical study on the structural complexity introduced by core and peripheral developers in free software projects. In Proc. Brazilian Symposium on Software Engineering, pages 21--29. IEEE, 2010.
[33]
Y. Ye and K. Kishida. Toward an understanding of the motivation open source software developers. In Proc. International Conference on Software Engineering, pages 419--429. IEEE, 2003.
[34]
X. Zhang, T. Martin, and M. E. J. Newman. Identification of core-periphery structure in networks. Physical Review E, 91, 2015.

Cited By

View all
  • (2024)An Explainable Automated Model for Measuring Software Engineer ContributionProceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering10.1145/3691620.3695071(783-794)Online publication date: 27-Oct-2024
  • (2024)Thirty-Three Years of Mathematicians and Software Engineers: A Case Study of Domain Expertise and Participation in Proof Assistant EcosystemsProceedings of the 21st International Conference on Mining Software Repositories10.1145/3643991.3644908(1-13)Online publication date: 15-Apr-2024
  • (2024)Understanding Developers’ Discussions and Perceptions on Non-functional Requirements: The Case of the Spring EcosystemProceedings of the ACM on Software Engineering10.1145/36437501:FSE(517-538)Online publication date: 12-Jul-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '17: Proceedings of the 39th International Conference on Software Engineering
May 2017
816 pages
ISBN:9781538638682

Sponsors

Publisher

IEEE Press

Publication History

Published: 20 May 2017

Check for updates

Qualifiers

  • Research-article

Conference

ICSE '17
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)13
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)An Explainable Automated Model for Measuring Software Engineer ContributionProceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering10.1145/3691620.3695071(783-794)Online publication date: 27-Oct-2024
  • (2024)Thirty-Three Years of Mathematicians and Software Engineers: A Case Study of Domain Expertise and Participation in Proof Assistant EcosystemsProceedings of the 21st International Conference on Mining Software Repositories10.1145/3643991.3644908(1-13)Online publication date: 15-Apr-2024
  • (2024)Understanding Developers’ Discussions and Perceptions on Non-functional Requirements: The Case of the Spring EcosystemProceedings of the ACM on Software Engineering10.1145/36437501:FSE(517-538)Online publication date: 12-Jul-2024
  • (2024)Characterizing Developers' Linguistic Behaviors in Open Source Development across Their Social StatusesProceedings of the ACM on Human-Computer Interaction10.1145/36373068:CSCW1(1-33)Online publication date: 26-Apr-2024
  • (2024)How Are Paid and Volunteer Open Source Developers Different? A Study of the Rust ProjectProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639197(1-13)Online publication date: 20-May-2024
  • (2023)Risk Assessment of Using Open Source Projects: Analysis of the Existing ApproachesAutomatic Control and Computer Sciences10.3103/S014641162308005957:8(938-946)Online publication date: 1-Dec-2023
  • (2023)Investigating Developers' Contributions to Test Smell Survivability: A Study of Open-Source ProjectsProceedings of the 8th Brazilian Symposium on Systematic and Automated Software Testing10.1145/3624032.3624044(86-95)Online publication date: 25-Sep-2023
  • (2023)How Early Participation Determines Long-Term Sustained Activity in GitHub Projects?Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3616349(29-41)Online publication date: 30-Nov-2023
  • (2023)Contribution-Based Firing of Developers?Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3613085(2062-2066)Online publication date: 30-Nov-2023
  • (2023)Automatic Core-Developer Identification on GitHub: A Validation StudyACM Transactions on Software Engineering and Methodology10.1145/359380332:6(1-29)Online publication date: 30-Sep-2023
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media