  Aspect-Oriented Programming (AOP) improves modularity by encapsulating
crosscutting concerns into aspects. Some mechanisms to compose aspects allow
invasiveness as a mean to integrate concerns. Invasiveness means that AOP
languages have unrestricted access to program properties. Such kind of
languages are interesting because they allow performing complex operations and
better introduce functionalities. In this report we present a classification of
invasive patterns in AOP. This classification characterizes the aspects
invasive behavior and allows developers to abstract about the aspect incidence
over the program they crosscut.
