DEV Community

Discussion on: Do you schedule time and tasks for refactors?

Collapse
 
kspeakman profile image
Kasey Speakman • Edited

Oh, we definitely put it as a backlog item. From this month:

Refactor backlog item

In this case, we later discovered better ways to structure our Elm models, and our old models were "oversharing" a lot of things between pages. So, refactoring is a change that potentially touches a lot of places. Intermixing this kind of refactoring with other stories would cause the stories to be too big.

We added this item to a lot of different sprints, but sometimes other stories ate up the available time and it got pushed to next sprint. But here and there some time was put to it, the full refactor should be complete this sprint. And all along the way we have deployed the interim changes.

We have the good fortune to basically approve our own backlog. So nobody told us we could not do that. I act as the product owner and I approved it. :) It is a win for both devs and customers anyway. It prevents a class of bugs that crop up with shared state and is more straightforward to maintain. A good foundation going forward. So worth the time IMO.