Às vezes, as aplicações ficam obsoletas e precisam de uma revisão completa, chamamos esse processo de 'Transmigração de aplicações'.

Quais são os sinais de alerta de que a transmigração é necessária em uma aplicação? O que muda e não muda com a transmigração? Quais são os benefícios da transmigração de aplicações? Continue lendo para descobrir!


Leia aqui um RESUMO do artigo

Aplicações de software envelhecem com o tempo e se tornam impróprias para o propósito, ao mesmo tempo em que mantém grande quantidade de propriedade intelectual ...
Essas aplicações precisam receber uma nova injeção de vida. Isso pode ser alcançado usando a Transmigração da aplicação: adicionando novos recursos e preservando o conteúdo antigo.

O que é transmigração de uma aplicação?

Transmigração significa literalmente 'mover uma alma para um novo corpo'. Aqui, usamos isso para nos referir à transferência do núcleo intelectual e funcional de uma aplicação para um formato mais funcional.

O processo de 'Transmigração de aplicação', como o chamamos, não é apenas uma extensão, aprimoramento, atualização ou modernização de um aplicativo, mas uma oportunidade única e uma abordagem sistemática para dar à aplicação uma nova concessão de vida.

Um exemplo de transmigração de aplicação

Abaixo está um exemplo clássico de transmigração para uma empresa na área de manuseio e armazenamento de materiais. Neste exemplo, um conjunto de aplicações desconectadas para projetar um sistema de armazenamento para o cliente foi transformado em um sistema integrado que lida com um fluxo de trabalho de ponta a ponta com recursos adicionais.

O objetivo de ambos sistemas permanece o mesmo: projetar um sistema de armazenamento, fornecer desenhos de layout e gerar uma cotação precisa dentro de um curto espaço de tempo.

Funcionalidade Sistema antigo Novo sistema (transmigrado)

Natureza do sistema

Um conjunto de aplicações desconectadas

Sistema de configuração integrado em execução sobre uma única plataforma CAD

Geração de desenho

As macros CAD recebem entradas manuais com base na exportação do configurador e geram representações 2D.

Integração em uma plataforma CAD. Cria e atualiza instantaneamente modelos CAD 3D precisos. Gera automaticamente representações 2D.

Armazenagem de dados

Múltiplos arquivos de texto

Armazenamento unificado de dados

Geração da cotação

Interpretação manual a partir das saídas do configurador.

Modelos de documentos com preenchimento automático.

Recursos preservados

  • Cálculos estruturais

  • Banco de dados de materiais

  • Cálculos estruturais

  • Banco de dados de materiais

Adições

  • Modelo CAD 3D preciso para deslocamento interno

  • Controle de revisão para projeto e cotação

  • Extensível para usos futuros

Sim, as aplicações de software precisam de uma nova vida!

Durante um período de tempo, as aplicações envelhecem. Tornam-se impróprias para o propósito, mas os engenheiros as mantêm sob pressão, pois as aplicações forneceram um serviço precioso ao longo dos anos e estão cheios de conteúdo de propriedade intelectual.

As empresas as mantêm vivas, remendando, adaptando novas funcionalidades, fornecendo conectores, tradutores e assim por diante. Eventualmente, as aplicações acabam ficando desatualizadas, desconectadas e desintegradas.

As aplicações precisam ser significativamente alteradas para acompanhar o cenário tecnológico em evolução, padrões de uso em constante mudança, e demandas crescentes no mercado. A transformação não fica apenas na troca de cor da pela pele antiga, como uma reforma, mas ganhando vida totalmente nova!

A transmigração pelos indicadores é exigida

Quando uma aplicação precisa de uma nova vida? Existem indicadores específicos que apontam para a necessidade de transmigração. Eles podem ser externos e internos.

Indicadores externos são obtidos por experiência das partes interessadas externas, como clientes, usuários, treinadores, vendedores, analistas etc. Eles são:

  • Retorno decrescente: A nova versão não fornece funcionalidades adicionais
  • Deficiências significativas: Falta de recursos e funcionalidades para executar determinadas tarefas
  • Remendo feito com pressa: Múltiplas correções, patches, atualizações e 'hotfixes'
  • Personalização específica-do-cliente: Fornecer recursos específicos ao cliente ou armazenamento de dados
  • Falta de coerência na funcionalidade: Interface de Usuário (UI) diferente ou comportamento diferente em funcionalidades similares
  • Encolhimento da base de usuários: Vendas reduzindo e usuários mudando para competidores

Indicadores internos são experimentados por interessados internos, como patrocinador do programa, gerenciador técnico, gerente do produto, equipe de desenvolvimento etc. Eles são:

  • Déficit técnico alto: Defeitos demais, regressões ou solicitações de mudança
  • Extensa lista de pendências no produto: Muitos recursos aguardando para serem implementados. Por exemplo, querer adicionar recursos, mas precisar antes corrigir defeitos
  • Interior caótico: Tecnologia desatualizada, grande variedade de projetos, arquitetura quebrada, processo fraco, etc.
  • Falta de competência e capacidade: Desenvolvedores-chave/arquitetos deixaram o produto, ou partiram para outros projetos em frente, indisposição para a competição
  • Desenvolvimento específico-do-cliente: Bases de código/ramificações específicas do cliente, formato de dados, equipes especiais
  • Correções de emergência: Frequentes ações de 'Combate a incêndio'

Normalmente, as aplicações que estão em funcionamento há mais de uma década requerem consideração séria para a analisar a necessidade de transmigração.

Para resumir, uma aplicação se qualifica para a transmigração quando todas as partes interessadas - interna ou externamente - sentem genuinamente que "Muito precisa ser feito, mas ainda assim a aplicação precisa ser preservada!"

O que muda? O que não muda?

Dar uma nova vida não é apenas reescrever uma aplicação antiga. Uma aplicação precisa ter um novo formato sem perder seu núcleo.

É necessário preservar o objetivo principal, a ideologia desejada, propriedade intelectual e 'conexão do usuário' de uma aplicação existente. Freqüentemente, as aplicações precisam obter recursos adicionais significativos, preservando a maioria dos existentes. É importante preservar a enorme quantidade de dados gerados pela aplicação em seu formato existente!

No entanto, as aplicações exigem uma nova aparência, novas estratégias de controle, implantação, licenciamento, propriedade, interoperabilidade etc. Elas precisam de nova arquitetura, novas tecnologias e assim por diante.

Benefícios na transmigração de aplicações

Para as partes interessadas externas, os principais benefícios da transmigração podem ser resumidos como um impacto visível na efetividade e um salto significativo nos indicadores de desempenho.

Os benefícios para as partes interessadas internas incluem; arquitetura simplificada e extensível, uso das tecnologias mais recentes, melhor base de códigos de manutenção, etc. Muitos outros benefícios podem ser obtidos dependendo do que for adicionado.

Como fazer isso?

A tarefa de transmigração é sempre exclusiva, e precisa ser realizada de maneira sistemática. Requer uma análise completa de muitos aspectos do estado atual, bem como do estado de destino. Os métodos usados para implementar a transmigração de aplicativos serão discutidos em postagens futuras. Nós na Engenext Software Solutions somos especializados em lidar com esses desafios e temos um processo bem definido.


Engenext SoftwareEngenext Software Solutions é dedicada a soluções de software CAD/Engenharia. Construída em duas décadas de experiência e exposição a uma variedade de domínios, funções diversificadas, múltiplas geografias e plataformas de CAD, a empresa está confiante de que pode fornecer soluções de software inovadoras, abrangentes e eficazes.