quinta-feira, 19 de julho de 2007

UMA LIÇÃO DE TESTES: VOO 3054 DA TAM


Artigo: UMA LIÇÃO DE TESTES: VÔO 3054 DA TAM (O Artigo que nâo queria escrever)
Autor: Leonardo Molinari

Texto:

1 - A lição

Este é um dos piores artigos que escrevo. Não pelo conteúdo, mas pelo fato de que ninguém gosta de falar de tragédias mas as vezes temos de encarar os fatos. Meu sentimento pelo acidente do vôo 3054 da TAM, ocorrido em 17 de julho de 2007 às 18h50min é o mesmo que o da maioria: surpresa e indignação, preocupação e fé, consciência e paciência.

Se, imaginando apenas, que o vôo 3054 fosse um sistema de informações a ser entregue, um sistema Web que seria disponibilizado ao público, o que poderiamos aprender de fato? Quais as essênciais lições que precisamos aprender? Não vou aqui discutir em detalhes. Vou apenas de forma simples listar que era para ser feito e não foi feito. O que deveria e que ao "não ser feito" aumentou o risco de acontecer algo. Aumentou a probabilidade do risco. Equivale a você não querer pegar um resfriado, andando sem camisa numa manhã de 5 ºC. Neste caso qual o risco de você apanhar uma simples gripe? Muita...

O sistema web imaginário batizado de 3054 aqui, não obedeceu a alguns procedimentos importantes:

  • As máquinas Web onde estão os servidores estão funcionando perfeitamente? Estão preparadas para receber o "pouso" do sistema Web?
  • Os servidores (o "aeroporto") estão sobrecarregados antes mesmo do sistema Web entrar no ar?
  • O firewall ("torre de controle") que protege os dados e outras partes do sistemas está devidamente configurados que evitar "intrusos"?
  • Os servidores possuem espaço em disco e em memória suficientes?
  • Os requisitos de instalação ("normas intercancionais") do sistema web confere com o que foi disponibilizado (real) para instalação do sistema em produção?
  • O sistema Web foi testado (o mais proximo possivel) em termos de performance (teste de desempenho) no ambiente que espelhasse a realidade?
  • Todos os requisitos funcionais e não funcionais foram testados antes do sistema entrar em produção?
  • Ao entrar em produção em produção o sistema Web foi testado de forma minima para verificar se o mesmo consegue "entrar no ar"?
  • As contingências ("segurança") para o sistema foram definidas e testadas de modo a ter certeza que se algo falhar socorrer ("bombeiros e ambulância")?
  • A segurança das informações dos usuários ou do negócio envolvido, está garantido com o sistema no ar ou não?
  • Todos os funcionários, consultores, analistas envolvidos estão capacitados e cientes de tudo que existe e deve ser feito ?
  • O sistema recebe manutenções periódicas de modo a acompanhar seu desempenho (ser pró-ativo)?

Pessoal, por mais que alguns tópicos acima não tenham a ver com testes de forma direta, mas devemos verificar de modo que o sistema web 3054 não falhe.

Um exemplo real foi o site da Xuxa que na época a alguns atras ao entrar no ar "travou" pois a sua performance não foi testada devidamente e os equipamentos não suportaram a demanda de usuários. Foram feitos ajustes e tudo foi resolvido na época.

O problema que algumas falhas custam caro, e outras não tem preço como a vida de 186 passageiros. Por isso é de grande importância que histórico de falhas e defeitos seja sempre acompanhado para evitar desastres no futuro...

2 - Fontes

  • MOLINARI, Leonardo. Gerência de Configuração - Técnicas e Práticas no Desenvolvimento do Software, Editora Visual Books, 2007, Florianópolis, 85-7502-210-5.

  • ___________. Gerência de Projetos - Técnicas e Práticas com Ênfase em Web, Editora Érica, 2004, São Paulo, 85-7194-0050.

  • ___________. Testes de Software - Produzindo Sistemas Melhores e Mais Confiáveis, Editora Érica, 2006, 3a Edição, São Paulo, 85-7194-959X.

  • STICKYMINDS. Site: http://www.stickyminds.com/. Acesso em 15 de julho de 2007.

  • O GLOBO. Site: http://oglobo.globo.com/rio/ancelmo/reporterdecrime/. Acesso em 19 de julho de 2007.

Nenhum comentário: