• 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