An Innovative Approach to Teaching Refactoring

Document Type

Conference Proceeding

Publication Date

12-1-2007

Description

Refactoring is the process of transforming the internal structure of existing code while keeping the integrity of the code's functional requirements. Refactoring is proven to increase program maintainability, flexibility, and understandability and is recognized as a best practice in the software development community. However, with the exception of courses or lectures on extreme programming, refactoring is overlooked in the computer science curriculum. This paper helps demystify refactoring by introducing an incremental approach for teaching refactoring on the college level. Through this hands-on approach, refactoring can become an integral component in the computer science curriculum and an innovative means of reinforcing software engineering principles and good development practices. The approach and three introductory lessons are presented in this paper.

Share

COinS