|
ABSTRACT
Weaving is one of the fundamental mechanisms of aspect-oriented systems. A weaver composes different aspects with the base system by determining and adapting all parts where aspect specific elements are needed eventually. At runtime, timeconsuming join point checks are necessary to determine if at a certain join point aspect-specific code needs to be executed. Current technologies enforce such checks even in locations that only temporarily or under restrictive conditions (or even never) execute aspect-specific code. In more complex applications, a large number of these checks fail and just cause a substantial runtime overhead without contributing to the system's overall behavior. The main reason for this flaw is complete weaving, the way how aspects are woven to an application using current technologies. In this paper we discuss the problem of unnecessary join point checks caused by complete weaving. We introduce morphing aspects - incompletely woven aspects in combination with continuous weaving - to overcome the problem of futile join point checks.
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
|
Aksit, M. (ed.): Proceedings of the 2nd International Conference on Aspect-Oriented Software Development, Boston, MA, March 17--21, ACM, 2003.
|
| |
2
|
Aksit, M.; Mezini, M.; Unland, R. (eds.): Objects, Components, Architectures, Services, and Applications for a Networked World, LNCS 2591, Springer-Verlag, 2003.
|
| |
3
|
AspectS, version 0.5, Homepage, http://www.prakinf.tu-ilmenau.de/~hirsch/Projects/Squeak/AspectS/
|
 |
4
|
Christoph Bockisch , Michael Haupt , Mira Mezini , Klaus Ostermann, Virtual machine support for dynamic join points, Proceedings of the 3rd international conference on Aspect-oriented software development, p.83-92, March 22-24, 2004, Lancaster, UK
[doi> 10.1145/976270.976282]
|
| |
5
|
|
| |
6
|
Cibran, M.; D'Hondt, M.; Jonckers, V.: Aspect-Oriented Programming for Connecting Business Rules. In: Proc. of the 6th International Conference on Business Information Systems (BIS'03). Colorado Springs, USA, June 2003.
|
| |
7
|
Comanche http server, version 6.1, http://squeak/dab.org/comanche/httpserver/index.html
|
| |
8
|
CommandShell for Squeak - Version 3.0.1, http://minnow.cc.gatech.edu/squeak/1914
|
| |
9
|
|
| |
10
|
|
 |
11
|
|
 |
12
|
|
| |
13
|
Hanenberg, S.; Schmidmeier, A.; Unland, R.: AspectJ Idioms for Aspect-Oriented Software Construction, 8th European Conference on Pattern Languages of Programs (EuroPLoP), Irsee, Germany, June 25--29, 2003.
|
| |
14
|
Hanenberg, S.; Hirschfeld, R; Unland, R.: Aspect Weaving: Using the Base Language's Introspective Facilities to Determine Join Points, In: Workshop on Advancing the State-of-the-Art in Run-Time Inspection (at ECOOP), 2003, http://www.st.informatik.tu-darmstadt.de/pages/workshops/ASARTI03HanenbergASARTI03.pdf.
|
| |
15
|
|
| |
16
|
|
 |
17
|
|
| |
18
|
Gregor Kiczales , Erik Hilsdale , Jim Hugunin , Mik Kersten , Jeffrey Palm , William G. Griswold, An Overview of AspectJ, Proceedings of the 15th European Conference on Object-Oriented Programming, p.327-353, June 18-22, 2001
|
| |
19
|
Kiczales, G. (ed.): Proceedings of the 1st International Conference on Aspect-Oriented Software Development, Enschede, The Netherlands, April 22--26, ACM, 2002.
|
| |
20
|
Lopes, C.: AOP: A Historical Perspective. In: Filman, R.; Elrad, T.; Aksit, M.; Clarke, S. (eds.): Aspect-.Oriented Software Development, Addison-Wesley, 2004 (to appear).
|
 |
21
|
|
| |
22
|
Masuhara, H.; Kiczales, G.; Dutchyn, C.: A Compilation and Optimization Model for Aspect-Oriented Programs, Proceedings of Compiler Construction (CC2003), LNCS 2622, Springer-Verlag, 2003, pp. 46--60.
|
 |
23
|
|
 |
24
|
|
| |
25
|
|
 |
26
|
|
 |
27
|
|
| |
28
|
Yoshiki Sato , Shigeru Chiba , Michiaki Tatsubori, A selective, just-in-time aspect weaver, Proceedings of the second international conference on Generative programming and component engineering, p.189-208, September 22-25, 2003, Erfurt, Germany
|
 |
29
|
|
 |
30
|
|
| |
31
|
Skotiniotis, T., Lieberherr, K., Lorenz, D. H.: Aspect Instances and their Interactions, Workshop on Software-engineering Properties of Languages for Aspect Technologies at AOSD'03, http://www.daimi.au.dk/~eernst/splat03/, 2003
|
 |
32
|
|
 |
33
|
|
CITED BY 4
|
|
Christoph Bockisch , Michael Haupt , Mira Mezini , Klaus Ostermann, Virtual machine support for dynamic join points, Proceedings of the 3rd international conference on Aspect-oriented software development, p.83-92, March 22-24, 2004, Lancaster, UK
|
|
|
|
|
|
|
|
|
|
|