2008Unpublished venueRequires access

Tool-supported Refactoring of Aspect-oriented Programs: Why Aspect-oriented Programming Prevents Developers from Using Their Favorite Refactoring Tools, and How These Tools Can Be Made Aspect-aware?

Jan Wloka

Open publisher page 1 citations

Abstract

Aspect-oriented programming (AOP) offers a new concept for improving the modularity of crosscutting concerns. The advanced composition mechanisms introduced for realizing this concept cause serious software evolution problems and prevent in particular tool-supported refactoring of aspect-oriented programs. This dissertation presents an approach to refactoring that uses change impact analysis techniques to verify the validity of behavioral compositions in aspect-oriented programs. It shows how the refactoring process can be extended to detect invalidated compositions and to adjust their specifications. In particular, the dissertation discusses and classifies general attributes of existing approaches for composing program behavior in AOP and illustrates in which way they cause evolution-related problems. It presents a model for representing the meta-level information used, which enables the detection of invalidated compositions. The presented prototype demonstrates how the proposed approach can be integrated in mainstream refactoring tools, showing different ways to assist developers in detecting and adjusting invalidated compositions.

About this research paper

What this paper is about

Aspect-oriented programming (AOP) offers a new concept for improving the modularity of crosscutting concerns. The advanced composition mechanisms introduced for realizing this concept cause serious software evolution problems and prevent in particular tool-supported refactoring of aspect-oriented programs. This dissertation presents an approach to refactoring that uses change impact analysis techniques to verify the validity of behavioral compositions in aspect-oriented programs. It shows how the refactoring process can be extended to detect invalidated compositions and to adjust their specifications. In particular, the dissertation discusses and classifies general attributes of existing approaches for composing program behavior in AOP and illustrates in which way they cause evolution-related problems. It presents a model for representing the meta-level information used, which enables the detection of invalidated compositions. The presented prototype demonstrates how the proposed approach can be integrated in mainstream refactoring tools, showing different ways to assist developers in detecting and adjusting invalidated compositions.

Why it matters

OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Aspect-oriented programming (AOP) offers a new concept for improving the modularity of crosscutting concerns. The advanced composition mechanisms introduced for realizing this concept cause serious software evolution problems and prevent in particular tool-supported refactoring of aspect-oriented programs. This dissertation presents an approach to refactoring that uses change impact analysis techniques to verify the validity of behavioral compositions in aspect-oriented programs. It shows how the refactoring process can be extended to detect invalidated compositions and to adjust their specifications. In particular, the dissertation discusses and classifies general attributes of existing approaches for composing program behavior in AOP and illustrates in which way they cause evolution-related problems. It presents a model for representing the meta-level information used, which enables the detection of invalidated compositions. The presented prototype demonstrates how the proposed approach can be integrated in mainstream refactoring tools, showing different ways to assist developers in detecting and adjusting invalidated compositions.

Key concepts: Code refactoring, Aspect-oriented programming, Modularity (biology), Computer science, Separation of concerns, Software engineering, Programming language, Process (computing)

Related papers

Back to paper searchBrowse research topicsOriginal source
Tool-supported Refactoring of Aspect-oriented Programs: Why Aspect-oriented Programming Prevents Developers from Using Their Favorite Refactoring Tools, and How These Tools Can Be Made Aspect-aware? — Research Paper | ScholarLens