Metaclasses are first class: The ObjVlisp Model
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Supporting evolution and maintenance by using a flexible automatic code generator
Proceedings of the 17th international conference on Software engineering
A semantics of introspection in a reflective prototype-based language
Lisp and Symbolic Computation - Special issue on computational reflection
Design components: toward software composition at the design level
Proceedings of the 20th international conference on Software engineering
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
The Rational Unified Process: an introduction
The Rational Unified Process: an introduction
Meta-level Programming with CodA
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Design Patterns Application in UML
ECOOP '00 Proceedings of the 14th European Conference on Object-Oriented Programming
UMLAUT: A Framework for Weaving UML-Based Aspect-Oriented Designs
TOOLS '00 Proceedings of the Technology of Object-Oriented Languages and Systems (TOOLS 33)
A Methodology for the Automated Introduction of Design Patterns
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
Refactoring object-oriented frameworks
Refactoring object-oriented frameworks
An Object-Oriented Nano-Kernel for Operating System Hardware Support
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
A uniform model for object-oriented languages using the class abstraction
IJCAI'87 Proceedings of the 10th international joint conference on Artificial intelligence - Volume 1
Towards a standard design language for AOSD
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Hi-index | 0.00 |
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 UML is 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 UMLmetalev el 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.