From Boring to Boarding: Transforming Refactoring Education with Game-Based Learning

Image credit: Unsplash

Abstract

Software Refactoring, a critical skill in software development, involves reorganizing code without altering its functionality. Despite its importance, many developers find refactoring complex and risky, often hesitating to adopt tools designed to assist in this process. To bridge this gap in this paper, we investigate the impact of gamification on the refactoring process and the usability of existing refactoring tools. Our research introduces RefGame, an innovative game-based tool that aims to enhance the learning experience in identifying and applying refactoring techniques. We used RefGame in an exploratory study that involved 322 computer science students. Then, we collected the feedback provided by these students via a survey. Our findings provide insight into the potential of gamification to make software refactoring education more accessible and effective, addressing the current challenges in teaching and learning refactoring techniques.

Publication
ICSE: International Conference on Software Engineering
Anwar Ghammam
Anwar Ghammam
Ph.D. Candidate

My research interests include Artificial Intelligence, Machine Learning, Software Optimization, Software Refactoring, and software quality.