A Theory of Aspects for Aspect-Oriented Software Development - Chavez, Christina von Flach G.; Lucena, Carlos J. P. de (Anais do Simpósio Brasileiro de Engenharia de Software (SBES); 2003: Anais do XVII Simpósio Brasileiro de Engenharia de Software, 2003)
Aspect-Oriented Software Development (AOSD) is an emerging area with the goal of promoting advanced separation of concerns throughout the software development lifecycle. However, since there are many different approaches to Aspect-Oriented Programming (AOP), it is very difficult to identify the essential concepts and properties for supporting the design of aspect-oriented languages and tools, and effectively promote advances in the field of AOSD. In this context, this paper presents a theory of aspects – a conceptual framework for AOP that provides consistent terminology and basic semantics for thinking about a problem in terms of the core concepts and properties that characterize the aspect-oriented style as an emerging paradigm to software development. This theory has been used for evaluating existing aspect-oriented languages and tools and, in special, it has been used to characterize aSide, an aspect-oriented modeling language.