138 views 4 mins

E se os softwares não fossem testados?

em Artigos
quinta-feira, 25 de fevereiro de 2021

Roberto de Carvalho (*)

Imagine que, por algum motivo, você precise chegar com urgência em um hospital.

Para isso, abre o aplicativo de transporte, solicita uma viagem e aguarda. Ao perceber a demasiada demora da plataforma em prestar o serviço, você decide realizar uma verificação e percebe que o motorista foi erroneamente direcionado para o outro lado da cidade. Este é um tipo de situação que ocorre quando softwares não são testados.

Agora, vamos supor que você tenha conseguido chegar ao hospital. Porém, logo de início repara uma movimentação diferenciada: altíssima concentração de pacientes nas salas de espera, médicos ansiosos andando pelos corredores, familiares muito nervosos e funcionários pedindo calma. O problema? Uma falha generalizada no sistema deixou os arquivos de todos os pacientes inacessíveis, forçando a interrupção de atividades no local. Que bom seria se o software tivesse sido testado, não é mesmo?!

Segundo o estudo The Cost of Poor Software Quality in the US: A 2020 Report, os últimos dois anos foram marcados pelas maiores falhas de software da história recente. Dentre os lapsos, ataques de ransomware e ataques de cibersegurança. De acordo com dados disponibilizados pela Fortinet, até setembro de 2020, só a América Latina e o Caribe sofreram 20 bilhões de tentativas de ciberataques.

No ano passado, segundo o relatório divulgado recentemente pelo Consortium for Information & Software Quality (CISQ), apenas nos Estados Unidos o custo total da má qualidade de software (CPSQ) foi de US$ 2,08 trilhões. Em conformidade com o estudo, entre as principais causas deste valor estão projetos mal sucedidos e as falhas operacionais de softwares.

Tais dados são resultados da carência de testes, seja na fase de concepção ou de manutenção dos sistemas. Nos últimos anos, o mundo pôde observar as consequências da exiguidade de testes de software ao acompanhar o caso das aeronaves fabricadas pela Rockwell Collins Aerospace que, por conta de uma falha de sistema, efetuavam curvas para o lado errado em aproximações perdidas.

Diante dos fatos apresentados, fica evidente que se os softwares não forem testados e os procedimentos forem tratados sem a devida importância e como processos dispensáveis, os prejuízos serão cada vez maiores e não apenas financeiros.

Uma observação que tenho feito, por meio de testes práticos, é que a implementação de cobertura mínima de testes automatizados nos primeiros 30 dias de trabalho permite que erros sejam encontrados mais rapidamente, evitando crises de produção ou processos.

Além disso, na Prime Control os clientes relatam que, em média, a ocorrência de Rollbacks cai de 33% para 10%. Isso interfere de forma direta e positiva nos gastos das empresas que reduzem a carga de retrabalho, economizando tempo e aumentando a produtividade das equipes.

De forma geral, o teste de software tem como objetivo garantir a qualidade do sistema. Além de auxiliar o alinhamento de expectativas iniciais com o que está sendo produzido, os testes de software são responsáveis pela localização de problemas, detecção de imperfeições de design e estabilidade do sistema, diminuindo significativamente potenciais riscos nas operações dos mais variados setores.

(*) – É Chief Revenue Officer da Prime Control (www.primecontrol.com.br).