On the Impact of Aspect-Oriented Code Smells on Architecture Modularity: An Exploratory Study

  • Isela Macia PUC-Rio
  • Alessandro Garcia PUC-Rio
  • Arndt von Staa PUC-Rio
  • Joshua Garcia University of Southern California
  • Nenad Medvidovic University of Southern California

Resumo


Aspect-oriented programming (AOP) aims to improve software modularity, although developers can unwittingly introduce code smells in their programs. A code smell is any symptom in the source code that possibly indicates a deeper modularity problem. Several works have been concerned about code smell occurrences in aspect-oriented systems. However, there is little knowledge about their actual damage to the modularity of architectural designs. This gap makes it difficult for developers understand and manage the harmful architecture-level impact of recurring code smells. This paper presents an exploratory analysis that investigates the influence of aspect-oriented code smells on evolving architectural designs. We analyzed code smell occurrences in 14 versions of 2 applications designed using different architectural styles. The outcome of our evaluation suggests that code smell occurrences often entail architecture modularity problems in these systems. Even worse, our analysis revealed that certain architecturally-relevant code smells were not targeted by the refactoring strategies in place.
Palavras-chave: Computer architecture, Software, Connectors, Correlation, Programming, Reliability, Concurrent computing, aspect-oriented programming, code smells, architectural smells
Publicado
26/09/2011
MACIA, Isela; GARCIA, Alessandro; VON STAA, Arndt; GARCIA, Joshua; MEDVIDOVIC, Nenad. On the Impact of Aspect-Oriented Code Smells on Architecture Modularity: An Exploratory Study. In: SIMPÓSIO BRASILEIRO DE COMPONENTES, ARQUITETURAS E REUTILIZAÇÃO DE SOFTWARE (SBCARS), 5. , 2011, São Paulo/SP. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2011 . p. 41-50.