Learn More
Design patterns are a standard means to create large software systems. However, with standard object-oriented techniques, typical implementations of such patterns are not themselves reusable software entities. Evolution of a program into a 'patterned' form (also known as 'refactoring to patterns') and subsequent evolution of a 'patterned' design is largely(More)
SUMMARY Previous taxonomies of software change have focused on the purpose of the change (i.e., the why) rather than the underlying mechanisms. This paper proposes a taxonomy of software change based on characterizing the mechanisms of change and the factors that influence these mechanisms. The ultimate goal of this taxonomy is to provide a framework that(More)
Current proposals for load-time transformation of Java classes are either dependent on the use of a specific class loader or dependent on a specific JVM implementation. This is not due to an inadequacy of the Java platform but to the wrong choice of the level at which to hook into the Java Class Loader Architecture. JMangler follows a novel approach that(More)
In this paper we evaluate logic code analysis and transformation frameworks for their suitability as basic infrastructures for fast detection and extraction of (crosscutting) concerns. Using design patterns as example concerns, we identify desirable properties that an infrastructure should fulfill. We then report our initial results of evaluating candidate(More)
A meta model specifies a particular visual modeling language. Aspect oriented modeling (AOM) needs meta models for aspect visual modeling to bridge the gap between the conceptual modeling of crosscut concerns and aspect oriented programming (AOP). Many researchers have proposed extensions of the UML towards graphical notations for aspects. However,(More)
This workshop was dedicated to research towards better support for unantic-ipated software evolution (USE) in development tools, programming languages, component models and related runtime infrastructures. The report gives an overview of the submitted papers and summarizes the essence of discussions during plenary sessions and in working groups.