Results 1 -
3 of
3
Persistence as an Aspect
, 2003
"... Persistence - the storage and retrieval of application data from secondary storage media - is often used as a classical example of a crosscutting concern. It is widely assumed that an application can be developed without taking persistence requirements into consideration and a persistence aspect plu ..."
Abstract
-
Cited by 82 (7 self)
- Add to MetaCart
Persistence - the storage and retrieval of application data from secondary storage media - is often used as a classical example of a crosscutting concern. It is widely assumed that an application can be developed without taking persistence requirements into consideration and a persistence aspect plugged in at a later stage. However, there are no real world examples showing whether persistence can in fact be aspectised and, if so, can this be done in a manner that promotes reuse and is oblivious to the application. In this paper, we provide an insight into these issues drawing upon our experience with a classical database application: a bibliography system. We argue that it is possible to aspectise persistence in a highly reusable fashion, which can be developed into a general aspect-based persistence framework. Nevertheless, application developers can only be partially oblivious to the persistent nature of the data. This is because persistence has to be accounted for as an architectural decision during the design of data-consumer components. Furthermore, designers of such components also need to consider the declarative nature of retrieval mechanisms supported by most database systems. Similarly, deletion requires explicit attention during application design as mostly applications trigger such an operation.
Aspect Mining and Refactoring
, 2003
"... In this paper we argue for the need for research in the area of aspect mining, covering concepts, principles, methods and tools supporting the identification of aspects in objectoriented software systems as well as the subsequent refactoring of such systems in aspect-oriented systems. ..."
Abstract
-
Cited by 46 (6 self)
- Add to MetaCart
In this paper we argue for the need for research in the area of aspect mining, covering concepts, principles, methods and tools supporting the identification of aspects in objectoriented software systems as well as the subsequent refactoring of such systems in aspect-oriented systems.
Aspect-Oriented Relational Algebra
"... ABSTRACT In this paper we apply the aspect-oriented programming (AOP) paradigm to the relational algebra. AOP is a way to add support for cross-cutting concerns to existing code without directly modifying that code. Data, like code, also has cross-cutting concerns such as versioning, privacy, and r ..."
Abstract
- Add to MetaCart
(Show Context)
ABSTRACT In this paper we apply the aspect-oriented programming (AOP) paradigm to the relational algebra. AOP is a way to add support for cross-cutting concerns to existing code without directly modifying that code. Data, like code, also has cross-cutting concerns such as versioning, privacy, and reliability. AOP techniques can be used to weave metadata around an application's data. The metadata imbues the data with additional semantics that must be observed in constraint and query processing. In this paper we show how to modify the relational algebra to process data woven together with metadata. We also analyze the overhead on evaluating an aspect-enhanced query.