Skip to main content

Lessons Learned from Using Design Patterns in Industry Projects

  • Chapter
Transactions on Pattern Languages of Programming II

Part of the book series: Lecture Notes in Computer Science ((TPLOP,volume 6510))

Abstract

Design patterns help in the creative act of designing, implementing, and documenting software systems. They have become an important part of the vocabulary of experienced software developers. This article reports about the author’s experiences and lessons learned with using and applying design patterns in industry projects. The article not only discusses how using patterns benefits the design of software systems, but also how firms can benefit further from developing a firm-specific design language and how firms can motivate and educate developers to learn and develop this shared language.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns. Addison Wesley, Reading (1995)

    MATH  Google Scholar 

  2. Alexander, C., Ishikawa, S., Silverstein, M.: A Pattern Language. Oxford University Press, Oxford (1977)

    Google Scholar 

  3. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stahl, M.: Pattern-Oriented Software Architecture. Wiley, Chichester (1995)

    Google Scholar 

  4. Zdun, U., Avgeriou, P.: Modeling Architectural Patterns Using Architectural Primitives. In: Proceedings of OOPSLA 2005, ACM Press, New York (2005)

    Google Scholar 

  5. Riehle, D.: Composite Design Patterns. In: Proceedings of OOPSLA 1997. ACM Press, New York (1997)

    Google Scholar 

  6. Riehle, D.: The Perfection of Informality: Tools, Templates, and Patterns. Cutter IT Journal 16(9), 22–26

    Google Scholar 

  7. Riehle, D., Züllighoven, H.: Using Patterns in Software Development. TAPOS 2(1) (1996)

    Google Scholar 

  8. Schön, D.: The Reflective Practitioner (1983)

    Google Scholar 

  9. Gabriel, R.P.: Writers’ Workshops and the Work of Making Things. Addison Wesley, Reading (2004)

    Google Scholar 

  10. Vlissides, J.: Pattern Hatching. Addison-Wesley, Reading (1998)

    Google Scholar 

  11. Beck, K., Coplien, J.O., Crocker, R., Dominick, L., Meszaros, G., Paulisch, F.: Industrial Experience with Design Patterns. In: Proceedings of the 18th International Conference on Software Engineering. IEEE Press, Los Alamitos (1996)

    Google Scholar 

  12. Schmidt, D.C.: Experience Using Design Patterns to Develop Reusable Object-Oriented Communication Software. Communications of the ACM (October 1995)

    Google Scholar 

  13. Buschmann, F., Henney, K., Schmidt, D.C.: Pattern-Oriented Software Architecture. On Patterns and Pattern Languages, vol. 5. John Wiley and Sons, Chichester (2007)

    Google Scholar 

  14. Riehle, D.: “Value Object”. In: Proceedings of the 2006 Conference on Pattern Languages of Programming (PLoP 2006). ACM Press, New York (2006)

    Google Scholar 

  15. Riehle, D.: The JValue Framework for Java Value Objects, http://www.jvalue.org

  16. Riehle, D., Siberski, W., Bäumer, D., Megert, D., Züllighoven, H.: Serializer. In: Pattern Languages of Program Design 3,  ch. 17, Addison-Wesley, Reading (1998)

    Google Scholar 

  17. Gamma, E.: JHotDraw, http://www.jhotdraw.org

  18. Woolf, B.: Null Object. In: Pattern Languages of Program Design 3,  ch. 1, Addison-Wesley, Reading (1998)

    Google Scholar 

  19. Kerievsky, J.: A Learning Guide to Design Patterns, http://www.industriallogic.com/papers/learning.html

  20. The Sillicon Valley Patterns Group, http://www.siliconvalleypatterns.org

  21. Bialik, T., Ruffer, R.: Personal Communication (2005)

    Google Scholar 

  22. Vlissides, J.: Personal Communication (2001)

    Google Scholar 

  23. Brand, S.: How Buildings Learn: What Happens After they are Built. Penguin (1994)

    Google Scholar 

  24. Coplien, J., Schmidt, D. (eds.): Pattern Languages of Program Design. Addison-Wesley, Reading (1995)

    Google Scholar 

  25. Avgeriou, P., Zdun, U.: Architectural Patterns Revisited – A Pattern Language. In: Proceedings of the 10th European Pattern Languages of Programming Conference. Universitatsverlag Konstanz (2005)

    Google Scholar 

  26. Harrison, N.: Organizational Patterns for Teams. In: Pattern Languages of Program Design 2, Addison Wesley, Reading (1996)

    Google Scholar 

  27. Vlissides, J., Coplien, J., Kerth, N. (eds.): Pattern Languages of Program Design 2. Addison-Wesley, Reading (1996)

    Google Scholar 

  28. Martin, R., Riehle, D., Buschmann, F. (eds.): Pattern Languages of Program Design 3. Addison-Wesley, Reading (1998)

    Google Scholar 

  29. Harrison, N., Foote, B., Rohnert, H. (eds.): Pattern Languages of Program Design 4. Addison-Wesley, Reading (2000)

    Google Scholar 

  30. Manolescu, D., Voelter, M., Noble, J. (eds.): Pattern Languages of Program Design 5. Addison Wesley, Reading (2005)

    Google Scholar 

  31. Riehle, D., Schäffer, B., Schnyder, M.: Design of a Smalltalk Framework for the Tools and Materials Metaphor. Informatik/Informatique, 20–22 (February 1996)

    Google Scholar 

  32. Riehle, D.: Framework Design: A Role Modeling Approach. Dissertation, No. 13509. Zürich, Switzerland, ETH Zürich (2000)

    Google Scholar 

  33. Riehle, D., Fraleigh, S., Bucka-Lassen, D., Omorogbe, N.: The Architecture of a UML Virtual Machine. In: Proceedings of the 2001 Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA 2001), pp. 327–341. ACM Press, New York (2001)

    Google Scholar 

  34. Bischofberger, W., Guttman, M., Riehle, D.: Global Business Objects: Requirements and Solutions. In: Mätzel, K.-U., Frei, H.-P. (eds.) Proceedings of the 1996 Ubilab Conference, Zürich, pp. 79–98. Universitätsverlag Konstanz, Konstanz, Germany (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Riehle, D. (2011). Lessons Learned from Using Design Patterns in Industry Projects. In: Noble, J., Johnson, R., Avgeriou, P., Harrison, N.B., Zdun, U. (eds) Transactions on Pattern Languages of Programming II. Lecture Notes in Computer Science, vol 6510. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-19432-0_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-19432-0_1

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-19431-3

  • Online ISBN: 978-3-642-19432-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics