Skip to main content

UML Reflections

  • Conference paper
  • First Online:
  • 307 Accesses

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

Abstract

The UML shares with reflective architectures the idea that self-definition of languages and systems is a key principle for building and maintaining complex systems. The UML is now defined by a four-layer metalevel structure, enabling a flexible and extensible definition of models by metamodels, and even a self-description of the meta-metamodel (the MOF). This metalevel dimension of UMLis currently restricted to structural reflection. But recently a new extension to the UML, called the Action Semantics (AS), has been proposed for standardization to the OMG. This paper explores how this proposed extension brings a behavioural reflection dimension to the UML. Indeed, we show that it is not only possible but quite effective to use the AS for manipulating UMLmo dels (including the AS metamodel). Besides elegant conceptual achievements, such as a metacircular definition of the AS, reflective modeling with the AS leverages on the UML metalevel architecture to provide the benefits of a reflective approach, in terms of separation of concerns, within a mainstream industrial context. A complete model can now be built as an ideal model representing the core concepts in the application, to which non-functional requirements are integrated as fully traceable transformations over this ideal model. For example, this approach paves the way for powerful UML-defined semantics-based model transformations such as refactoring, aspect weaving, application of design patterns or round-trip engineering.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J. Bézivin and R. Lemesle. Reflective modelling scheme. In Electronic Proceedings of the OOPSLA’99 Workshop on Object-Oriented Reflection and Software Engineering, OORaSE’99, pages 107–122, 1999. web site: http://www.disi.unige.it/person/CazzolaW/OORaSE99.html.

  2. G. Blair, G. Coulson, F. Costa, and H. Duran. On the design of reflective middleware platforms. In Proceedings of the Reflective Middleware Workshop, RM 2000, 2000.

    Google Scholar 

  3. D. Bobrow and M. Stefik. The Loops Manual. Xerox PARC, Palo Alto CA, USA, December 1983.

    Google Scholar 

  4. J.-P. Briot and P. Cointe. The OBJVLISP Model: Definition of a Uniform, Reflexive and Extensible Object Oriented Language. In Proceedings of ECAI’86, pages 225–232, 1986.

    Google Scholar 

  5. J.-P. Briot and P. Cointe. A Uniform Model for Object-Oriented Languages Using the Class Abstraction. In Proceedings of IJCAI’87, pages 40–43, 1987.

    Google Scholar 

  6. CCITT. Red Book, SDL, Recommendation Z.100 to Z.104, 1984.

    Google Scholar 

  7. M. Cinnéide and P. Nixon. A methodology for the automated introduction of design patterns. In International Conference on Software Maintenance, Oxford, 1999.

    Google Scholar 

  8. M. Clavel and J. Meseguer. Axiomatizing Reflective Logics and Languages. In Proceedings of the First International Conference on Reflection, Reflection’96, pages 263–288, 1996.

    Google Scholar 

  9. P. Cointe. Metaclasses are first class: the objvlisp model. In Proceedings of OOPSLA’ 87, pages 156–167. ACM, 1987.

    Google Scholar 

  10. T. A. S. Consortium. Updated joint initial submission against the action semantics for uml rfp, 2000.

    Google Scholar 

  11. J. Floch. Supporting Evolution and Maintenance by using a Flexible Automatic Code Generator. In Proceedings of the 17th International Conference on Software Engineering, pages 211–219, Apr. 1995.

    Google Scholar 

  12. E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, 1995.

    Google Scholar 

  13. O. M. Group. Action semantics for the uml rfp, ad/98-11-01, 1998.

    Google Scholar 

  14. W. Ho, F. Pennaneac’h, and N. Plouzeau. Umlaut: A framework for weaving uml-based aspect-oriented designs. In Technology of object-oriented languages and systems (TOOLS Europe), volume 33, pages 324–334. IEEE Computer Society, June 2000.

    Google Scholar 

  15. R. Keller and R. Schauer. Design components: Towards software composition at the design level. In Proceedings of the 20th International Conference on Software Engineering, pages 302–311. IEEE Computer Society Press, Apr. 1998.

    Google Scholar 

  16. Kennedy-Carter. Executable UML(xuml), http://www.kc.com/html/xuml.html.

  17. G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In M. Akŗit and S. Matsuoka, editors, ECOOP’ 97-Object-Oriented Programming 11th European Conference, Jyväskylä, Finland, volume 1241 of Lecture Notes in Computer Science, pages 220–242. Springer-Verlag, New York, N.Y., June 1997.

    Google Scholar 

  18. P. Kruchten. Rational Unified Process: an Introduction. Addison-Wesley, Reading/ MA, 1998.

    Google Scholar 

  19. M. Kurihara and A. Ohuchi. An Algebraic Specification and an Object-Oriented Implementation of a Reflective Language. In Proceedings of the International Workshop on New Models for Software Architecture’ 92, Reflection and Meta-Level Architectures, pages 137–142, November 1992.

    Google Scholar 

  20. J. Malenfant, C. Dony, and P. Cointe. A Semantics of Introspection in a Reflective Prototype-Based Language. Lisp and Symbolic Computation, Kluwer, 9(2/3):153–179, May/June 1996.

    Article  Google Scholar 

  21. J. McAffer. Meta-level programming with coda. In Proceedings of ECOOP’95, number 952 in Lecture Notes in Computer Science, pages 190–214. AITO, Springer-Verlag, 1995.

    Google Scholar 

  22. H. Okamura, Y. Ishikawa, and M. Tokoro. Al-1/d: A distributed programming system with multi-model reflection framework. In A. Yonezawa and B. Smith, editors, Proceedings of the International Workshop on NewMo dels for Software Architectures, Reflection and Metalevel Architectures, pages 36–47. RISE (Japan), ACM Sigplan, JSSST, IPSJ, November 1992.

    Google Scholar 

  23. W. F. Opdyke. Refactoring Object-Oriented Frameworks. PhD thesis, University of Illinois, Urbana-Champaign, 1992. Tech. Report UIUCDCS-R-92-1759.

    Google Scholar 

  24. Projtech-Technology. Executable UML, http://www.projtech.com/pubs/xuml.html.

  25. Softeam. UMLProfiles and the J language: Totally control your application development using UML. In http://www.softeam.fr/us/pdf/uml profiles.pdf , 1999

  26. G. Sunyé, A. Le Guennec, and J.-M. Jézéquel. Design pattern application in UML. In E. Bertino, editor, ECOOP’2000 proceedings, number 1850, pages 44–62. Lecture Notes in Computer Science, Springer Verlag, June 2000.

    Google Scholar 

  27. S. Tan, D. Raila, and R. Campbell. An Object-Oriented Nano-Kernel for Operating System Hardware Support. In Proceedings of the International Workshop on Object-Orientation in Operating Systems, IWOOOS’95. IEEE, Coputer Society Press, 1995.

    Google Scholar 

  28. P. Tarr, H. Ossher, and W. Harrison. N degrees of separation: Multi-dimensional separation of concerns. In ICSE’99 Los Angeles CA, 1999.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pennaneac’h, F., Jézéquel, JM., Malenfant, J., Sunyé, G. (2001). UML Reflections. In: Yonezawa, A., Matsuoka, S. (eds) Metalevel Architectures and Separation of Crosscutting Concerns. Reflection 2001. Lecture Notes in Computer Science, vol 2192. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45429-2_15

Download citation

  • DOI: https://doi.org/10.1007/3-540-45429-2_15

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42618-9

  • Online ISBN: 978-3-540-45429-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics