• DocumentCode
    3011920
  • Title

    Defining and Applying Detection Strategies for Aspect-Oriented Code Smells

  • Author

    Macia, Isela ; Garcia, Alessandro ; von Staa, Arndt

  • Author_Institution
    Inf. Dept., Pontifical Catholic Univ. of Rio de Janeiro, Rio de Janeiro, Brazil
  • fYear
    2010
  • fDate
    Sept. 27 2010-Oct. 1 2010
  • Firstpage
    60
  • Lastpage
    69
  • Abstract
    A code smell is any symptom in the source code that possibly indicates a bad design or programming problem. Many code smells in aspect-oriented programming (AOP) are very different from those in object-oriented programming. Therefore, new detection strategies should be conceived to identify whether a particular slice of aspect-oriented code is affected by a specific smell. Unfortunately, research on AOP usually focuses on providing abstract descriptions of code smells, without providing operational definitions of their detection strategies. Such strategies are becoming increasingly required due to the growing use of AOP in the development of long-living systems, including frameworks, libraries and software product lines. This paper presents a family of metric-based strategies that support the detection of recurring smells observed in existing aspect-oriented systems. We analyzed the accuracy of such smell detection strategies and also of those previously reported in the literature. Our study involved in total 17 releases of 3 evolving aspect-oriented systems from different domains. The outcome of our evaluation suggests that strategies for previously-documented AOP smells do not present a satisfactory accuracy. Our analysis also revealed that: (1) newly-discovered strategies achieved better results than well-known ones, and (2) the detection strategies seem to have high accuracy with respect to the identification of both trivial and non-trivial code smells.
  • Keywords
    aspect-oriented programming; chemioception; libraries; object-oriented programming; software metrics; AOP; aspect-oriented programming; code smells; libraries; long-living systems; metric-based strategies; object-oriented programming; software product lines; source code; Accuracy; Catalogs; Complexity theory; Context; Measurement; Programming; Software; AOP; Code Smell; Detection Strategy; Exploratory Study;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering (SBES), 2010 Brazilian Symposium on
  • Conference_Location
    Salvador, Bahia
  • Print_ISBN
    978-1-4244-8917-6
  • Electronic_ISBN
    978-0-7695-4273-7
  • Type

    conf

  • DOI
    10.1109/SBES.2010.14
  • Filename
    5631504