Débito Técnico vs Dívida Técnica

  • 0
Esta semana, em uma das equipes que faço parte, tive uma discussão sobre essa questão de simples nomenclatura. Para uns pode parecer mera "frescura" de nomenclatura, mas pra mim a diferença carrega uma grande carga semântica.

O termo em inglês é "Tecnical Debt", cunhado por Ward Cunningham, pai do conceito. E por mais que a escrita de debt seja bem similar a debit, àquele tem siguinificado bem diferente deste, bem como do seu falso amigo português-BR débito. Veja a definição de ambos:

debt: (noun) Something that is owed or that is bound to pay to or perform for another. A liability or obligation to pay or render something.
debit: (noun) The recording of an entry if debt in an account.

Soma ainda nisso, a discussão do termo proposta por Martin Fowler. Nele vemos que a metáfora está diretamente relacionada ao conceito de dívida financeira. Onde as decisões mal tomadas incorrem em prejuízos futuros, e esses só aumentam com o passar do tempo (cobrando juros).

Essa mudança semântica muda bastante o sentimento que devemos ter com esse tipo de risco de software. Já que o "débito" é algo que pagamos apenas uma vez (quando se cria) enquanto a "dívida" vai corroendo e cobrando cada vez mais do seu software. Essa analogia, força as equipes a olharem a dívida com mais frequencia minimizando a cobrança dos seus juros. Enquanto quem olha como débito pode esquecer dela como algo que aconteceu no passado e que podemos deixar passar.

Quem quiser ler uma pouco mais sobre o assunto, aconselho o livro Clean Code do Uncle Bob.

Nenhum comentário: