• DocumentCode
    650724
  • Title

    Identification of Refused Bequest Code Smells

  • Author

    Ligu, Elvis ; Chatzigeorgiou, Alexander ; Chaikalis, Theodore ; Ygeionomakis, Nikolaos

  • Author_Institution
    Dept. of Appl. Inf., Univ. of Macedonia, Thessaloniki, Greece
  • fYear
    2013
  • fDate
    22-28 Sept. 2013
  • Firstpage
    392
  • Lastpage
    395
  • Abstract
    Accumulated technical debt can be alleviated by means of refactoring application aiming at architectural improvement. A prerequisite for wide scale refactoring application is the automated identification of the corresponding refactoring opportunities, or code smells. One of the major architectural problems that has received limited attention is the so called ´Refused Bequest´ which refers to inappropriate use of inheritance in object-oriented systems. This code smell occurs when subclasses do not take advantage of the inherited behavior, implying that replacement by delegation should be used instead. In this paper we propose a technique for the identification of Refused Bequest code smells whose major novelty lies in the intentional introduction of errors in the inherited methods. The essence of inheritance is evaluated by exercising the system´s functionality through the corresponding unit tests in order to reveal whether inherited methods are actually employed by clients. Based on the results of this approach and other structural information, an indication of the smell strength on a ´thermometer´ is obtained. The proposed approach has been implemented as an Eclipse plug in.
  • Keywords
    inheritance; object-oriented methods; software maintenance; Eclipse plug in; accumulated technical debt; automated identification; inheritance; object-oriented systems; refused bequest code smells; wide scale refactoring application; Abstracts; Educational institutions; Europe; Maintenance engineering; Software maintenance; Software systems; Refused Bequest; code smell; refactoring; software maintenance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance (ICSM), 2013 29th IEEE International Conference on
  • Conference_Location
    Eindhoven
  • ISSN
    1063-6773
  • Type

    conf

  • DOI
    10.1109/ICSM.2013.55
  • Filename
    6676915