Sistemas antigos são grandes desafios no mundo da tecnologia, atrapalhando a eficiência e inovação nas empresas. Nesta entrevista, nossos ETs </extremamente talentosos > Maycon Zamunaro e Martin Pfeifer falam sobre a importância das estratégias de modernização destas infraestruturas_
1.Quais são os principais desafios que as organizações enfrentam ao lidar com sistemas legados?
Martin: É uma das coisas eu acho, das dificuldades que a gente tem de sistema legado, é a obsolescência tecnológica e também na dificuldade de integração com novas soluções. Por exemplo, o sistema é tão legado e arcaico que eu quero, por exemplo, fazer uma parceria, quero integrar com uma nova solução que vai agilizar, mas eu não consigo pôr as diversas dificuldades que vão surgindo. Tem a questão da manutenção, é muito custosa, por exemplo, quero desenvolver uma feature nova ou alguma coisa, só que como é algo tão legado, precisa de ter pessoas que entendam bem do que foi feito aquilo ali. Se a gente for colocar novas pessoas, acho que vai dar mais prejuízo do que benefício. E se uma pessoa sai desse projeto em si, se não tiver algo bem documentado e estruturado, enfim, é uma dor de cabeça imensa. Falta de suporte também. A questão de segurança, até para softwares modernos, a gente tem que atualizar sempre, sempre vai ter algum alguém que vai encontrar a vulnerabilidade que tem que atualizar. Imagina para sistema legado a dor que tem para poder fazer isso aí, é muito complexo.
Maycon: Tem a questão de fragilidade mesmo de sistema, de não adequação a compliances, de pessoas que vão evoluindo e a tecnologia não atende. Pegando o gancho também nessa questão do que o Martin falou de suporte, de manutenção, pode ser que essa tecnologia um pouco mais ultrapassada, se for, por exemplo, uma tecnologia que não é open source, que é proprietária, por exemplo, ela para de ter suporte, até determinada versão tem suporte, de outras para frente você não tem mais. Eu sempre costumo dizer que a tecnologia é o meio, não é o fim. Então você tem o negócio como o alvo e quando o negócio está sofrendo de alguma forma, é ali que você vai só olhar e falar, pera aí. E o que significa sofrer? É time to market. Talvez assim, para se fazer um deploy e criar uma nova feature, está muito custoso. Eu preciso acelerar isso, eu preciso ter um pipeline automatizado, eu preciso ter mais eficiência. Mas para fazer isso, eu preciso mudar minha arquitetura, porque hoje ela não atende, ou o framework, ou o jeito que está descrito, ou a limitação.
E aí essa até questão de quando você fala de escalar, você conseguir paralelizar times. Então eu preciso dar mais vazão, não é só na facilidade da arquitetura ou da tecnologia, mas é na linha também de você conseguir colocar mais pessoas trabalhando na mesma coisa sem interferir na outra, com independência. O que não acontece normalmente num legado. E esse paralelismo para escalar, para trazer velocidade, para trazer eficiência também é uma dor que o legado normalmente ele não permite.
2.Como sistemas legados impactam a agilidade e a capacidade de inovação das empresas? Quais tecnologias emergentes estão influenciando as decisões de modernização de sistemas legados?
Maycon: Essa questão, por exemplo, uma tecnologia ou arquitetura que não permite esse paralelismo. O jeito que está construindo, que pode não permitir que você tenha essa velocidade de esteira de desenvolvimento e de de aportar novas funcionalidades. A eficiência de fato de ponta a ponta nessa cadeia de desenvolvimento.
E no fim, o que acontece? Ela não consegue andar com a estratégia do negócio, então ela acaba te limitando. O negócio fica refém da tecnologia e não o negócio direcionando a tecnologia.
Martin: Uma das coisas também é a questão sobre a resiliência. O software legado não é resiliente. Não é tolerante a falhas. Tem muitos desafios também sobre práticas ágeis, quando a gente vai adotar, por exemplo, a entrega continua. Por exemplo, eu quero fazer uma entrega independente se é sexta-feira, se é segunda, se é terça. Porque muitas vezes quando o software é legado e tem estrutura não moderna, geralmente coloca aquelas frases lá “estamos em manutenção” porque está subindo uma feature nova. E quando temos uma arquitetura moderna em si, a gente já consegue ter zero risco de downtime, fazer uma entrega consciente sem ter nenhum impacto para o usuário final. Isso é um dos impactos que a empresa, a organização sofre muito quando se tem um software legado. É, questão de inovação, né?
Maycon: Uma tecnologia não tão emergente assim, mas acho que a uma que deu um boom é a questão de cloud, foi uma das tecnologias que impactou absurdamente nessa questão de evolução dentro dessa arquitetura de eficiência, de resiliência, de escalabilidade, disponibilidade. Então, assim, essa questão de nuvem, de cloud e a evolução disso com certeza influência absurdamente.
E acho que é o mais recentemente, a questão da inteligência artificial com certeza dentro disso são novas possibilidades e já está influenciando bastante em cima disso.
3.Quais são os riscos associados à não modernização de sistemas legados? Como esses riscos podem impactar a organização?
Martin: A obsolescência, ou seja, as coisas ficarem bem obsoletas e não poder atualizar, pra um pacote ou uma libe nova ou alguma coisa, porque se não pode impactar as outras coisas que já existem.
Maycon: Na verdade, no fim, é a questão do Time to Market, perda de competitividade. É você não conseguir dar tração ao seu negócio. Eu acho que essa questão de você usar tecnologia e ela começar a te limitar, acho, é você ficar pra trás do seu negócio. Enfim, se a arquitetura não anda, você não consegue responder ao negócio. Então, acho que esse é o maior risco, é você começar a perder o time, de evoluir o seu negócio e perder competitividade. E aí, como consequência disso também, tem a questão de custo, que tem a ver com a questão de eficiência. Porque tem uma ineficiência operacional muito grande, gera muito overhead em todos os níveis e etapas, quando você tem um sistema legado, ele é altamente dependente, acoplado e tudo é muito doloroso, tudo é muito custoso. O que gera maior custo pra estrutura.
Dentro da questão de segurança, tem a marca, o que influencia numa marca um ataque, uma fraude, uma exposição, um erro.
4.Quais são os principais fatores que uma organização deve considerar ao decidir entre modernizar um sistema legado ou substituí-lo por uma solução totalmente nova?
Maycon: O que eu acho que é a questão de integração e compatibilidade. Idealmente A análise é complexa, mas eu acho que tem que ser assim. Você tem uma solução daquele jeito, que vai se sustentando e você vai construindo, de forma focada, e que está alinhado com o negócio, que seja mais adaptável, pensando que a estratégia do negócio pode mudar. Então acho que um dos grandes fatores para se considerar é o seguinte, colocando o negócio como principal ponto.
O que eu tenho? Eu consigo adaptar e vai conseguir atender os requisitos do meu negócio de hoje e para frente? Sim ou não? Não. Então assim, assim, mantendo o que está e começa a construir. Tem que ver também questões obviamente relacionadas a custos. Custa é uma coisa que tem que ser projetada. Quanto custa hoje? Quanto que vai custar amanhã? Só que o custo não é assim “quanto que custa para desenvolver?”, “quanto que custa se eu não desenvolver também?” Pensando no negócio, porque eu posso chegar no ponto que trave esse negócio. Tudo tem que ser baseado em fatos e dados. Se É meio que você ter uma casa alugada e está reformando-a, entendeu?
Martin: Se a gente muda o que já existe, a gente vai começar a ter mais dor de cabeça do que benefício. Eu creio que a solução mais plausível seria mesmo criar algo novo, ter total conhecimento baseado em dados e outras coisas sobre o negócio em si, e ir criando API’s novas, micro serviços, um processo de entrega contínua. E eu acho que esses são os fatores que, além de considerar o custo, tem a questão da interoperabilidade com outros sistemas.
5.Quais são as vantagens mais significativas de modernizar sistemas legados em comparação com a manutenção contínua desses sistemas?
Maycon: Eficiência, escala, maior segurança, tudo que é dor, vira um pro. E eu acho que um ponto interessante é a questão de data driven, facilita muito a questão de consumo, análise de dados, trazer isso para se tomar decisão, quando você consegue integrar tudo, gerar visões, ter maior informação de qualidade.
Martin: Para complementar, teria a questão de sobre a tomação das aplicações, uma questão de integração continua, entrega continua. Isso cresceu muito na modernização. A questão também do envolvimento com o usuário, para fazer teste AB, você não vai fazer um teste AB num software legado. É muito complicado se fazer.
E principalmente para soluções novas, negócios novos, quando estamos testando uma feature nova, é mais tranquilo de fazer para softwares mais modernos, soluções modernas.
Aqui na Invillia, nós estamos sempre em busca das melhores respostas para as nossas próximas inovações.
Conheça nossa forma de revolucionar: www.invillia.ai/ggf