Aspect-oriented software development (AOSD) is a new approach for managing complexity in large software systems. Aspect-oriented techniques extend techniques such as object-orientation, enabling a software developer to modularize concerns (aspects) that crosscut the system's structure. Aspects may be described and manipulated at multiple points in the development process, from requirements to design to implementation.

Significant effort has been dedicated by researchers to the design of programming models, languages, and composition tools for aspect-oriented software development. But to make aspect-oriented development an industrial-strength technology, the concepts and techniques of aspect-orientation need to be integrated into tools used throughout the software process - including design and modeling tools and techniques, software configuration management systems, programming environments, debuggers, and deployment tools.

In this workshop, we will discuss what tools are needed to support aspect-oriented development, and how that support can best be integrated into tools in a consistent way. See the Schedule. for more details.