Refactoring in an agile environment
Almost all development teams I work with use some form of agile software development to manage work over time in the form of short sprints, including any refactoring work.
In this section, we’ll cover the basics of agile workflows and how refactoring can fit into this type of environment. This is important because if refactoring work can’t fit into an agile workflow, refactoring simply won’t happen.
Key elements of agile teams
Agile software development was officially codified in the Manifesto for Agile Software Development (commonly called the Agile Manifesto) and flows from the following core preferences:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
Following these guiding principles, the exact “flavor” of agile differs from team...