Manual refactoring is supposed to be an error-prone process. In order to gain insight regarding developers' manual refactoring, we conducted a formative study participated by twelve experienced developers. Our study collected data by three methods: a consent form; an experiment observing participants' manual refactoring; a post-experiment questionnaires soliciting their personal opinion. This webpage is intended to provide information of the study process and the complete study results as well. The webpage is supporting material for Xi Ge
and Emerson Murphy-Hill
's paper submission "Reconciling Manual and Automatic Refactoring
1. consent form/pre-experiment questionnaires. The original file can be found here. 2. observing manual refactoring: we let participants perform manual refactorng upon Vuze open source project. 3. post-questionnaires. The original file can be found here.
| Participant ID|| Pre-experiment questionaires|| Refactoring videos|| Post-experiment questionnaires|
| 4|| link|| available|| link|
| 5|| Not authorized|| Not authorized|| Not filled the form|
| 6|| link|| available|| link|
| 7|| link|| available|| link|
| 10|| link|| available|| link|
| 11|| link|| Not authorized|| link|
| 12|| Not authorized|| Not authorized|| link|
| 13|| Not authorized|| Not authorized|| Not filled the form|
| 14|| Not authorized|| Not authorized|| Not filled the form|
| 15|| Not authorized|| Not authorized|| Not filled the form|
1. The contribution of manual refactoring from participants:
- Yellow: discarded. We discarded the refactorings due to several reasons: (1) the refactoring was too far from complete; (2) the participant finished the refactoring with our overly detailed guidance; (3) the participant finished the refactoring by invoking refactoring tools.
- Red: incorrectly performed. Red indicates although the participant refactored to a new code structure aligning with Fowler's definitions, the code behavior had been changed.
- Green: correctly performed. Green indicates the refactorings that met with Fowler's definition, and at the same time did not change the external behavior of the the code base.
- Time in the table (H:MM:SS) indicates the starting timeline of the corresponding refactoring in the recorded refactoring video.
2. Manual refatoring workflow patterns (in addition to the ones listed in our paper):