IBM: 10 razões pelas quais as empresas devem modernizar os aplicativos

IBM: 10 razões pelas quais as empresas devem modernizar os aplicativos 1

Por Niklas Heidloff, defensor do desenvolvedor IBM

Embora tecnologias de nuvem e modelos de programação modernos, como aplicativo nativo em nuvem, existam há vários anos, a maioria dos aplicativos de negócios ainda é executada no local e / ou usa pilhas clássicas e servidores de aplicativos.

Nem todos os aplicativos precisam, devem ou podem ser modernizados. No entanto, para muitas aplicações, isso faz muito sentido porque permite que as empresas reduzam custos, sejam mais ágeis e proporcionem melhores experiências ao usuário.

1. Reduza o uso de recursos

A maioria dos aplicativos de negócios é executada em máquinas virtuais. Em vez disso, executar os mesmos aplicativos em contêineres economiza muitos recursos, especialmente memória. Além disso, as plataformas de orquestração de contêineres podem equilibrar as cargas de trabalho muito melhor do que as máquinas virtuais. Da mesma forma, bibliotecas e ferramentas de desenvolvimento modernas podem economizar recursos. Um ótimo exemplo é o OpenJ9, que requer menos da metade da memória em comparação com outras JVMs. O uso de bibliotecas e contêineres modernos muitas vezes nem exige nenhuma alteração de código.

2. Reduza os custos de licenciamento

As ofertas de software comercial clássico têm taxas de licenciamento. Devido ao sucesso do código aberto, muitas dessas ofertas clássicas podem ser substituídas por software de código aberto para o qual, em muitos casos, também tem suporte comercial. Um bom exemplo é o WebSphere ND versus a versão de código aberto Open Liberty. Os projetos de código aberto também costumam ter comunidades fortes que fornecem suporte e reparos gratuitos.

3. Obtenha mais agilidade e tempo de lançamento no mercado mais rápido

As implantações de novas versões de aplicativos monolíticos costumam ser difíceis, demoradas e perigosas. Com contêineres e canais, entregas contínuas podem ser alcançadas para que as implantações possam ser feitas com mais frequência. Por exemplo, microsserviços permitem que você atualize partes separadas e CI / CD permite que você reverta para versões em execução em caso de problemas.

4. Permitir o desenvolvimento de novas funções mais importantes

Muitos aplicativos de negócios cresceram ao longo dos anos e foram desenvolvidos por pessoas diferentes, geralmente levando a dívidas técnicas. O débito técnico consome o orçamento para manter os aplicativos em execução e torna difícil desenvolver novas funções mais importantes. É por isso que faz sentido refatorar os aplicativos que devem escalar significativamente.

5. Execute aplicativos de missão crítica em uma plataforma preparada para o futuro

Em muitos casos, as empresas definiram e criaram estratégias em quais plataformas executar aplicativos essenciais aos negócios. Por exemplo, o OpenShift, a distribuição do Kubernetes, pode ser executado no local e em diferentes nuvens públicas, motivo pelo qual muitas empresas o escolheram como uma plataforma estratégica. A modernização de aplicativos para execução em OpenShift garante uma plataforma estável de longo prazo e suporte contínuo das equipes de operações.

6. Melhore a eficiência operacional

Quando todos os aplicativos de negócios são executados em plataformas de contêiner, como Kubernetes ou OpenShift, eles podem ser gerenciados de forma consistente. Tudo é um contêiner, não importa quais linguagens de programação e pilhas de aplicativos sejam usadas. Isso torna as operações mais fáceis. Mas, para ser justo, isso também requer mudanças organizacionais e culturais que levam tempo para serem estabelecidas.

7. Aumente a produtividade do desenvolvedor e aproveite a força de trabalho do desenvolvedor

Os contêineres aumentam a produtividade do desenvolvedor abordando o problema “funciona na minha máquina”. Além disso, a configuração dos ambientes de desenvolvimento é mais rápida. Como os desenvolvedores são mais produtivos, eles se divertem mais, o que significa que são mais motivados e eficientes. Por meio de containers, os aplicativos de negócios podem ser poliglotas, uma vez que diferentes serviços podem ser implementados em diferentes linguagens. Isso permite que os empregadores encontrem mais desenvolvedores, já que nem todos os desenvolvedores estão familiarizados com Java ou Cobol.

8. Melhore as experiências do usuário

Os usuários de aplicativos decidem se os aplicativos são bons ou não, portanto, boas experiências do usuário são fundamentais. Os aplicativos mais antigos costumam ter pontos fracos que podem ser resolvidos com tecnologias modernas. Por exemplo: novas interfaces de usuário, aplicativos móveis, APIs, tempos de resposta mais rápidos, resiliência e muito mais.

9. Lidar com aplicativos legados caros

Às vezes, os aplicativos legados ficam muito caros. Por exemplo, após o término do suporte oficial para as plataformas ou servidores usados ​​ou quando os desenvolvedores não puderem ser encontrados para manter o código. Em alguns casos, esses aplicativos podem estar desatualizados. Em outros casos, pode ser possível substituí-los por ofertas de SaaS. Por exemplo, um aplicativo de planejamento de férias de 20 anos pode ser substituído por vários SaaS ou ofertas de código aberto.

10. Mantenha os gerentes felizes

Este não é realmente um bom motivo, mas sim algo que ouvi dos desenvolvedores. Para certos aplicativos, não faz sentido modernizá-los. No entanto, para os desenvolvedores, isso significa ser capaz de aprender novas habilidades e quem não gosta disso? É por isso que estamos realizando o evento virtual “Build Smart son Kubernetes”, de 22 a 24 de junho em que compartilharemos oficinas práticas ao vivo e gratuitas em espanhol onde você poderá desenvolver as habilidades que precisa para acotovelar-se no mundo dos contêineres e desenvolvimento nativo na nuvem, da mão de nossos especialistas da IBM e Red Hat.

Inscreva-se aqui: developer.ibm.com/es/conferences/build-smart-on-kubernetes-latam/