Teaching Code Refactoring Using LLMs
By: Anshul Khairnar, Aarya Rajoju, Edward F. Gehringer
Potential Business Impact:
Helps students learn to fix computer code better.
This Innovative Practice full paper explores how Large Language Models (LLMs) can enhance the teaching of code refactoring in software engineering courses through real-time, context-aware feedback. Refactoring improves code quality but is difficult to teach, especially with complex, real-world codebases. Traditional methods like code reviews and static analysis tools offer limited, inconsistent feedback. Our approach integrates LLM-assisted refactoring into a course project using structured prompts to help students identify and address code smells such as long methods and low cohesion. Implemented in Spring 2025 in a long-lived OSS project, the intervention is evaluated through student feedback and planned analysis of code quality improvements. Findings suggest that LLMs can bridge theoretical and practical learning, supporting a deeper understanding of maintainability and refactoring principles.
Similar Papers
Refactoring with LLMs: Bridging Human Expertise and Machine Understanding
Software Engineering
Helps computers fix messy code automatically.
Code Refactoring with LLM: A Comprehensive Evaluation With Few-Shot Settings
Software Engineering
Makes computer code cleaner and easier to fix.
Model-Assisted and Human-Guided: Perceptions and Practices of Software Professionals Using LLMs for Coding
Software Engineering
Helps coders build software faster and smarter.