Advertisement

Characterizing Key Developers: A Case Study with Apache Ant

  • Gustavo A. Oliva
  • Francisco W. Santana
  • Kleverton C. M. de Oliveira
  • Cleidson R. B. de Souza
  • Marco A. Gerosa
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7493)

Abstract

The software architecture of a software system and the coordination efforts necessary to create such system are intrinsically related. Making changes to components that a large number of other components rely on, the technical core, is usually difficult due to the complexity of the coordination of all involved developers. However, a distinct group of developers effectively help evolving the technical core of software projects. This group of developers is called key developers. In this paper we describe a case study involving the Apache Ant project aimed to identify and characterize key developers in terms of their volume of contribution and social participation. Our results indicated that only 25% of the developers may be considered as key developers. Results also showed that key developers are often active in the developers’ mailing list and often fulfilled the coordination requirements that emerged from their development tasks. Finally, we observed that the set of key developers was indistinguishable from the set of top contributors. We expect that this characterization enables further exploration over contribution patterns and the establishment of profiles of FLOSS key developers.

Keywords

software architecture collaboration socio-technical analysis mining software repositories case study 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Balieiro, M., de Júnior, S., de Souza, C.: Facilitating Social Network Studies of Floss Using the Ossnetwork Environment. In: Russo, B., Damiani, E., Hissam, S., Lundell, B., Succi, G. (eds.) Open Source Development, Communities and Quality. IFIP, vol. 275, pp. 343–350. Springer, Boston (2008), http://dx.doi.org/10.1007/978-0-387-09684-1_31,10.1007/978-0-387-09684-1_31 CrossRefGoogle Scholar
  2. 2.
    Bass, M., Mikulovic, V., Bass, L., Herbsleb, J., Cataldo, M.: Architectural misalignment: An experience report. In: Proceedings of the Sixth Working IEEE/IFIP Conference on Software Architecture, WICSA 2007, p. 17. IEEE Computer Society, Washington, DC (2007), http://dx.doi.org/10.1109/WICSA.2007.12 CrossRefGoogle Scholar
  3. 3.
    Burton, R.M., Obel, B.: Strategic Organizational Diagnosis and Design: The Dynamics of Fit, 3rd edn. Information and Organization Design Series. Springer (2003)Google Scholar
  4. 4.
    Cataldo, M.: Dependencies in geographically distributed software development: over-coming the limits of modularity. Ph.D. thesis, Pittsburgh, PA, USA (2007), aAI3292617Google Scholar
  5. 5.
    Cataldo, M., Wagstrom, P., Herbsleb, J.D., Carley, K.M.: Identification of coordina-tion requirements: implications for the design of collaboration and awareness tools. In: Hinds, P.J., Martin, D. (eds.) CSCW, pp. 353–362. ACM (2006), http://doi.acm.org/10.1145/1180875.1180929
  6. 6.
    Conway, M.: How do committees invent. Datamation 14(4), 28–31 (1968)Google Scholar
  7. 7.
    Costa, J.M., Cataldo, M., de Souza, C.R.: The scale and evolution of coordination needs in large-scale distributed projects: implications for the future generation of collabo-rative tools. In: Proc. of the 2011 Annual Conference on Human Factors in Computing Systems, CHI 2011, pp. 3151–3160. ACM (2011), http://doi.acm.org/10.1145/1978942.1979409
  8. 8.
    Crowston, K., Wei, K., Li, Q., Howison, J.: Core and periphery in free/libre and open source software team communications. In: Proceedings of the 39th Annual Hawaii International Conference on System Sciences, HICSS 2006, p. 118. IEEE Computer Society, Washington, DC (2006), http://dx.doi.org/10.1109/HICSS.2006.101 CrossRefGoogle Scholar
  9. 9.
    Gall, H., Hajek, K., Jazayeri, M.: Detection of logical coupling based on product re-lease history. In: Proceedings of the International Conference on Software Maintenance, ICSM 1998, p. 190. IEEE Computer Society, Washington, DC (1998), http://dl.acm.org/citation.cfm?id=850947.853338 Google Scholar
  10. 10.
    Grinter, R.E.: Systems architecture: product designing and social engineering. SIGSOFT Softw. Eng. Notes 24(2), 11–18 (1999), http://doi.acm.org/10.1145/295666.295668 CrossRefGoogle Scholar
  11. 11.
    Levine, J.M., Moreland, R.L.: Progress in small group research. Annual Review of Psychology 41(1), 585–634 (1990), http://arjournals.annualreviews.org/doi/abs/10.1146/annurev.ps.41.020190.003101 CrossRefGoogle Scholar
  12. 12.
    McGrath, J.E.: Dilemmatics: The study of research choices and dilemmas. American Behavioral Scientist 25(2), 179–210 (1981), http://abs.sagepub.com/cgi/doi/10.1177/000276428102500205 CrossRefGoogle Scholar
  13. 13.
    Mockus, A., Fielding, R.T., Herbsleb, J.D.: Two case studies of open source software development: Apache and mozilla. ACM Trans. Softw. Eng. Methodol. 11, 309–346 (2002), http://doi.acm.org/10.1145/567793.567795 CrossRefGoogle Scholar
  14. 14.
    Nakakoji, K., Yamamoto, Y., Nishinaka, Y., Kishida, K., Ye, Y.: Evolution patterns of open-source software systems and communities. In: Proceedings of the International Workshop on Principles of Software Evolution, IWPSE 2002, pp. 76–85. ACM, New York (2002), http://doi.acm.org/10.1145/512035.512055 CrossRefGoogle Scholar
  15. 15.
    Newman, M.: Networks: An Introduction, 1st edn. Oxford University Press (2010)Google Scholar
  16. 16.
    Oezbek, C., Prechelt, L., Thiel, F.: The onion has cancer: some social network analysis visualizations of open source project communication. In: Proceedings of the 3rd International Workshop on Emerging Trends in Free/Libre/Open Source Software Research and Development, FLOSS 2010, pp. 5–10. ACM, New York (2010), http://doi.acm.org/10.1145/1833272.1833274 CrossRefGoogle Scholar
  17. 17.
    Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15, 1053–1058 (1972), http://doi.acm.org/10.1145/361598.361623 CrossRefGoogle Scholar
  18. 18.
    Robles, G., Gonzalez-Barahona, J.: Contributor Turnover in Libre Software Projects. In: Damiani, E., Fitzgerald, B., Scacchi, W., Scotto, M., Succi, G. (eds.) Open Source Systems. IFIP, vol. 203, pp. 273–286. Springer, Boston (2006), http://dx.doi.org/10.1007/0-387-34226-5_28,10.1007/0-387-34226-5_28 CrossRefGoogle Scholar
  19. 19.
    Robles, G., Gonzalez-Barahona, J.M., Herraiz, I.: Evolution of the core team of developers in libre software projects. In: Proceedings of the 2009 6th IEEE International Working Conference on Mining Software Repositories, MSR 2009, pp. 167–170. IEEE Computer Society, Washington, DC (2009), http://dx.doi.org/10.1109/MSR.2009.5069497 CrossRefGoogle Scholar
  20. 20.
    Robson, C.: Real World Research, 2nd edn. John Wiley & Sons (2002)Google Scholar
  21. 21.
    Santana, F., Oliva, G., de Souza, C.R.B., Gerosa, M.A.: Xflow: An extensible tool for empirical analysis of software systems evolution. In: Proceedings of the VIII Experimental Software Engineering Latin American Workshop, ESELAW 2011 (2011)Google Scholar
  22. 22.
    de Souza, C., Froehlich, J., Dourish, P.: Seeking the source: software source code as a social and technical artifact. In: Proc. of the 2005 International ACM SIGGROUP Conference on Supporting Group Work, GROUP 2005, pp. 197–206. ACM (2005), http://doi.acm.org/10.1145/1099203.1099239
  23. 23.
    de Souza, C.R., Quirk, S., Trainer, E., Redmiles, D.F.: Supporting collaborative software development through the visualization of socio-technical dependencies. In: Proc. of the 2007 International ACM Conference on Supporting Group Work, GROUP 2007, pp. 147–156. ACM (2007), http://doi.acm.org/10.1145/1316624.1316646
  24. 24.
    Souza, C.R., Redmiles, D.F.: On the roles of apis in the coordination of collaborative software development. Comput. Supported Coop. Work 18(5-6), 445–475 (2009), http://dx.doi.org/10.1007/s10606-009-9101-3 CrossRefGoogle Scholar
  25. 25.
    Staudenmayer, N.A.: Managing multiple interdependencies in large scale software development projects. Ph.D. thesis, Massachusetts Institute of Technology (1997)Google Scholar
  26. 26.
    Terceiro, A., Rios, L.R., Chavez, C.: An empirical study on the structural complexity introduced by core and peripheral developers in free software projects. In: Proceedings of the 2010 Brazilian Symposium on Software Engineering, SBES 2010. IEEE Computer Society, Washington, DC (2010), http://dx.doi.org/10.1109SBES.2010.26 Google Scholar
  27. 27.
    Valetto, G., Helander, M., Ehrlich, K., Chulani, S., Wegman, M., Williams, C.: Using software repositories to investigate socio-technical congruence in development projects. In: Proceedings of the Fourth International Workshop on Mining Software Repositories, MSR 2007, p. 25. IEEE Computer Society, Washington, DC (2007), http://dx.doi.org/10.1109/MSR.2007.33 CrossRefGoogle Scholar
  28. 28.
    Yin, R.K.: Case study research: Design and methods, 3rd edn. Sage Publications (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Gustavo A. Oliva
    • 1
  • Francisco W. Santana
    • 2
  • Kleverton C. M. de Oliveira
    • 2
  • Cleidson R. B. de Souza
    • 2
    • 3
  • Marco A. Gerosa
    • 1
  1. 1.Department of Computer ScienceUniversity of São Paulo (USP)Brazil
  2. 2.Computing DepartmentFederal University of Pará (UFPA)Brazil
  3. 3.Vale Technological Institute – Sustainable Development (ITV – DS)Brazil

Personalised recommendations