Terminology: Refactoring

Photo by Mark Nakamura

Refactoring is a word that is often heard in software development organizations, and in some cases, it becomes a bad word.  How can that be?  It happens when the word is used but something else is happening—namely, rewriting or redesigning.

Refactoring does not just mean cleaning up code and making it easier to read and maintain.  If you have simplified the code but changed its behavior, you have not refactored it—even if you consciously removed behavior that is no longer needed or wanted.

Refactoring is “a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior.”  From refactoring.com:

Its heart is a series of small behavior preserving transformations. Each transformation (called a “refactoring”) does little, but a sequence of transformations can produce a significant restructuring. Since each refactoring is small, it’s less likely to go wrong. The system is kept fully working after each small refactoring, reducing the chances that a system can get seriously broken during the restructuring.

If you are redesigning or rewriting, please call it that.  In order for non-technical people to understand what refactoring is and why it is important, we must use the word correctly.

Allison Pollard

Allison Pollard helps overwhelmed technical leaders debug their management approach. She teaches them how to manage up, support people through change, and make time for strategic work. Her education in computer science, mathematics, and English from Southern Methodist University helps her connect technical work with people management. As a Certified Professional Co-Active Coach (CPCC) and Professional Certified Coach (PCC), Allison focuses on improving product delivery and leadership culture. Her experience includes work in energy, retail, financial, real estate, and transportation industries. Allison regularly speaks at global conferences like Scrum Gatherings and Agile Alliance's Agile20xx. She promotes women's leadership as the program director for Women in Agile's Mentorship program. When she's not working, Allison likes to drink lattes and listen to Broadway musicals. Allison is a proud glasses wearer and co-owner of Middlegame Partners.

http://www.allisonpollard.com
Previous
Previous

Agile Coaching Dashboard - How I Started

Next
Next

Starting a Community of Practice or User Group - Planning Events