Advertisement

An Open Source Pattern Language

  • Christoph HannebauerEmail author
  • Volker Gruhn
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10600)

Abstract

This article presents an overview about the current state of research on Open Source Software (OSS) patterns. Currently, there are 40 published OSS patterns. The article argues that 35 of these OSS patterns are unique and categorizes them in eight categories. Two additional types of relationships complement this categorization. The categorization and the relationships shed light on the pattern language aspect of OSS patterns.

Notes

Acknowledgements

We thank Firas Zaidan for his feedback from his analyses of OSS projects. We also thank the anonymous reviewers from TPLOP for their comments to earlier versions of this article.

References

  1. 1.
    Raymond, E.S.: The Cathedral and the Bazaar, 1st edn. O’Reilly & Associates Inc., Sebastopol (1999)Google Scholar
  2. 2.
    Gacek, C., Arief, B.: The many meanings of open source. IEEE Softw. 21, 34–40 (2004)CrossRefGoogle Scholar
  3. 3.
    Ye, Y., Kishida, K.: Toward an understanding of the motivation of open source software developers. In: 2003 Proceedings of the 25th International Conference on Software Engineering, pp. 419–429, May 2003Google Scholar
  4. 4.
    Krishnamurthy, S.: Cave or community? An empirical examination of 100 mature open source projects. In: Social Science Research Network Working Paper Series, vol. 7, no. 6, June 2002Google Scholar
  5. 5.
    Open Source Initiative: The open source definition (2004). http://www.opensource.org/docs/osd. Accessed 14 March 2012
  6. 6.
    Free Software Foundation: The free software definition (2015). http://www.gnu.org/philosophy/free-sw.html. Accessed 14 Sept 2015
  7. 7.
    Alexander, C.: The Timeless Way of Building. Oxford University Press, Oxford (1979)Google Scholar
  8. 8.
    Kelly, A.: Patterns for technology companies. In: Proceedings of the 11th European Conference on Pattern Languages of Programs (2006)Google Scholar
  9. 9.
    Hannebauer, C., Link, C., Gruhn, V.: Patterns for the distribution of power in FLOSS projects. In: Proceedings of the 19th European Conference on Pattern Languages of Programs, EuroPLoP 2014, pp. 35:1–35:7. ACM, New York (2014)Google Scholar
  10. 10.
    Hannebauer, C., Wolff-Marting, V., Gruhn, V.: Contributor-interaction patterns in FLOSS development. In: EuroPLoP 2011, July 2011Google Scholar
  11. 11.
    Hannebauer, C., Wolff-Marting, V., Gruhn, V.: Towards a pattern language for FLOSS development. In: Proceedings of the 2010 Conference on Pattern Languages of Programs. Hillside Group, ACM, New York (2010)Google Scholar
  12. 12.
    Link, C.: Patterns for the commercial use of open source: economic aspects and case studies. In: EuroPLoP 2012. Number Version 398 (2012)Google Scholar
  13. 13.
    Link, C.: Patterns for the commercial use of open source: license patterns. In: EuroPLoP 2011 (2011). Number Version 331Google Scholar
  14. 14.
    Link, C.: Patterns for the commercial use of open source: legal and licensing aspects. In: Proceedings of the 15th European Conference on Pattern Languages of Programs, EuroPLoP 2010, pp. 7:1–7:10. ACM, New York (2010)Google Scholar
  15. 15.
    Weiss, M.: The business of open source: missing patterns. In: Proceedings of the 20th European Conference on Pattern Languages of Programs (2015)Google Scholar
  16. 16.
    Weiss, M.: Profiting even more from open source. In: Proceedings of the 16th European Conference on Pattern Languages of Programs, EuroPLoP 2011, pp. 1:1–1:7. ACM, New York (2011)Google Scholar
  17. 17.
    Weiss, M.: Profiting from open source. In: Proceedings of the 15th European Conference on Pattern Languages of Programs, EuroPLoP 2010, pp. 5:1–5:8. ACM, New York (2010)Google Scholar
  18. 18.
    Weiss, M.: Performance of open source projects. In: 14th Annual European Conference on Pattern Languages of Programming (2009)Google Scholar
  19. 19.
    Weiss, M., Noori, N.: Enabling contributions in open source projects. In: EuroPLoP 2013 (2013)Google Scholar
  20. 20.
    Wolff-Marting, V., Hannebauer, C., Gruhn, V.: Patterns for tearing down contribution barriers to FLOSS projects. In: Proceedings of the 12th SoMeT, September 2013Google Scholar
  21. 21.
    Zaidan, F., Hannebauer, C., Gruhn, V.: Quality attestation: an open source pattern. In: Proceedings of the 21st European Conference on Pattern Languages of Programs, EuroPlop 2016, pp. 2:1–2:7. ACM, New York (2016)Google Scholar
  22. 22.
    Meszaros, G., Doble, J.: A pattern language for pattern writing. In: Martin, R., Riehle, D., Buschmann, F. (eds.) Pattern Languages of Program Design. Software Patterns Series, vol. 3, pp. 529–574. Addison-Wesley (1998)Google Scholar
  23. 23.
    Alexander, C., Ishikawa, S., Silverstein, M., Jacobson, M., Fiksdahl-King, I., Angel, S.: A Pattern Language. Oxford University Press, New York (1977)Google Scholar
  24. 24.
    Fowler, M.: Accountability and organizational structures. In: Vlissides, J.M., Coplien, J.O., Kerth, N.L. (eds.) Pattern Languages of Program Design, vol. 2, pp. 353–370. Addison Wesley (1996)Google Scholar
  25. 25.
    Cunningham, W.: EPISODES: a pattern language of competitive development. In: Vlissides, J.M., Coplien, J.O., Kerth, N.L. (eds.) Pattern Languages of Program Design, vol. 2, pp. 371–388. Addison Wesley (1996)Google Scholar
  26. 26.
    Coplien, J.O., Harrison, N.B.: Organizational Patterns of Agile Software Development. Pearson Prentice Hall, Upper Saddle River (2005)Google Scholar
  27. 27.
    Weir, C.: Patterns for designing in teams. In: Martin, R., Riehle, D., Buschmann, F. (eds.) Pattern Languages of Program Design. Software Patterns Series, vol. 3, pp. 487–501. Addison-Wesley (1998)Google Scholar
  28. 28.
    Roberts, D., Johnson, R.: Patterns for evolving frameworks. In: Martin, R., Riehle, D., Buschmann, F. (eds.) Pattern Languages of Program Design. Software Patterns Series, vol. 3, pp. 471–486. Addison-Wesley (1998)Google Scholar
  29. 29.
    Kelly, A.: More patterns for software companies product development. In: Proceedings of the 12th European Conference on Pattern Languages of Programs (2007)Google Scholar
  30. 30.
    Ratzka, A.: User interface patterns for multimodal interaction. In: Noble, J., Johnson, R., Zdun, U., Wallingford, E. (eds.) Transactions on Pattern Languages of Programming III. LNCS, vol. 7840, pp. 111–167. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-38676-3_4CrossRefGoogle Scholar
  31. 31.
    Ries, E.: The Lean Startup. Crown Business, New York (2011)Google Scholar
  32. 32.
    Neath, K.: Introducing organizations. Github Blog, June 2010. https://github.com/blog/674-introducing-organizations. Accessed 30 Oct 2015
  33. 33.
    Herraiz, I., Robles, G., Amor, J.J., Romera, T., González Barahona, J.M.: The processes of joining in global distributed software projects. In: Proceedings of the 2006 International Workshop on Global Software Development for the Practitioner, GSD 2006, pp. 27–33. ACM, New York (2006)Google Scholar
  34. 34.
    Xu, J., Gao, Y., Christley, S., Madey, G.: A topological analysis of the open souce software development community. In: 2005 Proceedings of the 38th Annual Hawaii International Conference on System Sciences, HICSS 2005, p. 198a, January 2005Google Scholar
  35. 35.
    Capiluppi, A., Michlmayr, M.: From the cathedral to the bazaar: an empirical study of the lifecycle of volunteer community projects. In: Feller, J., Fitzgerald, B., Scacchi, W., Sillitti, A. (eds.) OSS 2007. ITIFIP, vol. 234, pp. 31–44. Springer, Boston, MA (2007).  https://doi.org/10.1007/978-0-387-72486-7_3CrossRefGoogle Scholar
  36. 36.
    Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15, 1053–1058 (1972)CrossRefGoogle Scholar
  37. 37.
    MacCormack, A., Rusnak, J., Baldwin, C.Y.: Exploring the structure of complex software designs: an empirical study of open source and proprietary code. Manag. Sci. 52(7), 1015–1030 (2006)CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.University of Duisburg-EssenEssenGermany

Personalised recommendations