“Never leave till tomorrow that which you can do today.” — Benjamin Franklin
Any time we write code, there is a chance we will create a defect. Sometimes, when working a user story, we find a production defect. How my team handles production defects has evolved as we have matured in Agile.
When I began my agile journey as ScrumMaster, I took the position that the team would fix any development defects that we caused but request a separate user story and prioritization for any production defects we uncovered. This was not different than when we did Waterfall projects. I think I was focused on process, not people.
Process over people?
One day at lunch, I was talking to a friend about a user story and I mentioned a production defect. He asked how long it would take to fix it. I said, “About 15 minutes of coding and half an hour to test.”
When I told him that I was going to ask the product owner for a new user story to add to the product backlog, he threw his hands up in the air and said, “Just fix the darn defect!”
In retrospect, it was silly to ask for a separate user story and prioritization since we were already there, knew the issue, and knew it was a quick fix. I then realized that I was too focused on the process.
Back to the team
The next time our testers found a production defect, I asked, “How long will it take to fix it?” Our developer said about an hour. I then I asked the tester how long it would take to test, and she said about half an hour.
Then I asked the team if they thought we could complete it in the current sprint. After a bit of discussion, the team agreed that they could fix the defect in the sprint. So we did not ask for a separate user story; we simply fixed the production defect in the sprint.
Our new philosophy
Our team has matured beyond strictly following the old, “Write a new ticket” mentality to a “Let’s do what makes sense!” framework.
We embrace the Agile philosophy of “Customer collaboration over contract negotiation.” Nowadays, when we find a production issue, my go-to questions are, “How long will it take to fix?” and "Can we take it in this sprint?”