A necessidade de modernização de software
Manutenção de software de negócios críticos, especialmente em grandes empresas é mais cara a cada ano. Correções de hacks, quentes e solicitações de recursos introduzidas a aplicação ao longo do tempo, muitas vezes processam o software praticamente inalterável. O custo (e risco) da introdução de novas funcionalidades podem ultrapassar o retorno esperado do investimento. As razões mais comuns incluem documentação pobre do sistema atual e alto custo de programadores sendo capaz de trabalhar com tecnologias legadas - como Powerbuilder ou clássico Visual Basic.
Como se preparar para o projeto de migração?
As seguintes métricas podem ser obtidas usando um conjunto de ferramentas à disposição do público:
Total linhas de código (que lhe dá uma idéia geral do tamanho do projeto),
Linhas de comentário (regras de negócios e engenharia análise é mais fácil para o código-fonte bem documentados inversa),
Duplicação de código (que geralmente refere-se a qualidade geral do código),
Número de janelas e controles no aplicativo (isto é especialmente importante quando GUI também está no escopo da migração deve ser redesenhado),
Número de métodos, eventos e propriedades de classe (descreve a complexidade do código)
Bibliotecas externas usadas na solução atual (relé de sistemas legados às vezes sobre diversos difícil substituir componentes),
Teste de cobertura de código (unidade de testes podem ser de grande ajuda quando se trata de análise de código por que representa o comportamento esperado do sistema atual).
Análise do estado atual do seu software pode ajudar na tomada de decisões de migração. Você deve mudar a tecnologia e criar uma aplicação totalmente nova? Quais são os recursos necessários? O trabalho de projeto pode ser executado internamente ou é necessário a ajuda externa? E finalmente, você pode simplesmente decidir manter a solução atual e melhorar apenas partes dele (por exemplo, a nova GUI com back-end atual, migrar o banco de dados para uma plataforma diferente, mais eficiente ou realizar algumas melhorias de usabilidade para o sistema atual).
Escolher que o parceiro certo é crucial para obter o projeto feito no tempo, no orçamento e utilizando a melhor abordagem possível. Metodologias ágeis e ciclo de vida de desenvolvimento de software moderno irão fornecer uma garantia melhor durante todo o processo e permitem para criar um sistema que não se tornará legado mesmo antes do lançamento final.
E se você não tem tempo para realizar a análise por si mesmo?
Você pode entrar em contato com casas de software especializada em modernização e migração de sistemas legados. Geralmente, eles serão mais do que feliz em ajudá-lo a analisar sua solução existente e vão lhe dar conselhos para escolher a estratégia certa.