• DocumentCode
    580482
  • Title

    Analyzing the Impact of Antipatterns on Change-Proneness Using Fine-Grained Source Code Changes

  • Author

    Romano, Daniele ; Raila, Paulius ; Pinzger, Martin ; Khomh, Foutse

  • Author_Institution
    Software Eng. Res. Group, Delft Univ. of Technol., Delft, Netherlands
  • fYear
    2012
  • fDate
    15-18 Oct. 2012
  • Firstpage
    437
  • Lastpage
    446
  • Abstract
    Antipatterns are poor solutions to design and implementation problems which are claimed to make object oriented systems hard to maintain. Our recent studies showed that classes with antipatterns change more frequently than classes without antipatterns. In this paper, we detail these analyses by taking into account fine-grained source code changes (SCC) extracted from 16 Java open source systems. In particular we investigate: whether classes with antipatterns are more change-prone (in terms of SCC) than classes without, (2) whether the type of antipattern impacts the change-proneness of Java classes, and (3) whether certain types of changes are performed more frequently in classes affected by a certain antipattern. Our results show that: 1) the number of SCC performed in classes affected by antipatterns is statistically greater than the number of SCC performed in classes with no antipattern, 2) classes participating in the three antipatterns Complex Class, Spaghetti Code, and SwissArmyKnife are more change-prone than classes affected by other antipatterns, and 3) certain types of changes are more likely to be performed in classes affected by certain antipatterns, such as API changes are likely to be performed in classes affected by the Complex Class, Spaghetti Code, and SwissArmyKnife antipatterns.
  • Keywords
    Java; object-oriented programming; public domain software; source coding; ComplexClass; Java open source system; SCC; SpaghettiCode; SwissArmyKnife; antipattern impact analysis; change proneness; fine grained source code changes; object oriented system; Algorithm design and analysis; Complexity theory; Educational institutions; Java; Software engineering; Software systems; Antipatterns; change-proneness; empirical software engineering; fine-grained source code changes;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Reverse Engineering (WCRE), 2012 19th Working Conference on
  • Conference_Location
    Kingston, ON
  • ISSN
    1095-1350
  • Print_ISBN
    978-1-4673-4536-1
  • Type

    conf

  • DOI
    10.1109/WCRE.2012.53
  • Filename
    6385139