Dívida técnica é o custo futuro embutido em escolhas de curto prazo no desenvolvimento de software. Assim como uma dívida financeira, um atalho no código acelera a entrega hoje, mas cobra "juros" depois na forma de bugs, retrabalho e lentidão para mudar o sistema. O termo foi cunhado por Ward Cunningham, um dos autores do Manifesto Ágil.
Nem toda dívida é ruim
Assumir dívida técnica de forma consciente pode ser estratégico: lançar rápido para validar uma hipótese e refatorar depois é uma troca legítima. O problema é a dívida invisível e acumulada, aquela que ninguém registrou e que vai transformando cada nova feature em um campo minado.
Como controlar
O primeiro passo é medir: cobertura de testes, complexidade, duplicação e áreas do código onde os bugs se concentram. Com isso, decide-se o que refatorar, o que reescrever e o que apenas monitorar. Um diagnóstico técnico transforma a dívida de um medo difuso em um plano com prioridade e custo.