Tôi nghĩ rằng cách tốt nhất để tiếp cận điều này là xác định những gì bạn thực sự muốn xem xét một lỗi trước tiên.
Rất nhiều nhà phát triển sẽ không xem xét một cái gì đó không hoạt động như dự định mà họ hiện đang làm việc không phải là một lỗi, vì thực sự đó không phải là một lỗi. Nếu bạn hiện đang làm việc trên một cái gì đó và nó vẫn còn khiếm khuyết thì lỗi cụ thể không thực sự hoàn tất nên không có lỗi thực sự. Điều ngược lại áp dụng cho công việc đã hoàn thành, nếu bạn đã xác định rằng một cái gì đó đã hoàn thành và sẵn sàng để thử nghiệm / phát hành / sản xuất và sau đó bạn tìm thấy một lỗi trong mã hoặc sử dụng thì bạn chắc chắn có lỗi.
Công ty của tôi sử dụng phương pháp sau để xác định khi nào cần sửa lỗi:
Nếu lỗi nghiêm trọng thì nó được thêm vào lần chạy nước rút hiện tại liên quan đến sản phẩm đó, với mức độ ưu tiên thích hợp. Thông thường, chúng tôi lên kế hoạch thêm khoảng 10% thời gian để cho phép điều này vào giai đoạn nước rút, cũng như có thêm những thứ mà chúng tôi không thực sự có kế hoạch hoàn thành nhưng nếu chúng tôi không có lỗi hoặc điều gì đó đã hoàn thành nhanh hơn chúng tôi dự kiến thì chúng tôi có thể hoàn thành.
Nếu một lỗi không nghiêm trọng thì chúng ta chỉ cần thêm nó vào backlog và thường hoàn thành nó trong lần chạy nước rút tiếp theo.
Tại sao đây là dòng chảy lý tưởng có một số rò rỉ rõ ràng cho nó, và đôi khi những thứ không 'quan trọng' từ góc độ lập trình có thể cần phải được hoàn thành ngay lập tức nếu quản lý quyết định rằng nó cần phải được hoàn thành sớm hơn chúng ta nghĩ hoàn thành
Ở một bên tôi nghĩ rằng điều tốt nhất để làm là chọn một cấu trúc và sau đó gắn bó với nó. Một số tổn thất lớn nhất đối với năng suất bắt đầu xảy ra khi bạn bắt đầu làm những việc không có cấu trúc. Một khi bạn bắt đầu xuống cấp cấu trúc của mình, nó rất dễ dàng để nó đi xuống dốc.
Điều đó có thể đã trả lời quá mức câu hỏi của bạn, nhưng đó chỉ là suy nghĩ của tôi về cách xử lý những điều này.