Skip to main content

Management of community contributions

A case study on the Android and Linux software ecosystems

Abstract

In recent years, many companies have realized that collaboration with a thriving user or developer community is a major factor in creating innovative technology driven by market demand. As a result, businesses have sought ways to stimulate contributions from developers outside their corporate walls, and integrate external developers into their development process. To support software companies in this process, this paper presents an empirical study on the contribution management processes of two major, successful, open source software ecosystems. We contrast a for-profit (ANDROID) system having a hybrid contribution style, with a not-for-profit (LINUX kernel) system having an open contribution style. To guide our comparisons, we base our analysis on a conceptual model of contribution management that we derived from a total of seven major open-source software systems. A quantitative comparison based on data mined from the ANDROID code review system and the LINUX kernel code review mailing lists shows that both projects have significantly different contribution management styles, suited to their respective market goals, but with individual advantages and disadvantages that are important for practitioners. Contribution management is a real-world problem that has received very little attention from the research community so far. Both studied systems (LINUX and ANDROID) employ different strategies and techniques for managing contributions, and both approaches are valuable examples for practitioners. Each approach has specific advantages and disadvantages that need to be carefully evaluated by practitioners when adopting a contribution management process in practice.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Notes

  1. http://www.ohloh.net

  2. http://source.android.com/source/life-of-a-patch.html

  3. http://hudson-ci.org/

  4. http://jenkins-ci.org/

  5. https://dev.eclipse.org/ipzilla/

  6. http://www.apache.org/licenses/icla.txt The Apache Software Foundation Individual Contributor License Agreement (CLA).

  7. http://www.opensolaris.org/os/sun_contributor_agreement The Sun Contributor Agreement (SCA).

  8. http://www.github.com/nicbet/MailboxMiner

  9. https://android-review.googlesource.com/

  10. http://google-opensource.blogspot.ca/2010/05/shawn-pearce-on-floss-weekly.html

  11. http://android-developers.blogspot.com/2010/06/froyo-code-drop.html

  12. https://android-review.googlesource.com/#/c/11758/

References

  • Asundi J, Jayant R (2007) Patch review processes in open source software development communities: a comparative case study. In: HICSS ’07: Proceedings of the 40th annual Hawaii international conference on system sciences. IEEE Computer Society, Washington, p. 166c. doi:10.1109/HICSS.2007.426

  • Bass FM (1969) A new product growth for model consumer durables. Manag Sci 15(5):215–227

    Article  Google Scholar 

  • Bettenburg N, Premraj R, Zimmermann T, Kim S (2008) Extracting structural information from bug reports. In: MSR ’08: proceedings of the 2008 international working conference on mining software repositories. ACM, pp 27–30

  • Bettenburg N, Shihab E, Hassan AE (2009a) An empirical study on the risks of using off-the-shelf techniques for processing mailing list data. In: Proc. of the 25th IEEE intl. conf. on software maintenance (ICSM), Edmonton, Canada, pp 539–542

  • Bird C, Gourley A, Devanbu P (2007a) Detecting patch submission and acceptance in oss projects. In: MSR ’07: proceedings of the fourth international workshop on mining software repositories. IEEE Computer Society, Washington, p 26. doi:10.1109/MSR.2007.6

  • Bird C, Gourley A, Devanbu P, Swaminathan A, Hsu G (2007b) Open borders? Immigration in open source projects. In: Proceedings of the fourth international workshop on mining software repositories, MSR ’07. IEEE Computer Society, Washington, p 6. doi:10.1109/MSR.2007.23

  • Bird C, Rigby PC, Barr ET, Hamilton DJ, German DM, Devanbu P (2009) The promises and perils of mining git. In: MSR ’09: proceedings of the 2009 6th IEEE international working conference on mining software repositories. IEEE Computer Society, Washington, pp 1–10. doi:10.1109/MSR.2009.5069475

  • Capiluppi A, Lago P, Morisio M (2003) Characteristics of open source projects. In: CSMR ’03: proceedings of the seventh European conference on software maintenance and reengineering. IEEE Computer Society, Washington, p 317

  • Charmaz K (2006) Constructing grounded theory: a practical guide through qualitative analysis. Constructing grounded theory. SAGE Publications. http://books.google.ca/books?id=v1qP1KbXz1AC

  • Cleveland WS, Devlin SJ (1988) Locally weighted regression: an approach to regression analysis by local fitting. J Am Stat Assoc 83(403):596–610

    Article  Google Scholar 

  • Crowston K, Howison J (2005) The social structure of free and open source software development. First Monday 10(2)

  • Dobson AJ (2002) An introduction to generalized linear models, 2nd edn. Chapman and Hall/CRC, Boston

  • Duvall P, Matyas SM, Glover A (2007) Continuous integration: improving software quality and reducing risk (The Addison-Wesley signature series). Addison-Wesley Professional, Reading

  • German DM, Hassan AE (2009) License integration patterns: addressing license mismatches in component-based development. In: Proc. 31st int. conf. on soft. eng. ICSE, pp 188–198

  • Glaser BG, Strauss AL (1967) The discovery of grounded theory: strategies for qualitative research. Aldine

  • Hecker F (1999) Setting up shop: the business of open-source software. IEEE Softw 16(1):45–51

    Article  Google Scholar 

  • Hippel EV, Krogh GV (2003) Open source software and the “private-collective” innovation model: issues for organization science. Organ Sci 14(2):209–223. doi:10.1287/orsc.14.2.209.14992

    Article  Google Scholar 

  • Jiang Y, Adams B, German DM (2013) Will my patch make it? and how fast?—case study on the linux kernel. In: Proceedings of the 10th IEEE working conference on mining software repositories (MSR), San Francisco, CA, pp 101–110

  • Johnson PM (1998) Reengineering inspection. Commun ACM 41(2):49–52. doi:10.1145/269012.269020

    Article  Google Scholar 

  • Krishnamurthy S (2005) An analysis of open source business models. In: Perspectives on free and open source software (making sense of the Bazaar). MIT Press, Cambridge, pp 279–296

  • Mockus A, Fielding RT, Herbsleb J (2000) A case study of open source software development: the apache server. In: ICSE ’00: proceedings of the 22nd international conference on software engineering. ACM, New York, pp 263–272. doi:10.1145/337180.337209

  • Mockus A, Fielding RT, Herbsleb JD (2002) Two case studies of open source software development: apache and mozilla. ACM Trans Softw Eng Methodol 11(3):309–346. doi:10.1145/567793.567795

    Article  Google Scholar 

  • Porter A, Siy H, Mockus A, Votta L (1998) Understanding the sources of variation in software inspections. ACM Trans Softw Eng Methodol 7(1):41–79. doi:10.1145/268411.268421

    Article  Google Scholar 

  • Raymond ES (2001) The cathedral and the bazaar: musings on Linux and open source by an accidental revolutionary. O’Reilly & Associates, Inc., Sebastopol, CA

  • Reed DP (2001) The law of the pack. Harvard Business Review

  • Rice J (1995) Mathematical statistics and data analysis. Statistics series. Duxbury Press. http://books.google.ca/books?id=bIkQAQAAIAAJ

  • Rigby PC, German DM, Storey MA (2008) Open source software peer review practices: a case study of the apache server. In: ICSE ’08: proceedings of the 30th international conference on software engineering. ACM, New York, pp 541–550. doi:10.1145/1368088.1368162

  • Rosenblatt M (1956) Remarks on some nonparametric estimates of a density function. Ann Math Stat 27(3):832–837

    MathSciNet  Article  Google Scholar 

  • Sethanandha BD, Massey B, Jones W (2010) Managing open source contributions for software project sustainability. In: Proceedings of the 2010 Portland international conference on management of engineering & amp; technology (PICMET 2010), Bangkok, Thailand

  • Strauss A, Corbin J (1990) Basics of qualitative research: grounded theory procedures and techniques. Sage Publications

  • Weissgerber P, Neu D, Diehl S (2008) Small patches get in! In: MSR ’08: proceedings of the 2008 international working conference on mining software repositories. ACM, pp 67–76. doi:10.1145/1370750.1370767

  • Wnuk K, Regnell B, Karlsson L (2009) What happened to our features? Visualization and understanding of scope change dynamics in a large-scale industrial setting. In: 17th IEEE international requirements engineering conference, 2009, RE’09. IEEE, pp 89–98

  • Yin R (2009) Case study research: design and methods. Applied social research methods. SAGE Publications. http://books.google.nl/books?id=FzawIAdilHkC

Download references

Acknowledgements

We would like to thank Richard Ellis for kindly providing us access to the LINUX kernel mailing list MBOX files. We would also like to thank the anonymous reviewers of the earlier version of this paper for their valuable feedback and comments.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nicolas Bettenburg.

Additional information

Communicated by: Per Runeson

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Bettenburg, N., Hassan, A.E., Adams, B. et al. Management of community contributions. Empir Software Eng 20, 252–289 (2015). https://doi.org/10.1007/s10664-013-9284-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10664-013-9284-6

Keywords

  • Software management
  • Software process
  • Measurement
  • Contribution management
  • Open source software
  • Best practices