2 de Maio de 2009

Testar ou não testar?

Arquivado sob: Informática, Engenharia e Desenvolvimento — Rafael @ 15:10

Desde que iniciei meus estudos na área da informática a engenharia de software sempre me pareceu um dos capítulos mais importantes. Infelizmente o que se vê na prática é que software, para alguns, é apenas um bom ganha pão.

Na segunda-feira passada participei de um dos processos de migração de sistema mais caóticos que já havia presenciado na “firma”. Não somente pela falta de informação que antecedeu a migração, mas também pela falta de senso com que a Diretoria conduziu tal processo.

O software migrado foi parte de um sistema de gestão de tecnologia proprietária, muito bem pago, mas precariamente testado. A migração foi feita a “toque de caixa”, por funcionários que pareciam não saber muito bem como a própria migração deveria ser feita e remotamente, a partir da base da empresa fornecedora, no Rio de Janeiro. Não que a visão de Copacabana seja um impecílio, mas…

Um dos sistemas foi testado com antecedência, mas testes em ambiente controlado não me servem. Nitidamente a empresa fornecedora não possui nem mesmo documentação adequada sobre a modelagem e configuração do sistema, tão pouco devem haver procedimentos básicos de testes de unidade ou integração, tão pouco testes de regressão.

Nitidamente, após a migração do sistema principal, iniciou-se o processo de “debugar” o software na melhor forma de desenvolvimento orientado à gambiarra: faça seu software, teste o básico com casos que você sabe que sempre funcionam e implante no cliente, pois ele encontrará seus erros mais graves e lhe reportará! Uma triste situação de desenvolvimento e uma vergonha para a engenharia de software!

Convém dizer que também não havia um plano de migração, tão pouco um plano de contingência caso algo errado pudesse acontecer. A dúvida da migração persiste 5 dias após realizada, ainda com os usuários encontrando erros, com clientes reclamando por funcionalidades que estão paradas e com o pessoal do desenvolvimento de sistemas procurando pelo backup do banco de dados, possivelmente para procurar dados originais - anteriores à migração - que foram provavelmente perdidos.

Mais uma vez perdemos a chance de fazer certo!

Tempero Verde | Software livre, management e outras pimentas para uma vida com mais sabor!