|
ABSTRACT
In order to increase the productivity of the application developers, it is desirable to remove the persistence concern from their responsibility. For this purpose, the orthogonal persistence concept was introduced along with three principles: type orthogonality, persistence independence and transitivity. From an aspect-oriented point of view these principles have to be considered from the perspective of obliviousness. There is already a number of aspect-oriented persistence solutions where it is not that clear whether they handle the previous principles really in an oblivious way. In this paper, we discuss to what extent these aspect-oriented solutions really make the developer oblivious of the persistence concern. As a conclusion, we find that these systems in general defeat the orthogonal persistence and consequently, using them distracts developers from concentrating on the application logic. In order to increase the obliviousness of the persistence concern we propose a combination of two new concepts: persisting containers and path expression pointcuts.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Al-Mansari, M., Hanenberg, S. Path Expression Pointcuts: Abstracting over Non-Local Object Relationships in Aspect-Oriented Languages. NODe'06 Erfurt, Germany; 2006.
|
| |
2
|
Al-Mansari, M., Hanenberg, S., Unland, R. Aspect-Oriented Programming: Selecting and Exposing Object Paths. In Software Composition (SC07), co-located with ETAPS07; Braga, Portugal; (LNCS - to appear); March 2007.
|
 |
3
|
Chris Allan , Pavel Avgustinov , Aske Simon Christensen , Laurie Hendren , Sascha Kuzins , Ondřej Lhoták , Oege de Moor , Damien Sereni , Ganesh Sittampalam , Julian Tibble, Adding trace matching with free variables to AspectJ, Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming, systems, languages, and applications, October 16-20, 2005, San Diego, CA, USA
|
| |
4
|
|
| |
5
|
|
| |
6
|
Bray, T., Paoli, J., Sperberg-McQueen. (eds.). Extensible Markup Language. http://www.w3.org/TR/REC-XML, 1998.
|
| |
7
|
|
| |
8
|
Clark, J., Derose, S. (eds.). XML Path Language (XPath). version 1.0. http://www.w3.org/TR/Xpath, 1999.
|
 |
9
|
Rémi Douence , Pascal Fradet , Mario Südholt, Composition, reuse and interaction analysis of stateful aspects, Proceedings of the 3rd international conference on Aspect-oriented software development, p.141-150, March 22-24, 2004, Lancaster, UK
[doi> 10.1145/976270.976288]
|
| |
10
|
Douence, R., Fradet, P., Südholt, M. Trace-based aspects. In {13}, pages: 201--217.
|
| |
11
|
|
 |
12
|
|
| |
13
|
Filman, R. E., Elrad, T., Clarke, S. and Aksit, M. (eds). Aspect-Oriented Software Development. Addison-Wesley, Boston, 2005.
|
| |
14
|
Filman, R. E. and Friedman, D. Aspect-Oriented Programming is Quantification and Obliviousness. In {13}, pages: 21--35.
|
| |
15
|
Hanenberg, S. Design Dimensions of Aspect-Oriented Systems. PhD thesis, Duisburg-Essen University 2005.
|
| |
16
|
|
| |
17
|
JSR-220. Enterprise JavaBeans v.3: Java Persistence API. http://java.sun.com/products/ejb/docs.html.
|
 |
18
|
Gregor Kiczales , Erik Hilsdale , Jim Hugunin , Mik Kersten , Jeffrey Palm , William Griswold, Getting started with ASPECTJ, Communications of the ACM, v.44 n.10, p.59-65, Oct. 2001
[doi> 10.1145/383845.383858]
|
| |
19
|
|
 |
20
|
|
 |
21
|
|
| |
22
|
Lieberherr, K., Lorenz, D. Coupling Aspect-Oriented and Adaptive Programming. In {13}, pages: 145--164.
|
| |
23
|
Masuhara, H., Kawauchi, K. Dataflow pointcut in aspect-oriented programming. In 1st Asian Sym. on Prog. Lang. and Sys., LNCS, vol. 2895, pp:105--121, 2003.
|
| |
24
|
Ostermann, K., Mezini, M., and Bockisch, C. Expressive pointcuts for increased modularity. In Proc. of ECOOP'05, Glasgow, UK, 2005, Springer Verlag, pp. 214--240.
|
| |
25
|
Renaud Pawlak , Lionel Seinturier , Laurence Duchien , Gérard Florin , Fabrice Legond-Aubry , Laurent Martelli, JAC: an aspect-based distributed dynamic framework, Software—Practice & Experience, v.34 n.12, p.1119-1148, October 2004
[doi> 10.1002/spe.605]
|
| |
26
|
Popovici, A., Alonso, G. and Gross, T. Spontaneous Container Services. In Proc. of ECOOP'03, Darmstadt, Germany, 2003, pp: 29--53.
|
 |
27
|
|
 |
28
|
Sergio Soares , Eduardo Laureano , Paulo Borba, Implementing distribution and persistence aspects with aspectJ, Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, November 04-08, 2002, Seattle, Washington, USA
|
 |
29
|
|
| |
30
|
Vanderperren, W., Suvée, D., Cibrán, M. A., De Fraine, B. Stateful aspects in JAsCo. In Proceedings of SC 2005, LNCS, pages: 167--181, Edinburgh, Scotland, Apr. 2005.
|
 |
31
|
|
|