Notícia
Tecnologia
Como o Serpro enfrenta o desafio de modernizar sistemas com décadas de história?
Como manter sistemas que estruturam o funcionamento do Estado brasileiro e, ao mesmo tempo, acompanhar o ritmo acelerado da inovação tecnológica? Esse é um dos desafios cotidianos do Serpro, empresa pública de tecnologia da informação criada na década de 1960 que, por isso mesmo, fala com autoridade quando o assunto é sistemas legados.
"Temos soluções perenes, estruturadoras do funcionamento do Estado, que, ao mesmo tempo, passam por atualizações frequentes. Assim, tivemos que construir caminhos para sustentar esses sistemas antigos sem renunciar ao nosso compromisso com a inovação", explica Débora Modesto, gerente do Serpro à frente do projeto de modernização de sistemas legados no mainframe da empresa.
Um legado crítico que não pode parar
O tamanho do desafio é proporcional à história da instituição. Somente nos sistemas legados do mainframe, são cerca de 400 soluções, distribuídas entre diferentes clientes e linhas de negócio, algumas com trinta ou quarenta anos de operação contínua, um ecossistema de alta complexidade que não pode simplesmente ser desligado.
Mas por que modernizar o que ainda funciona? Com o tempo, defasagens inevitáveis começam a surgir, seja na experiência do usuário, capacidade de escala ou sustentabilidade financeira. Novas modalidades de contratação, como o modelo pay per use, também pressionam por mudanças na arquitetura dos sistemas. Além disso, a velocidade com que novas tecnologias surgem impõe transformações rápidas, ao mesmo tempo em que é preciso manter a qualidade na entrega dos serviços ao cidadão.
“Diante disso tudo, temos ainda um fator muitas vezes subestimado: o capital humano. Há cada vez menos especialistas nas linguagens e plataformas antigas, e os novos desenvolvedores têm pouco interesse nessas tecnologias, o que coloca em risco a sustentabilidade de longo prazo desses sistemas”, alerta a gerente do Serpro.
Entre risco e continuidade: os caminhos possíveis
As soluções possíveis variam desde a rehospedagem em nova infraestrutura, passando pela mudança de plataforma, adoção de novas arquiteturas e reconstrução do sistema, até a substituição completa.
O Serpro, no entanto, não trabalha com os extremos dessa escala, nem com a simples rehospedagem, que pouco agrega em termos de evolução, nem com a substituição total, que implica riscos e custos elevados demais para sistemas críticos do Estado. O caminho escolhido passa pela transformação gradual e controlada, tendo a conversão automática de código como uma das abordagens dessa estratégia.
Automatização como caminho para modernizar sem romper
A conversão automática de código é o uso de programas de computador para “traduzir” um software de uma linguagem para outra, sem que um programador precise reescrever tudo do zero. Hoje, esse processo pode utilizar inteligência artificial, que ajuda a entender o que o programa faz e a recriar a mesma lógica em outra linguagem ou tecnologia.
Uma das vantagens da migração automática de código é a desoneração dos programadores, que ficam concentrados no desenvolvimento de nossos serviços. “Porém, precisamos nivelar nossas expectativas: não se trata de milagre. Não teremos uma melhoria do código; na realidade, levamos muito da estrutura original para o novo ambiente”, explica Débora Modesto.
Governança e execução: como a estratégia sai do papel
No caso do Serpro, há um plano de ação para iniciar a migração ou desativação de sistemas de menor impacto e risco ao negócio. Para apoiar as equipes que desejem experimentar uma abordagem mais automatizada, foi contratado o serviço de conversão de código. Nesse serviço, há uma etapa fundamental de diagnóstico sobre a solução a ser convertida, de modo a definir o escopo de trabalho, formatar um pacote, avaliar dependências e relacionamentos entre programas, além de identificar código inutilizado, ou seja, que não deve ser levado para outra plataforma.
Após essa etapa, a conversão segue em uma esteira de trabalho compatível com a atuação dos times de desenvolvimento até a produção. A definição do plano de ação só foi possível devido ao amadurecimento da governança, que permitiu compreender quais são os sistemas existentes e suas características, como tecnologias envolvidas, tamanho, dependências e custo.
As ferramentas de conversão também trazem bibliotecas específicas que “encapsulam” os comandos originais e promovem um reaproveitamento de código. “Isso funciona bem, mas pode acabar gerando dependência dos fornecedores. Dessa forma, é necessário que, ao contratar o serviço, sejam ponderados os prós e contras de diferentes modelos de licenciamento”, descreve a gerente.
