Modernização de software

(Redirecionado de Modernização de Software)

A modernização de software ou de aplicações é uma prática corrente nas organizações, mas que nem sempre é assumida como tal. Os sistemas legados, ou legacy systems em Inglês, não têm que rodar em sistemas antigos, como o mainframe, isso é apenas uma parte do problema. [1].

Estratégias editar

Os projectos de modernização de aplicacional são geralmente projectos grandes e plurianuais. Por fazerem parte de sistemas críticos das empresas, a execução deste tipo de projecto tem um conjunto de riscos que têm impacto nas operações do negócio. A abordagem aparentemente mais comum é fazer modernizações incrementais. Em primeiro lugar, é frequente fazer apenas a substituição do sistema operativo (e do hardware), mantendo o código da aplicação inalterado. Após esta migração, pode dar-se continuidade à modernização de forma faseada, reduzindo progressivamente o código legado a favor do código convertido para a nova linguagem de programação. No final, o sistema estará totalmente convertido para a nova tecnologia, não devendo restar software com dependências de tecnologias legadas. A estratégia da migração é fundamental para determinar como é que o sistema continuará a suportar o negócio durante todo o esforço de migração e modernização [2].

A tomada de decisões neste domínio é um processo que ocorre num contexto organizacionl. As tomadas de decisão no "mundo real" das organizações comerciais têm que ser normalmente baseadas em "racionalidade limitada" (em Inglês Bounded_rationality) [3]. O princípio deste conceito é o balanceamenteo entre a informação disponível dentro e fora da organização, a capacidade cognitiva dos decisores e o tempo limite para a tomada de decisão.


Migração editar

A migração e/ou modernização das aplicações tem mais que ver com a actualização do software que é propriedade da organização, muitas vezes desenvolvido dentro de portas ao longo de vários anos e por diferentes programadores.

Podemos distinguir os seguintes casos:

  • A migração por mudança de plataforma (sistema operativo)
  • A conversão de uma linguagem de programação para outra
  • A desactivação de uma aplicação, mantendo imperativos de acesso aos dados
  • Reprogramação parcial ou total


A migração de software acontece frequentemente quando é preciso mudar de equipamento e de sistema operativo. Também se pode confundir com o acto de portar o código, que é a designação usada em ciências de computação para o processo de converter o código de um sistema operativo para outro. Acontece que, na generalidade dos projectos de migração, é necessário construir na nova plataforma as funcionalidades que a aplicação usava na antiga, como, por exemplo o sub-sistema de impressão ou o acesso à base de dados.

No caso das migrações de mainframe, VMS e Wang, continua a ser escolhida a opção de emulação. Há produtos no mercado que permitem que as aplicações acreditem que têm o mesmo sistema funcional do mainframe, como sejam as chamadas CICS e o processamento por lotes em JCL. É o caso do produto da empresa Clerity e haverá outros.


Referências

  1. Gardner, D: "Not just a nip and tuck, application modernization extends the lifecycle of legacy code assets”, [1] ZDNet, October 24, 2006
  2. Uma Abordagem para Migração Gradativa de Aplicações Legadas
  3. Simon’s Bounded Rationality. Origins and use in Economic Theory