Section 19.7. MAPPING TO PROGRAMMING MODELS


19.7. MAPPING TO PROGRAMMING MODELS

The examples in the previous two sections illustrate the possibilities for mapping crosscutting theme constructs to Hyper/J and AspectJ programming elements. The advantages of mapping the design to a programming model are twofold. First, from a design perspective, mapping the composition pattern constructs to constructs from a programming environment ensures that the clear separation of crosscutting behavior is maintained in the programming phase, making design changes easier to incorporate into code. Second, from the programming perspective, the existence of a design approach that supports separation of crosscutting behavior makes the design phase more relevant to this kind of programming, lending the standard benefits of software design to the approach.

However, work remains to provide a fully functional set of matching design and programming tools for the aspect-oriented developer. Theme/UML has considerable support for genericity with its use of templates to parameterize crosscutting elements. There are no restrictions (other than on type) as to the elements that may be bound to the templates, except as imposed by the designere.g., operations of any signature could replace template operations. However, neither programming model examined currently provides such flexibility. On the other hand, capabilities in programming models such as AspectJ for associating aspects with fine-grained, dynamic scopes such as portions of the control-flow are missing in Theme/UML. We envisage that the maturation of the aspect-oriented software development field will encourage both design and programming approaches to evolve to better enable traceability between the phases.



Aspect-Oriented Software Development
Aspect-Oriented Software Development with Use Cases
ISBN: 0321268881
EAN: 2147483647
Year: 2003
Pages: 307

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net