Qualidade de Software Brasil

O App e seu ciclo de vida não avançam sem Continuous Testing | Notícias

Um dos frutos do Cloud Computing e do império do software é a Continuous IT – TI Contínua. No coração dessa verdade estão aplicações missão crítica que não só não podem parar, mas não podem parar de mudar.

A Continuous IT retrata um mundo de Apps em contínua atualização, seja para corrigir códigos, seja para implementar novas funções que farão, desse sistema, um motor de inovação, fonte de novos negócios. Esse modelo de ciclo de vida das aplicações está no centro da transformação digital e enfrenta várias barreiras para se consolidar.

Uma das maiores dificuldades é implementar a cultura de Continuous Testing dessas aplicações fluidas e essenciais para os negócios.

Há sistemas de Internet Banking e plataformas ERP – sem falar do software que é o próprio negócio, caso da Netflix, do Uber, do Facebook – que são atualizados mais de dez vezes por dia. Com a fluidez da nuvem e o fato de as aplicações serem desenvolvidas simultaneamente ao redor do mundo, com “n” times de produtores de códigos trabalhando a partir de uma miríade de plataformas diferentes, o ritmo de produção de aplicações acelerou-se muito. Mas se esse software não for testado de forma automatizada, acompanhando todo o ciclo de vida da aplicação, o desastre será certo.

Uma pesquisa realizada pela Forrester com 2000 gestores de TI dos EUA, em 2018, mostra que somente 26% dos entrevistados já trabalhavam de acordo com as melhores práticas de Continuous Testing. O outro grupo seguia utilizando estratégias manuais e eventuais, não automatizadas, de Testing. O relatório deixa claro a cultura de negação de problemas nesta área: 80% dos entrevistados dizem contar com uma excelente política de Testing. Essa realidade é questionada pelo fato de somente 32% desses gestores dizerem sempre identificar e resolver problemas nas aplicações numa velocidade que evite impactos negativos sobre os negócios.

Para o Gartner, um quadro como esse explica que, até 2021, 30% das corporações estarão não só alinhadas com as melhores práticas de Continuous Testing, mas, também, usando tecnologias de Inteligência Artificial e Aprendizagem de Máquina para eliminar as falhas das aplicações missão crítica.

Há empresas que, graças à cultura de Continuous Testing de suas aplicações, alcançam sólidos resultados de negócios (dados de 2018, fonte portal DevOps, do Reino Unido):

· A Duke Energy economizou US$ 9 milhões no primeiro ano de adesão ao Continuous Testing; esse valor explica-se pela redução do downtime de aplicações críticas para os negócios, mas, também, por diminuir em 85% o tempo gasto com testes manuais de aplicações.

· A ExxonMobil economizou US$ 140 milhões e aumentou em 300% a produtividade de seu time de TI graças ao uso de soluções automatizadas de Continuous Testing.

Para atingir resultados como estes, é necessário atuar em duas frentes diferentes: a transformação da cultura de testes da área de TI (alinhamento com as melhores práticas em Continuous Testing) e a adoção de soluções de troubleshooting disponibilizadas no ambiente de testes e, igualmente, no ambiente de produção.

Para isso, deve-se replicar o ambiente de produção no ambiente de testes da maneira mais fiel possível.

Por exemplo: se na produção a aplicação esta protegida por um WAF (Web Application Firewall), no ambiente de testes também é essencial contar com um WAF dedicado a esse ambiente (per-app). 

É isso que garantirá que os dois ambientes contem com as mesmas políticas de segurança. Quem segue esse caminho reduz o time-to-market e custos de desenvolvimento e operação da aplicação.

O caminho do Continuous Testing passa, portanto, por soluções que entendem a aplicação e entendem a complexidade e os riscos do ambiente multinuvem ou on-premise. E, a partir daí, conseguem verificar, a cada fase do desenvolvimento até a produção, o quanto cada componente do sistema está realmente alinhado às normas de gestão e de segurança adotadas pela empresa. Isso acelera a identificação e a correção de problemas.

A meta não é só identificar quase que imediatamente que elemento desse gigante – a plataforma digital – contém o erro (encontrar o culpado).

Trata-se de atuar preventivamente para reforçar as melhores práticas de Continuous Testing de modo a eliminar o erro e, por consequência, seu impacto sobre o negócio. Isso pode ser feito por meio de um modelo de gestão que, adicionalmente, aumente a produtividade do time de TI. 

Na Continuous IT, processos manuais de testes não são mais uma opção. A aplicação é um “ser vivo” que encarna em si os diferenciais competitivos da empresa. Abraçar o Continuous Testing é o caminho a ser seguido para minimizar as perdas que a má experiência do usuário (UX) impõem. O alvo, aqui, é Continuous Quality.

* Ewerton Vieira é diretor de engenharia de vendas da F5 Networks América Latina

Reportagem original