Aspect Aspect-oriented programming is known as a technique for modularizing crosscutting concerns.
However, there are no clear rules to help detect and implement Aspects in the software development
lifecycle. Consequently, class developers face changeability, parallel development and comprehensibility problems, because they must be aware of aspects whenever they develop or maintain a class. These problems can be mitigated by using adequate design rules between classes and aspects in the design stage and then in implementation process. We need to define a similar pattern of aspect for many systems to explore. This pattern will help development process from the initial phases, especially with the aim of supporting modular development of classes and aspects. Adding to that shows some design patterns relationships with aspects. We discuss how several languages improve crosscutting modularity without breaking class modularity. We evaluate our approach using a real case study and compare it with other approaches to detect the Aspect Oriented in Design phase of software developments.