skip to main content
10.1145/508386.508390acmotherconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
Article

Non-modularity in aspect-oriented languages: integration as a crosscutting concern for AspectJ

Published:22 April 2002Publication History

ABSTRACT

Aspect-oriented (AO) methods and languages seek to enable the preservation of design modularity through mappings to program structures, especially where common (object-oriented) languages fail to do so. The general claim is made that AO approaches enable the modularization of crosscutting concerns. The problem that we address is that it is unclear to what extent such claims are valid. We argue that there are meaningful bounds on the abilities of past, present, and future languages to succeed in this regard---bounds that we need to understand better. To make this idea concrete we exhibit a significant bound: Component integration (Sullivan & Notkin 1992, 1994) is not adequately modularizable in AspectJ

References

  1. Xerox Corporation, AspectJ Team, The AspectJ Programming Guide, 2001, available at URL http://www.aspectj.org/ as of this writing.Google ScholarGoogle Scholar
  2. Elrad, T., R. E. Filman and A. Bader, guest editors, Communications of the ACM 44, 10, Special Issue on Aspect-Oriented Programming, October 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Gamma, Helm, Johnson and Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Kalet, I. J., J. P. Jacky, M.M Austin-Seymour, S. M. Hummel, K. J. Sullivan and J. M. Unger, "Prism: a New Approach toGoogle ScholarGoogle Scholar

Index Terms

  1. Non-modularity in aspect-oriented languages: integration as a crosscutting concern for AspectJ

          Recommendations

          Reviews

          Mario Kupries

          This paper focuses on unsubstantiated design issues and the lack of modularization in currently applied aspect-orientated languages. The position taken by the authors is that aspect-oriented languages enforce modularity, and, thus, enable the modularization of crosscutting concerns. Aspect-oriented languages attempt to overcome the inherent nonmodularity of object orientation and other traditional programming paradigms. An extension of the Java language, AspectJ, is intended to be successful at preserving modularity and reducing crosscutting issues in the development and reuse of software systems. The analysis of aspects between existing and under-development programming languages is intended to further the evolution of modular design. In fact, a vast majority of programming languages suffer from crosscutting. As an explanation of this drawback, the authors attempt to show that the bounds of aspect-orientation are not necessarily currently substantiated. The paper offers a solid understanding and a systematic explanation of the topic at hand; modularity and aspects are defined and explained consistently, followed by assessment techniques for modularity, and techniques for integrating aspects into object-oriented languages. The authors' explanations are illustrated by an example of an abstract, describing relationships between arbitrary units in a modular structure, and a concrete program-technical realization in the form of AspectJ code. The examples are supplemented with figures. Especially beneficial are the enumerations of the consequences of lacking modularity and of prominent aspect-oriented languages that lack modularity implementations. This abundance of detail, combined with the authors' ability to discuss each part and to connect the parts in a logical way, makes the paper come across as a product of careful, precise, and extensive thought about the subject. Overall, this paper is insightful in showing the benefits of addressing modularity and aspects using AspectJ, but at the same time proving its limitations: aspect integration is not fully modularized in AspectJ, due to limited aspect instances. Online Computing Reviews Service

          Access critical reviews of Computing literature here

          Become a reviewer for Computing Reviews.

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Other conferences
            AOSD '02: Proceedings of the 1st international conference on Aspect-oriented software development
            April 2002
            162 pages
            ISBN:158113469X
            DOI:10.1145/508386

            Copyright © 2002 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 22 April 2002

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • Article

            Acceptance Rates

            Overall Acceptance Rate41of139submissions,29%

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader