Technical debt là khoảng cách giữa code hiện tại và code lẽ ra phải như thế, được gánh lấy (có chủ đích hoặc không) để đi nhanh hơn. Một số nợ là chấp nhận được; công việc là quản lý nó, chứ không phải loại bỏ nó. Điều then chốt là ưu tiên loại nợ thực sự gây đau.
Ưu tiên theo tác động, không phải theo sự khó chịu
Với mỗi khoản nợ, hãy hỏi:
- Nó làm chậm chúng ta hoặc gây bug bao lâu một lần? (tần suất)
- Khi nó cắn thì tệ đến mức nào? (mức độ nghiêm trọng)
- Sửa nó rủi ro/tốn kém ra sao? (chi phí)
Tần suất cao + nghiêm trọng cao + chi phí thấp → sửa ngay
Tần suất thấp + nghiêm trọng thấp → để đó, ghi chú lại
