DocumentCode
492568
Title
Towards reusable components with aspects
Author
Hoffman, Kevin ; Eugster, Patrick
Author_Institution
Purdue Univ., West Lafayette, IN
fYear
2008
fDate
10-18 May 2008
Firstpage
91
Lastpage
100
Abstract
The potential of aspect-oriented programming to represent cross-cutting concerns as reusable components has yet to be fully realized. Indeed, authors have detailed significant challenges in creating reusable aspect component libraries. Proposed solutions include restricting the power of aspects upfront, inferring concern interaction, and shaping base code to conform to abstract design rules. Another proposed strategy is to reduce obliviousness in return for increased modularity by extending AspectJ with explicit join points (EJPs). This paper presents the results of an empirical case study that aides in the understanding of the tradeoffs between obliviousness and modularity. We present a refactoring of the exception handling concern for three real-life Java applications to use EJPs instead of oblivious aspects. The empirical differences between this version and an equivalent oblivious version are analyzed. Finally, we present guiding principles on how to strike a favorable balance between obliviousness and modularity.
Keywords
Java; configuration management; exception handling; object-oriented programming; software libraries; software maintenance; software reusability; AspectJ; Java applications; abstract design rules; aspect-oriented programming; equivalent oblivious version; exception handling refactoring; explicit join points; reusable aspect component libraries; Application software; Design engineering; Java; Libraries; Multidimensional systems; Permission; Programming; Security; Software design; Software quality; aspect-oriented programming; case study; modularity;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2008. ICSE '08. ACM/IEEE 30th International Conference on
Conference_Location
Leipzig
ISSN
0270-5257
Print_ISBN
978-1-4244-4486-1
Electronic_ISBN
0270-5257
Type
conf
DOI
10.1145/1368088.1368102
Filename
4814120
Link To Document