• DocumentCode
    1994209
  • Title

    How we refactor, and how we know it

  • Author

    Murphy-Hill, Emerson ; Parnin, Chris ; Black, Andrew P.

  • Author_Institution
    Portland State Univ., Portland, OR
  • fYear
    2009
  • fDate
    16-24 May 2009
  • Firstpage
    287
  • Lastpage
    297
  • Abstract
    Much of what we know about how programmers refactor in the wild is based on studies that examine just a few software projects. Researchers have rarely taken the time to replicate these studies in other contexts or to examine the assumptions on which they are based. To help put refactoring research on a sound scientific basis, we draw conclusions using four data sets spanning more than 13 000 developers, 240 000 tool-assisted refactorings, 2500 developer hours, and 3400 version control commits. Using these data, we cast doubt on several previously stated assumptions about how programmers refactor, while validating others. For example, we find that programmers frequently do not indicate refactoring activity in commit logs, which contradicts assumptions made by several previous researchers. In contrast, we were able to confirm the assumption that programmers do frequently intersperse refactoring with other program changes. By confirming assumptions and replicating studies made by other researchers, we can have greater confidence that those researchers´ conclusions are generalizable.
  • Keywords
    software maintenance; program change; software project; software refactoring; Books; Catalogs; Computer bugs; Frequency; History; Performance evaluation; Programming profession; Software debugging; Testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on
  • Conference_Location
    Vancouver, BC
  • ISSN
    0270-5257
  • Print_ISBN
    978-1-4244-3453-4
  • Type

    conf

  • DOI
    10.1109/ICSE.2009.5070529
  • Filename
    5070529