ACM Home Page
Please provide us with feedback. Feedback
The paradoxical success of aspect-oriented programming
Full text PdfPdf (857 KB)
Source Conference on Object Oriented Programming Systems Languages and Applications archive
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications table of contents
Portland, Oregon, USA
SESSION: OOPSLA essays chair's welcome table of contents
Pages: 481 - 497  
Year of Publication: 2006
ISBN:1-59593-348-4
Also published in ...
Author
Friedrich Steimann  Fernuniversität in Hagen, Hagen
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 80,   Downloads (12 Months): 480,   Citation Count: 10
Additional Information:

abstract   references   cited by   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/1167473.1167514
What is a DOI?

ABSTRACT

Aspect-oriented programming is considered a promising new technology. As object-oriented programming did before, it is beginning to pervade all areas of software engineering. With its growing popularity, practitioners and academics alike are wondering whether they should start looking into it, or otherwise risk having missed an important development. The author of this essay finds that much of aspect-oriented programming's success seems to be based on the conception that it improves both modularity and the structure of code, while in fact, it works against the primary purposes of the two, namely independent development and understandability of programs. Not seeing any way of fixing this situation, he thinks the success of aspect-oriented programming to be paradoxical.


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
Aldrich, J.: Open Modules: Reconciling extensibility and information hiding. In: Software Engineering Properties of Languages for Aspect Technologies (SPLAT). Workshop at AOSD (2004).
 
2
Aldrich, J.: Open Modules: Modular reasoning about advice. In: ECOOP (2005) 144--168.
3
 
4
Avgustinov, P. et al.: Semantics of Static Pointcuts in AspectJ. Technical Report abc-2006-3 (Oxford University Computing Laboratory, 2006).
 
5
Bezdek, J. C.: Fuzzy models-what are they, and why. IEEE Transactions on Fuzzy Systems 1:1 (1993) 1--6.
 
6
Bodden, E.: Efficient and expressive runtime verification for Java. In: Proceedings of the Grand finals of the ACM Student Research Competition 2005, San Francisco (2005).
 
7
Bodden, E., Forster, F., Steimann, F.: Avoiding infinite recursion with stratified aspects. In: NODe 2006 -- Objects, Aspects, Services, the Web. GI Lecture Notes in Informatics (2006) in press.
 
8
9
 
10
Clifton, C., Leavens, G. T.: Obliviousness, modular reasoning, and the behavioral subtyping analogy. In: SPLAT (2003).
 
11
Clifton, C., Leavens, G. T.: Observers and assistants: A proposal for modular aspect-oriented reasoning. In: Workshop on Foundations of Aspect-Oriented Languages (FOAL) (2002).
 
12
 
13
Constantinides, C., Scotinides, T., Störzer, M.: AOP considered harmful. In: 1st European Interactive Workshop on Aspect Systems (EIWAS) (2004).
14
 
15
 
16
 
17
Dijkstra, E. W.: On the role of scientific thought. In: Edsger W. Dijkstra: Selected Writings on Computing: A Personal Perspective. (Springer-Verlag 1982).
 
18
 
19
20
 
21
Ernst, E.: Separation of concerns and then what? In: Position papers from the workshop on Aspects and Dimensions of Concern at ECOOP'00 (2000).
 
22
Filman, R. E., Elrad, T., Clarke, S., Aksit, M.: Aspect-Oriented Software Development. (Addison-Wesley Professional, 2004).
 
23
Filman, R. E., Friedman, D. P.: Aspect-oriented programming is quantification and obliviousness. In: Workshop on Advanced Separation of Concerns at OOPSLA (2000). Revised reprint appeared in {22}.
 
24
Filman, R. E.: What is AOP, revisited. In: Workshop on Multi-Dimensional Separation of Concerns at ECOOP (2001).
 
25
Forster, F., Steimann, F.: AOP and the antinomy of the liar. In: Workshop on the Foundations of Aspect-Oriented Languages (FOAL) at AOSD (2006) 47--56.
 
26
 
27
 
28
Gudmundson, S., Kiczales, G.: Addressing practical software development issues in AspectJ with a pointcut interface. In: Advanced Separation of Concerns, Workshop at ECOOP (2001).
29
30
31
32
33
34
 
35
Kiczales, G., Mezini, M.: Separation of concerns with procedures, annotations, advice and pointcuts. In: ECOOP (2005) 195--213.
 
36
 
37
Klose, K., Ostermann, K.: Back to the future: pointcuts as predicates over traces. In: Workshop on Foundations of Aspect-Oriented Languages (FOAL) at AOSD (2005).
38
 
39
Laddad, R.: AOP and metadata: A perfect match. In: AOP@work (http://www-128.ibm.com/developerworks/java, 2005).
 
40
Lesiecki, N.: Improve modularity with aspect-oriented programming (http://www-128.ibm.com/developerworks/java/library/j-aspectj/, 2002).
 
41
Lieberherr, K. J., Lorenz, D. H., Ovlinger, J.: Aspectual collaborations: combining modules and aspects. The Computer Journal 46:5 (2003) 542--565.
42
 
43
Lorenz, D. H., Skotiniotis, T.: Extending design by contract for aspect-oriented programming. http://arxiv.org/abs/cs.SE/0501070.
 
44
Masuhara, H., Kiczales, G.: Modeling crosscutting in aspect-oriented mechanisms. In: ECOOP (2003) 2--28.
 
45
Mehner, K., Rashid, A.: Towards a generic model for AOP (GEMA). Technical Report CSEG/1/03, Computing Department, Lancaster University, UK (2003).
 
46
 
47
 
48
Nagy, I., Bergmans, L.: Towards semantic composition in aspect-oriented programming. In: 1st European Interactive Workshop on Aspects in Software (EIWAS). (Berlin, Germany 2004).
 
49
Nordberg, III., M. E.: Aspect-oriented dependency inversion. In: Workshop on Advanced Separation of Concerns in Object-Oriented Systems at OOPSLA (2001).
 
50
 
51
Ostermann, K., Mezini, M., Bockisch, C.: Expressive pointcuts for increased modularity. In: ECOOP (2005) 214--240.
52
 
53
Ovlinger, J.: Combining Aspects and Modules. PhD Thesis (College of Computer and Information Science, Northeastern University, Boston, USA 2004).
 
54
Parnas, D. L.: Information distribution aspects of design methodology. In: Information Processing 71, Proceedings of the IFIP Congress 1 (North-Holland, 1972) 339--344.
55
 
56
57
 
58
Steele, Jr., G. L., Gabriel, R. P.: The Evolution of Lisp. http://dreamsongs.com/NewFiles/HOPL2-Uncut.pdf
 
59
Steimann, F.: Why most domain models are aspect free. In: 5th Aspect-Oriented Modeling Workshop AOM at UML (2004); revised version appeared as Ref. {60}.
 
60
Steimann, F.: Domain models are aspect free. In: MoDELS 2005, 8th International Conference on Model Driven Engineering Languages and Systems (2005) 171--185.
 
61
 
62
Stolz, V., Bodden, E.: Temporal assertions using AspectJ. In: RV'05 -- 5th Workshop on Runtime Verification (Edinburgh, Scotland, UK, 2005).
63
 
64
Tourwé, T., Brichau, J., Gybels, K.: On the existence of the AOSD-evolution paradox. In: Workshop on Software-Engineering Properties of Languages for Aspect Technologies (SPLAT). Workshop at AOSD (2003).
65
66
 
67
Zhao, J., Rinard, M.C.: Pipa: A behavioral interface specification language for AspectJ. In: Fundamental Approaches to Software Engineering, 6th International Conference (2003) 150--165.

CITED BY  10