ACM Home Page
Please provide us with feedback. Feedback
Unifying aspect- and object-oriented design
Full text PdfPdf (3.08 MB)
Source
ACM Transactions on Software Engineering and Methodology (TOSEM) archive
Volume 19 ,  Issue 1  (August 2009) table of contents
Article No. 3  
Year of Publication: 2009
ISSN:1049-331X
Authors
Hridesh Rajan  Iowa State University, Ames, IA
Kevin J. Sullivan  University of Virginia, Charlottesville, VA
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 110,   Downloads (12 Months): 368,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1555392.1555396
What is a DOI?

ABSTRACT

The contribution of this work is the design and evaluation of a programming language model that unifies aspects and classes as they appear in AspectJ-like languages. We show that our model preserves the capabilities of AspectJ-like languages, while improving the conceptual integrity of the language model and the compositionality of modules. The improvement in conceptual integrity is manifested by the reduction of specialized constructs in favor of uniform orthogonal constructs. The enhancement in compositionality is demonstrated by better modularization of integration and higher-order crosscutting concerns.


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
2
 
3
Bergmans, L. and Akşit, M. 2005. Principles and Design Rationale of Composition Filters. Addison-Wesley, Boston, 63--95.
4
 
5
 
6
Bryant, A. and Feldt, R. 2002. AspectR: Simple aspect-oriented programming in Ruby. http://aspectr.sourceforge.net/.
7
 
8
9
 
10
Douence, R. and Südholt, M. 2002. A model and a tool for event-based aspect-oriented programming (EAOP). Tech. rep. 02/11/INFO, Ecole des Mines de Nantes.
11
 
12
Filman, R. E., Barrett, S., Lee, D. D., and Linden, T. 2005. Inserting Ilities by Controlling Communications. Addison-Wesley, Boston, 283--295.
 
13
Filman, R. E. and Friedman, D. P. 2000. Aspect-oriented programming is quantification and obliviousness. In Proceedings of the Workshop on Advanced Separation of Concerns (OOPSLA 00).
 
14
Filman, R. E. and Friedman, D. P. 2004. Aspect-oriented programming is quantification and obliviousness. In Aspect-Oriented Software Development. Addison-Wesley Professional, 21--35.
 
15
Gal, A., Schröder-Preikschat, W., and Spinczyk, O. 2001. AspectC++: Language proposal and prototype implementation. In Proceedings of the Workshop on Advanced Separation of Concerns in Object-Oriented Systems (OOPSLA'01), K. De Volder, M. Glandrup, S. Clarke, and R. Filman, Eds.
 
16
 
17
 
18
Garlan, D. and Shaw, M. 1993. An introduction to software architecture. In Advances in Software Engineering and Knowledge Engineering, V. Ambriola and G. Tortora, Eds. vol. 1. World Scientific Publishing Company, 1--40.
 
19
20
 
21
Harrison, W., Ossher, H., and Tarr, P. 2003. Asymmetrically vs. symmetrically organized paradigms for software composition. In Software Engineering Properties of Languages for Aspect Technologies (SPLAT), L. Bergmans et al., Eds.
 
22
 
23
 
24
Johnson, R., Hoeller, J., Arendsen, A., Sampaleanu, C., and Horrop, R. 2007. The spring framework reference documentation 2.03. http://static.springframework.org.
 
25
Khan, K., Burke, B., Rainone, F., Pedersen, S., Fleury, M., Brock, A., Hussenet, C., and Culpepper, M. 2007. JBoss AOP reference documentation. www.jboss.org.
 
26
27
 
28
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C. V., Loingtier, J.-M., and Irwin, J. 1997b. Aspect-oriented programming. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP'97). Springer-Verlag, 220--42.
 
29
Kim, H. 2002. AspectC#: An aosd implementation for C#. Tech. rep. TCD-CS-2002-55, Department of Computer Science, Trinity College, Dublin.
 
30
Koopmans, P. 1995. Sina user's guide and reference manual. Tech. rep., Department of Computer Science, University of Twente.
 
31
32
 
33
 
34
Marshall, J., Orleans, D., and Lieberherr, K. J. 1999. DJ: Dynamic structure-shy traversal in pure Java. Tech. rep., Northeastern University.
35
 
36
Ossher, H. and Tarr, P. 1999. Multi-dimensional separation of concerns using hyperspaces. IBM Res. rep. 21452, IBM. April.
 
37
 
38
Rajan, H. 2007. Design patterns in Eos. In Conference on Pattern Languages of Programs (PLoP'07).
39
 
40
Rajan, H. and Sullivan, K. 2003a. Need for instance-level aspect language with rich pointcut language. In Software Engineering Properties of Languages for Aspect Technologies (SPLAT), L. Bergmans et al., Eds.
41
42
43
44
 
45
46
 
47
Sullivan, K. J., Dugan, J. B., Knight, J., et al. 1997. Galileo: An advanced fault tree analysis tool. http://www.cs.virginia.edu/sullivan/.
48
49
50
51
 
52
Tarr, P. and Ossher, H. 2000. Hyper/J user and installation manual. Tech. rep., IBM T. J. Watson Research Center.
53
54

Collaborative Colleagues:
Hridesh Rajan: colleagues
Kevin J. Sullivan: colleagues