No abstract available.
Proceeding Downloads
Aspect mining in the presence of the C preprocessor
In systems software, the C preprocessor is heavily used to manage variability and improve efficiency. It is the primary tool to model crosscutting concerns in a very fine-grained way, but leads to extremely tangled and scattered preprocessor code. In ...
Mining and classification of diverse crosscutting concerns
Crosscutting concerns appear in software system due to the inherent inadequacy of OOP mechanisms to capture them in suitable encapsulating units. This results in scattered and tangled code. One more form of scattering and tangling may result from the ...
Mining application-specific coding patterns for software maintenance
A crosscutting concern is often implemented based on a coding pattern, or a particular sequence of method calls and control statements. We have applied a sequential pattern mining algorithm to capture coding patterns in Java programs. We have manually ...
Sort-based refactoring of crosscutting concerns to aspects
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 ...
Extracting updating aspects from version differences
Dynamic software evolution represents a viable technique to update software systems at run-time. On-the-fly updating is particularly helpful for systems that must be continuously available and up-to-date. Updates consist of several incremental changes ...
Flota: a programmer assistant for locating faulty changes in AspectJ software evolution
As Aspect-Oriented Programming (AOP) wins more and more popularity, there is increasing interest in using aspects to implement crosscutting concerns in object-oriented software. During software evolution, source code editing and testing are interleaved ...
Regression test selection when evolving software with aspects
Aspect-oriented software evolution introduces new challenges for regression test selection. When a program, that has been thoroughly tested, evolves by addition of an aspect, it is important for regression test selection to know which test cases are ...
Disciplined composition of aspects using tests
A large part of the software development effort is typically spent on maintenance and evolution, namely on adding new and unanticipated features. As aspect-oriented programming (AOP) can be easily used to compose software in non-planned ways, many ...