ABSTRACT
Software development teams must be properly structured to provide effectiv collaboration to produce quality software. Over the last several years, social network analysis (SNA) has emerged as a popular method for studying the collaboration and organization of people working in large software development teams. Researchers have been modeling networks of developers based on socio-technical connections found in software development artifacts. Using these developer networks, researchers have proposed several SNA metrics that can predict software quality factors and describe the team structure. But do SNA metrics measure what they purport to measure? The objective of this research is to investigate if SNA metrics represent socio-technical relationships by examining if developer networks can be corroborated with developer perceptions. To measure developer perceptions, we developed an online survey that is personalized to each developer of a development team based on that developer's SNA metrics. Developers answered questions about other members of the team, such as identifying their collaborators and the project experts. A total of 124 developers responded to our survey from three popular open source projects: the Linux kernel, the PHP programming language, and the Wireshark network protocol analyzer. Our results indicate that connections in the developer network are statistically associated with the collaborators whom the developers named. Our results substantiate that SNA metrics represent socio-technical relationships in open source development projects, while also clarifying how the developer network can be interpreted by researchers and practitioners.
- A. Begel, Y. P. Khoo, and T. Zimmermann, "Codebook: Discovering and Exploiting Relationships in Software Repositories," in Int'l Conference on Software Engineering (ICSE), Cape Town, South Africa, 2010, p. 125--134. Google ScholarDigital Library
- C. Bird, A. Gourley, P. Devanbu et al., "Mining Email Social Networks in Postgres," in Mining Software Repositories, Shanghai, China, 2006, p. 185--186. Google ScholarDigital Library
- C. Bird, N. Nagappan, P. Devanbu et al., "Does Distributed Development Affect Software Quality? An Empirical Case Study of Windows Vista," Comm. of the ACM, vol. 52, no. 8, p. 85--93, 2009. Google ScholarDigital Library
- C. Bird, D. Pattison, R. D'Souza et al., "Latent Social Structures in Open Source Projects," in FSE, Atlanta, GA, 2008, p. p24--36. Google ScholarDigital Library
- U. Brandes, and T. Erlebach, Network Analysis: Methodological Foundations, Berlin: Springer, 2005. Google ScholarDigital Library
- T. G. Cummings, "Self-Regulating Work Groups: A Socio-Technical Synthesis" The Academy of Management Review, vol. 3, no. 3, p. 625--634, 1978.Google ScholarCross Ref
- A. Meneely, M. Corcoran, and L. Williams, "Improving Developer Activity Metrics with Issue Tracking Annotations," in Workshop on Emerging Trends in Software Metrics (WETSoM), Cape Town, South Africa, 2010, p. Google ScholarDigital Library
- A. Meneely, and L. Williams, "Secure Open Source Collaboration: An Empirical Study of Linus' Law" in Computer and Communications Security, Chicago, IL, 2009, p. 453--462. Google ScholarDigital Library
- A. Meneely, and L. Williams, "Strengthening the Empirical Analysis between Developer Collaboration and Software Security," in Empirical Software Engineering & Measurement (ESEM), Bolzano-Bozen, Italy, 2010, p. to appear. Google ScholarDigital Library
- A. Meneely, L. Williams, J. Osborne et al., "Predicting Failures with Developer Networks and Social Network Analysis " in Foundations in Software Engineering, Atlanta, GA, 2008, p. 13--23. Google ScholarDigital Library
- N. Nagappan, B. Murphy, and V. R. Basili, "The Influence of Organizational Structure on Software Quality," in International Conference on Software Engineering, Leipzig, Germany, 2008, p. 521--530. Google ScholarDigital Library
- R. Nia, C. Bird, P. Devanbu et al., "Validity of Network Analyses in Open Source Projects," in Mining Software Repositories, Cape Town, South Africa, 2010, p.Google Scholar
- M. Pinzger, N. Nagappan, and B. Murphy, "Can Developer-Module Networks Predict Failures?," in Foundations in Software Engineering, Atlanta, GA, 2008, p. 2--12. Google ScholarDigital Library
- E. S. Raymond, The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary, Sebastopol, California: O'Reilly and Associates, 1999. Google ScholarDigital Library
- A. Sarma, L. Maccherone, P. Wagstrom et al., "Tesseract: Interactive visual exploration of socio-technical relationships in software development," in Proceedings of the 2009 IEEE 31st International Conference on Software Engineering, 2009, pp. 22--33. Google ScholarDigital Library
- Y. Shin, A. Meneely, L. Williams et al., "Evaluating Complexity, Code Churn, and Developer Activity Metrics as Indicators of Software Vulnerabilities," IEEE Transactions in Software Engineering (TSE), vol. to appear, no. p. 2010. Google ScholarDigital Library
- E. Trist, and K. Bamforth, "Some social and psychological consequences of the longwall method of coal getting," Human Relations, vol. 4, no. 1, p. 3--38, 1951.Google ScholarCross Ref
- T. Wolf, A. Schroter, D. Damian et al., "Predicting build failures using social network analysis on developer communication," in Proceedings of the 2009 IEEE 31st International Conference on Software Engineering, 2009. Google ScholarDigital Library
Index Terms
- Socio-technical developer networks: should we trust our measurements?
Recommendations
Predicting failures with developer networks and social network analysis
SIGSOFT '08/FSE-16: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineeringSoftware fails and fixing it is expensive. Research in failure prediction has been highly successful at modeling software failures. Few models, however, consider the key cause of failures in software: people. Understanding the structure of developer ...
Best managerial practices in agile development
ACM SE '14: Proceedings of the 2014 ACM Southeast Regional ConferenceAgile development has been gaining momentum over the year. It practices are perceived by some to be the best for software development. This work investigates agile best development and managerial practices, specially the benefits for optimizing the ...
Stakeholder Involvement in Agile Software Development
NordiCHI '16: Proceedings of the 9th Nordic Conference on Human-Computer InteractionAgile software development processes (Agile), such as Scrum, DSDM, XP and Kanban, have become de facto standards for software development practice. Scrum, the most commonly used process, focuses on delivering functioning software early and continuously, ...
Comments