skip to main content
10.1145/1404953.1404957acmotherconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
research-article

Sort-based refactoring of crosscutting concerns to aspects

Published:31 March 2008Publication History

ABSTRACT

Crosscutting concerns in object-oriented programming hinder evolution because of their symptoms: tangling and scattering. To benefit from the modularisation capabilities for crosscutting concerns provided by aspect-oriented programming (which prevent tangling and scattering) aspect-introducing refactoring can be used. The first step in aspect-introducing refactoring is identifying and documenting crosscutting concerns in existing code. The second step is refactoring the identified concerns to aspects.

This paper describes a tool called SAIR that can perform the second step of the aspect-introducing refactoring. For the first step, documenting, SAIR uses crosscutting concern sorts. Of the various possible sorts, SAIR currently supports the two most commonly encountered ones: Role Superimposition and Consistent Behavior. The refactoring towards aspects of concerns of these sorts is illustrated on an open source application (JHotDraw).

References

  1. D. Binkley, M. Ceccato, M. Harman, F. Ricca, and P. Tonella. Automated refactoring of object oriented code into aspects. In ICSM '05: Proceedings of the 21st IEEE International Conference on Software Maintenance (ICSM'05), pages 27--36, Washington, DC, USA, 2005. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. L. Cole and P. Borba. Deriving refactorings for aspectj. In AOSD '05: Proceedings of the 4th international conference on Aspect-oriented software development, pages 123--134, New York, NY, USA, 2005. ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. J. Hannemann, G. C. Murphy, and G. Kiczales. Role-based refactoring of crosscutting concerns. In AOSD '05: Proceedings of the 4th international conference on Aspect-oriented software development, pages 135--146, New York, NY, USA, 2005. ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In Proceedings European Conference on Object-Oriented Programming, volume 1241, pages 220--242, Berlin, Heidelberg, and New York, 1997. Springer-Verlag.Google ScholarGoogle ScholarCross RefCross Ref
  5. M. Marin, A. v. Deursen, and L. Moonen. Identifying crosscutting concerns using fan-in analysis. ACM Transactions on Software Engineering and Methodology, 17(1):1--37, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. M. Marin, L. Moonen, and A. van Deursen. An approach to aspect refactoring based on crosscutting concern types. In MACS '05: Proceedings of the 2005 workshop on Modeling and analysis of concerns in software, pages 1--5, New York, NY, USA, 2005. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. M. Marin, L. Moonen, and A. van Deursen. An integrated crosscutting concern migration strategy and its application to JHotDraw. In Proceedings of the IEEE International Conference on Source Code Analysis and Manipulation (SCAM), pages 101--110. IEEE, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. M. Marin, L. Moonen, and A. van Deursen. SoQueT: Query-based documentation of crosscutting concerns. In Proceedings of the 29th International Conference on Software Engineering (ICSE), pages 758--761, Washington, DC, USA, 2007. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. P. Monteiro and J. M. Fernandes. Towards a catalog of aspect-oriented refactorings. In AOSD '05: Proceedings of the 4th international conference on Aspect-oriented software development, pages 111--122, New York, NY, USA, 2005. ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Sort-based refactoring of crosscutting concerns to aspects

      Recommendations

      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
        LATE '08: Proceedings of the 2008 AOSD workshop on Linking aspect technology and evolution
        March 2008
        43 pages
        ISBN:9781605581477
        DOI:10.1145/1404953

        Copyright © 2008 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: 31 March 2008

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader