segunda-feira, 7 de setembro de 2009

Falta de Atenção e Excesso de Confiança

Diariamente procuramos sempre achar soluções e mais soluções para tentar resolver ou minimizar os problemas que temos no processo de desenvolvimento de software.

Apesar de existirem modelos de qualidade de software que apresentam uma série de diretrizes para resolver estes problemas, hoje gostaria de abordar aspectos bem pontuais e que fazem uma diferença significativa no processo de desenvolvimento de software: a falta de atenção e o excesso de confiança. Esta combinação junta é literalmente fatal no processo de desenvolvimento de software.

Na última semana, realizei uma capacitação de um dos softwares que trabalho. Apesar de termos um bom processo de desenvolvimento enfrentei algumas dificuldades, dentre elas:

- Versões anteriores do software não eram atualizadas automaticamente: problema gerado porque mudaram um script do processo de instalação do software;

- Determinado relatório simplesmente não era impresso, ocorrendo um erro no seu processamento;

- Outros relatórios exigiam que os parâmetros de entrada fossem preenchidos, mas não fazia nenhum tratamento ou apresentava alguma característica visual que deixasse claro que era necessário preencher seus valores antes de emitir os relatórios;

- Uma DLL (biblioteca) que contém 30% dos recursos do software ao ser acessada gerava uma exceção do tipo “Operação Ilegal”. Isto ocorreu porque um simples arquivo de código-fonte foi versionado incorretamente. Logo, ao compilar a biblioteca usava uma versão incorreta de fonte;

Modificaram scripts do banco de dados, sem testar, porque estavam confiantes que não ocorreria problema.

Implementaram um recurso que coletava uma informação para apresentar num determinado relatório, mas nem sempre a informação existia e não fizeram o devido tratamento condicional neste caso, gerando a exceção e impedindo que determinado relatório fosse gerado.

Foi atribuída a versão incorreta para um código-fonte, o que comprometeu a geração da versão.

Todos estes problemas foram gerados simplesmente por falta de atenção ou excesso de confiança. Como citei, esta combinação de fatores é fatal na geração de um software.

Por mais que se tente trabalhar esta questão ela sempre ocorre. O pessoal da equipe de desenvolvimento ganha confiança no trabalho e quando menos se espera um problema destes ocorre.

O que podemos fazer para evitar este problema? Eu tenho algumas sugestões:

- Padronizar processos de codificação e versionamento de código-fonte;

- Padronizar o processo de desenvolvimento e teste de software: nenhum recurso, por mais simples que seja, pode ser liberado sem ser testado pela equipe de Testes de Software;

- Disciplinar a equipe para seguir adequadamente o processo de desenvolvimento e testes, limitando problemas por falta de atenção;

- Orientar a equipe para evitar falta de atenção e combinar medidas disciplinares caso divergências sejam liberadas deliberadamente em virtude da falta de atenção;

É importante trabalharmos medidas que minimizem este tipo de divergência. Na prática, problemas causados por falta de atenção ou excesso de confiança são os mais comuns que resultam em bugs no ambiente do cliente.

Nenhum comentário:

Postar um comentário