Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. MIT Libraries
  3. MIT Theses
  4. Graduate Theses
  5. Refactoring Tutor: An IDE Integrated Tool for
    Practicing Key Techniques to Refactor Code

Refactoring Tutor: An IDE Integrated Tool for
Practicing Key Techniques to Refactor Code

Thumbnail Image
Download
Name

leyva-mleyva-meng-eecs-2023-thesis.pdf

Description
Thesis PDF
Size

3.1 MB

Format

Adobe PDF

Checksum (MD5)

da3f3f2a943c533dea71d449a5e0561a

Author(s)
Leyva, Mario
Advisor(s)
Miller, Robert C.
Date Issued
June 2023
Publisher
Massachusetts Institute of Technology
Abstract
Refactoring code is an important skill to become a competent software engineer, however it is usually never explicitly taught in coding intensive courses. Even though engineers in academia and industry agree refactoring is important, most novice programmers are unaware of the code smells they should avoid when writing code. This thesis discusses a novel tutoring system to assist novice programmers with refactoring. This tool provides refactoring exercises to students in an introductory programming class. The tutor exposes students to various types of code smells and has them deliberately practice how to refactor. The tutor infrastructure has proven to be robust to several refactoring exercises. Based on a user study involving the students and the staff members from 6.1010: Fundamentals of Programming, the tutor infrastructure has shown to be robust to bugs and staff feedback. The tutor shows promise, but further studies with more students are necessary to evaluate its effectiveness on teaching student refactoring.
MIT Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Terms of Use
In Copyright - Educational Use Permitted
https://rightsstatements.org/page/InC-EDU/1.0/
Copyright retained by author(s)
Persistent DSpace Link
https://hdl.handle.net/1721.1/151544
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.