Quando fala-se de “legado” no ambiente de tecnologia é comum sentir calafrio, medo e uma ansiedade para atualizá-lo. Em todas as empresas que passei, havia um que precisava ou estava no processo de migração.
Existem alguns motivos pelos quais o legado tecnológico é tão comum, destaco os que julgo como principais:
– Toda linha de código colocada em produção é automaticamente um código legado. É importante refletir se este legado é bom ou ruim, assim como em outros aspectos da vida. Geralmente não quereremos “matar os legados” da nossa história.
– Necessidade de validar hipóteses de negócio com velocidade e o que era só validação acaba virando produto final e este vai crescendo sem critério e acumulando débitos técnicos que se tornam custosos. Cabe ao time de engenharia ser protagonista do produto e evitar essa bola de neve.
– Velocidade de evolução da tecnologia, onde versões de linguagens utilizadas são depreciadas, ou uma arquitetura mostra-se mais eficiente, por exemplo.
– Ao analisar parâmetros de valor entregue, risco, esforço e custo, pode não valer a pena priorizar a atualização/migração do legado. Por exemplo, uma atualização que não gera valor para o cliente final e que não tem risco relevante em médio prazo, provavelmente não é priorizada.
Ou seja, a legados e legados, os que a valem a pena manter e os que valem a pena tomar alguma ação como migrar, ou descontinuar.
Na imagem, uma obra de Jackson Pollock, famoso pelo seu expressionismo abstrato.