Skip to main content

Design Patterns Application in UML

  • Conference paper
  • First Online:
ECOOP 2000 — Object-Oriented Programming (ECOOP 2000)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1850))

Included in the following conference series:

Abstract

The Unified Modeling Language (UML) currently proposes a mechanism to model recurrent design structures: the parameterized collaborations. The main goal of this mechanism is to model the structure of Design Patterns. This is an interesting feature because it can help designers to point out pattern application without spending time with intricate design details. Moreover, it can also help designers to better document their systems and to manage their own design pattern library, which could be used in different systems or projects. However, from a tool perspective, the semantics associated to parameterized collaborations is still vague. To put it more precisely, the underlying representation of a design pattern and of its application, and the binding between these two levels is not exactly defined, and therefore, can be interpreted in different ways. This article has two purposes. First, we point out ambiguities and clarify some misunderstanding points concerning parameterized collaborations in the “official” UML literature. We also show the limits of this mechanism when effectively modeling design patterns. Second, we propose some workarounds for these limits and describe how a tool integrating this mechanism could help with the semi-automatic application of design patterns.

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

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. P. S. C. Alencar, D. D. Cowan, and C. J. P. Lucena. A formal approach to architectural design patterns. In J. Woodcock M. C. Gaudel, editor, FME’96: Industrial Benefit and Advances in Formal Methods, pages 576–594. Springer-Verlag LNCS 1051, 1996.

    Google Scholar 

  2. R. S. Bird. An introduction to the theory of lists. In M. Broy, editor, Logic of Programming and Calculi of Discrete Design, pages 3–42. Springler-Verlag, 1987.

    Google Scholar 

  3. Grady Booch, James Rumbaugh, and Ivar Jacobson. The Unified Modeling Language User Guide. Addison-Wesley, 1998.

    Google Scholar 

  4. Jan Bosch. Language support for design patterns. In TOOLS Europe’96, pages 197–210. Prentice-Hall, 1996.

    Google Scholar 

  5. K. Brown. Design reverse-engineering and automated design patterns detection in Smalltalk. Technical Journal, 1995.

    Google Scholar 

  6. F. J. Budinsky, M. A. Finnie, J. M. Vlissides, and P. S. Yu. Automatic code generation from design patterns. IBM Systems Journal, 35(2), 1996.

    Google Scholar 

  7. James O. Coplien. Software Patterns. SIGS Management Briefings. SIGS Books & Multimedia, 1996.

    Google Scholar 

  8. Amnom H. Eden. Precise Specification of Design Patterns and Tool Support in Their Application. PhD thesis, University of Tel Aviv, 1999.

    Google Scholar 

  9. Amnon H. Eden, Amiram Yehudai, and Joseph Gil. Patterns of the agenda. In LSDF97: Workshop in conjunction with ECOOP’97, 1997.

    Google Scholar 

  10. Gert Florijn, Marco Meijers, and Pieter van Winsen. Tool support for object-oriented patterns. In Mehmet Akşit and Satoshi Matsuoka, editors, ECOOP’ 97 — Object-Oriented Programming 11th European Conference, Jyväskylä, Finland, volume 1241 of Lecture Notes in Computer Science, pages 472–495. Springer-Verlag, New York, N.Y., June 1997.

    Google Scholar 

  11. Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Professional Computing Series. Addison-Wesley, Reading, MA, 1995.

    Google Scholar 

  12. Markku Hakala, Juha Hautamäki, Jyrki Tuomi, Antti Viljamaa, and Jukka Voljamaa. Pattern-oriented framework engineering using FRED. In ECOOP’ 98 Workshop reader on Object-Oriented Technology, Lecture Notes in Computer Science, pages 105–109. Springer-Verlag, 1998.

    Chapter  Google Scholar 

  13. Jean-Marc Jézéquel, Wai Ming Ho, Alain Le Guennec, and François Pennaneac’h. UMLAUT: an extendible UML transformation framework. In Robert J. Hall and Ernst Tyugu, editors, Proc. of the 14th IEEE International Conference on Automated Software Engineering, ASE’99. IEEE, 1999.

    Google Scholar 

  14. Jung J. Kim and Kevin M. Benner. A design patterns experience: Lessons learned and tool support. In Position Paper, Workshop on Patterns, ECOOP’95, Aarhus, Denmark, 1995.

    Google Scholar 

  15. C. Krämer and L. Prechelt. Design recovery by automated search for structural design patterns in object-oriented software. In Working Conference on Reverse Engineering (WCRE’96). IEEE CS Press, 1996.

    Google Scholar 

  16. Anthony Lauder and Stuart Kent. Precise visual specification of design patterns. In Eric Jul, editor, ECOOP’ 98—Object-Oriented Programming, volume 1445 of Lecture Notes in Computer Science, pages 114–134. Springer, 1998.

    Chapter  Google Scholar 

  17. Marco Meijers. Tool Support for Object-Oriented Design Patterns. PhD thesis, Utrecht University, 1996.

    Google Scholar 

  18. Tommi Mikkonen. Formalizing design patterns. In ICSE’98, pages 115–124. IEEE CS Press, 1998.

    Google Scholar 

  19. William F. Opdyke. Refactoring Object-Oriented Frameworks. PhD thesis, University of Illinois, 1992.

    Google Scholar 

  20. Gunnar Övergaard. A formal approach to collaborations in the unified modeling language. In Robert France and Bernhard Rumpe, editors, UML’99-The Unified Modeling Language. Beyond the Standard. Second International Conference, Fort Collins, CO, USA, October 28–30. 1999, Proceedings, volume 1723 of LNCS. Springer, 1999.

    Google Scholar 

  21. S Ramakrishnan and J McGregor. Extending OCL to support temporal operators. In Proceedings of the 21st International Conference on Software Engineering (ICSE99) Workshop on Testing Distributed Component-Based Systems (WM3), Los Angeles, California, USA, May1999. ACM press.

    Google Scholar 

  22. Don Roberts. Practical Analysis for Refactoring. PhD thesis, University of Illinois, 1999.

    Google Scholar 

  23. Don Roberts, John Brant, and Ralph Johnson. A refactoring tool for Smalltalk. Theory and Practice of Object Systems, 3(4), 1997.

    Google Scholar 

  24. Don Roberts, John Brant, and Ralph Johnson. A refactoring tool for Smalltalk-why every Smalltalker should use the Refactoring Browser. The Smalltalk Report, 14(10):4–11, 1997.

    Google Scholar 

  25. UML RTF. OMG Unified Modeling Language Specification, Version 1.3, UML RTF proposed final revision. OMG, June 1999.

    Google Scholar 

  26. James Rumbaugh, Ivar Jacobson, and Grady Booch. The Unified Modeling Language Reference Manual. Addison-Wesley, 1998.

    Google Scholar 

  27. Jiri Soukup. Implementing patterns. In J. O. Coplien and D. C. Schmidt, editors, Pattern Languages of Program Design, pages 395–412. Addison-Wesley, Reading, MA, 1995.

    Google Scholar 

  28. Gerson Sunyé. Génération de code á l’aide de patrons de conception. In Jacques Malenfant and Roger Rousseau, editors, Langages et Modéles á Objets-LMO’99, pages 163–178, Villeneuve s/ mer, 1999. Hermes. In French.

    Google Scholar 

  29. Jos Warmer and Anneke Kleppe. The Object Constraint Language: Precise Modeling with UML. Addison-Wesley, 1998.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sunyé, G., Le Guennec, A., Jézéquel, JM. (2000). Design Patterns Application in UML. In: Bertino, E. (eds) ECOOP 2000 — Object-Oriented Programming. ECOOP 2000. Lecture Notes in Computer Science, vol 1850. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45102-1_3

Download citation

  • DOI: https://doi.org/10.1007/3-540-45102-1_3

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67660-7

  • Online ISBN: 978-3-540-45102-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics