/Desenvolvimento

voltar
/Desenvolvimento

Automação de Testes – Um caso de sucesso

PorAlexandre Bartie em

Este é um exemplo real de como uma organização deve estar aberta a ampliar seus custos operacionais, em troca de significativas vantagens no controle e agilidade de seus processos, permitindo gerenciar mais projetos e informações no longo prazo.

Neste exemplo, temos a área de TI de uma importante empresa brasileira, que possuía um gargalo operacional em seu processo de testes e homologação, mais exatamente nas suas máquinas de auto-atendimento (ATMs). O serviço mais rentável desta empresa era oferecer a integração de sua infra-estrutura disponível, ampliando a cobertura de auto-atendimento de seus clientes em locais e regiões que não era vantajoso manter uma infra-estrutura própria.

Porém, este sistema de auto-atendimento compartilhado agregava uma alta complexidade tecnológica, pois reproduzir todas as condições de operação das várias instituições financeiras num único software exigiria uma aplicação única que suportasse um número crescente de novas funcionalidades, aumentando riscos de falhas e não-conformidades nos serviços compartilhados.

Num contexto onde novos clientes e novas transações são incorporadas permanentemente, as modificações no código-fonte eram freqüentes, aumentando os riscos de erros durante o processo de implantação. Garantir a conformidade do sistema exigiria testar todas as transações, o que demandava prazos cada vez mais longos de homologação (+ de 20 dias). O atual processo de testes e homologação restringia diretamente a capacidade da TI em gerenciar mais complexidades de forma rápida e escalável, impedindo o crescimento da rede compartilhada de auto-atendimento.

A única forma de validar uma nova versão do sistema de auto-atendimento compartilhado era exercitando o maior número de funcionalidades, incluindo as pré-existentes, possibilitando comprovar quais transações estão ou não em conformidade com os requisitos contratados. Porém, todos os testes eram feitos diretamente na máquina ATM (passar o cartão, digitar a senha, sacar o dinheiro, retirar o comprovante), o que tornava a realização dos testes morosa e sujeita a erros.

Durante todo o período de homologação do sistema, existia uma contínua interação entre as áreas de homologação e desenvolvimento, pois os relatos de problemas geravam novas versões que necessitam ser reavaliadas, tornando mais frágil toda a dinâmica de validação do aplicativo, pois novos erros poderiam ser inseridos em transações anteriormente testadas.

Alocar mais profissionais não resolveria o problema, pois além da baixa produtividade da execução de testes manuais, seria necessário ampliar o número de ATM´s disponíveis e revisar toda a infra-estrutura disponível. Repensar completamente a forma de como os testes eram organizados e executados era a única saída para este gargalo organizacional.

Para viabilizar o crescimento de longo prazo da organização e estabelecer um processo de testes e homologação mais escalável, rápido e confiável, a área de Qualidade da TI estabeleceu uma nova arquitetura de testes e homologação baseada em simuladores de dispositivos físicos e ferramentas de automação de testes.

Com isto, a empresa poderia executar todos os tipos de testes e combinações de forma contínua, construir novos casos de testes e incorporá-los a um inventário de testes, executar todas as funcionalidades mapeadas, coletar evidências dos testes e compará-las a “baselines” já aprovados, identificando automaticamente todas as não-conformidades.

Apesar de a nova arquitetura de testes ser muito mais eficiente, ela traz uma carga de complexidade adicional que impacta diretamente no aumento dos custos operacionais do processo de testes e homologação. Foi necessário estabelecer um processo de testes totalmente automatizado e gerenciado por ferramentas, num ambiente controlado e de alta precisão, igual ao encontrado num ambiente industrial.

Antes, os testes eram executados manualmente por profissionais que necessitavam passar dias em pé, diante de máquinas para executar um número reduzido de casos de testes (400/dia). Agora, uma única pessoa conseguiria gerenciar facilmente 4.000 testes por dia, além de trabalhar com um processo totalmente controlado, padronizado e confiável. O prazo de homologação caiu pela metade e o nível de cobertura dos testes subiu para mais de 20 vezes.

Foram incorporados à estrutura operacional da TI novos elementos como simuladores e ferramentas de automação, que possuem custos de manutenção e licenciamento que encareceram a área de testes e homologação. Também foram necessários investimentos de consultoria para possibilitar incorporar conhecimentos e técnicas desconhecidas como automação e arquiteturas de testes baseadas em simuladores e processos automatizados.

Apesar de os custos totais tornarem-se mais altos, as inovações reduziram as restrições operacionais e deram um novo fôlego organizacional. Atingir este mesmo patamar de qualidade, empregando o modelo operacional de testes anterior, tornaria os custos proibitivos, inviabilizando sua implantação. Por isto, a melhor forma de avaliar os resultados de uma inovação é comparando os resultados alcançados analisando os custos unitários – ou seja, produzir um novo teste estava agora muito mais barato, o que permitiu à área ampliar em 20 vezes sua cobertura dos testes.

Este exemplo demonstra como as inovações podem acarretar no aumento dos custos operacionais, sendo necessário sempre avaliar as vantagens competitivas que a organização obterá com este investimento, atacando as principais restrições operacionais que comprometem a qualidade e desempenho dos serviços disponibilizados.

Também demonstra que aumentar custos operacionais não significa necessariamente ampliar o quadro de profissionais. Na verdade, as inovações buscam sempre aumentar a produtividade, através da implementação de ferramentas, técnicas e metodologias que ampliam a capacidade dos profissionais.

Aumentar o quadro de profissionais é apenas uma forma simplista de aumentar o volume de produção, colocando mais profissionais para executar mais atividades sem nenhum compromisso no aperfeiçoamento operacional.

Recomenda-se não ampliar o quadro de profissionais em ambientes com baixa produtividade, pois além de um péssimo negócio, premia as áreas com menor eficiência e penaliza as áreas que buscaram melhorar seu desempenho operacional. Este é um dos erros mais clássicos que podemos observar nas organizações e demonstra uma total ausência de mecanismos de controle e aferição do desempenho operacional.

Deixe um comentário! 1

1 comentário

Comentários

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Comentando como Anônimo

leia mais
Este projeto é mantido e patrocinado pelas empresas: