DesenvolvimentoO que você precisa saber sobre conversão automatizada de...

O que você precisa saber sobre conversão automatizada de código antes do seu próximo projeto de modernização

-

Publicidade

O que você precisa saber sobre conversão automatizada de código antes do seu próximo projeto de modernizaçãoOs CIOs em geral enfrentam um grande desafio: encontrar formas de manter seus sistemas atualizados com o mínimo de risco e custo para o negócio. Mas com a evolução cada vez mais frenética da tecnologia e com o ciclo de vida das novidades ficando cada vez menor, TI sofre com a falta de alternativas de baixo custo e risco para manter-se atualizada em relação às novas tendências. Este cenário fez com que TI procurasse meios de automatizar o processo de transformação de uma aplicação para poder se adequar às necessidades de negócio num prazo aceitável e de maneira natural. Se esta situação parece familiar a você, não se preocupe – você não está sozinho.

Quando falamos de aplicações legadas (não tecnologia legada), estamos normalmente lidando com código antigo, muitas vezes complexo, de missão crítica, mal documentado e com cada vez menos gente capacitada para mantê-lo. Uma aplicação ganha o status de “legada” não somente porque sua tecnologia é ultrapassada. É uma combinação de fatores. Java, por exemplo, é a nova plataforma para muitos projetos de transformação, ao mesmo tempo a plataforma antiga para outras (que implementaram as primeiras versões de Java).

A transformação se torna ainda mais complexa quando as tecnologias são completamente diferentes. Neste artigo, discutiremos alguns desafios na conversão de Cobol para Java. Este é um caminho bastante adotado em migrações de aplicações do ambiente mainframe para baixa plataforma. Este caminho leva aplicações escritas com programação procedural, para um novo mundo da programação orientada a objetos e a eventos. As ferramentas disponíveis para auxiliar nesta migração costumavam usar uma estratégia de conversão direta de Cobol para Java, gerando um código Java procedural, o famoso “jobol”. Mas as intervenções no código após a conversão eram tão grandes, que a tarefa de migração, no final das contas, ainda era complicada e arriscada.

As linguagens de programação evoluíram do assembler para a 4a geração, reduzindo cada vez mais o esforço de escrever código. Quanto mais alta a geração, mais poderosos eram os comandos. A mesma evolução pode ser observada em outra dimensão. Desde que o OMG começou a falar de MDA (Model Driven Architecture), algumas empresas incorporaram este modelo nos seus processos de desenvolvimento e mais tarde em ferramentas para acelerar o desenvolvimento de aplicações. MDA é usado agora em projetos de transformação, através de ferramentas que implementam seu processo para converter aplicações de uma linguagem para outra, em dois passos:

  1. Converte a aplicação atual em um modelo;
  2. Converte o modelo na linguagem escolhida para a plataforma destino.

E por que esse método será mais vantajoso do que a velha conversão direta de linguagem para linguagem? Com MDA, a transformação pode ser feita de maneira mais aderente à plataforma destino, ao invés de levar para a nova plataforma o modelo de programação da plataforma de origem. Em outra palavras, em uma conversão de Cobol para Java, o resultado é um código Java orientado a objeto, não um Java procedural. Este método representa uma excelente alternativa para acelerar o processo de transformação, ao mesmo tempo em que reduz o risco e o custo.

Mas tenha sempre em mente que ainda sim é um processo automatizado de conversão, e continua com pequenas desvantagens em comparação a uma migração manual. O código gerado muitas vezes carrega bibliotecas do fornecedor da ferramenta e em outros casos obrigado a manutenção do código a ser feita pela IDE do fornecedor (neste caso a aplicação poderia ser mantida alterando o modelo ou ou código fonte).

Alguns fatores que deve ser considerados antes de selecionar a ferramenta ideal de conversão:

  • Procure por referências no mercado – boas ferramentas ganham boa reputação muito rápido;
  • Fuja de qualquer tipo de dependência do fornecedor após a conversão – normalmente isso acontece com IDEs, frameworks e bibliotecas embutidas no código convertido;
  • Peça uma prova de conceito antes de decidir- é sempre bom validar na prática o que o fornecedor diz que é capaz de entregar. Peça seus especialista para validar o resultado e identificar prós e contras. Avalie a qualidade do código gerado e o quanto de alterações o código convertido vai precisar para entrar em produção. Não existe 100% de conversão automática. Algumas adaptações ainda se fazem necessário;
  • Não existe uma solução que atenda a tudo e a todos. Você talvez tenha que combinar ferramentas para acelerar a conversão e conversão manual;
  • Tenha métricas atualizada da sua aplicação como complexidade, tamanho, manutenibilidade, importância para o negócio e frequência de atualização. Estas informações o ajudarão a definir a estratégia de migração. Se o parceiro selecionado ignorar estes dados, fuja dele!

Os resultados de uma conversão usando MDA são mais realmente mais aceitáveis, no ponto de vista de qualidade do código gerado. É um caminho interessante para projetos de transformação. Novas estratégias de conversão continuam a surgir no mercado e uma delas pode ser a mais adequada para suas aplicações legadas. Mas lembre-se: uma solução não serve para tudo. Esteja preparado para combinar ferramentas que aceleram a conversão com conversão manual de código de forma a maximizar as economias, mas mantendo o risco baixo e uma qualidade aceitável.

Até o próximo artigo!

[Crédito da Imagem: Desenvolvimento – ShutterStock]

Francisco J S Fernandeshttps://wordpress-1301991-4735944.cloudwaysapps.com/author/francisco-fernandes/
Profissional de IT e apaixonado por tecnologia, Francisco é Arquiteto de Soluções com mais de 25 anos de experiencia no mercado de TI em diversas empresas como BID, HP, EDS, Fininvest, Unibanco, Banco Nacional e Sul America Seguros. Escrever é um dos seus hobbies e, além de tecnologia, é aficionado por música, viagens, fotografia e futebol. Meus contatos são: LinkedIn: http://br.linkedin.com/in/franciscojsfernandes E-mail: [email protected] Twitter: @kikofernandes71

Latest news

Inteligência Artificial e Cibersegurança: Os Novos Desafios da Era Digital

%%excerpt%% Descubra os riscos da Inteligência Artificial na cibersegurança, como ataques adversariais, phishing 2.0 e deepfakes, além de desafios éticos e legais.

IA que gera vídeos: O Guia Definitivo das Melhores Ferramentas de 2025

Descubra os 10 melhores geradores de vídeo por IA de 2025. Veja comparações reais, preços, APIs e escolha a ferramenta ideal para seu projeto.

Construindo Times de Sucesso: Como Equilibrar Similaridade e Diversidade de Perfis

Descubra estratégias de liderança para formar times de sucesso. Aprenda quando optar por perfis semelhantes para estabilidade e quando escolher perfis diversos para impulsionar a inovação.

Inteligência Artificial na Guerra Moderna: A Nova Fronteira do Combate

Como a Inteligência Artificial na guerra moderna está decidindo batalhas? Entenda a tecnologia por trás dos ataques de Israel e Irã e as táticas de IA que mudaram o combate.
Publicidade

Faça das dores dos seus clientes sua nova estratégia de vendas! 

Não sabe como as dores das empresas podem ajudar no aumento do volume de vendas. Descubra agora e adote essa estratégia no seu negócio!

Google I/O 2025: Como a Nova Era da IA Impacta Desenvolvedores e Profissionais de Tecnologia

Descubra como o Google I/O 2025 redefine o futuro da Inteligência Artificial. Veja como o Gemini 2.5, Deep Think e Project Mariner impactam desenvolvedores e o ecossistema de tecnologia.

Must read

Inteligência Artificial e Cibersegurança: Os Novos Desafios da Era Digital

%%excerpt%% Descubra os riscos da Inteligência Artificial na cibersegurança, como ataques adversariais, phishing 2.0 e deepfakes, além de desafios éticos e legais.

IA que gera vídeos: O Guia Definitivo das Melhores Ferramentas de 2025

Descubra os 10 melhores geradores de vídeo por IA de 2025. Veja comparações reais, preços, APIs e escolha a ferramenta ideal para seu projeto.
- Advertisement -

You might also likeRELATED
Recommended to you