
Achei muito interessante (cômico, se não fosse trágico) esse texto (http://www.codeanthem.com/blog/2010/05/signs-your-software-project-is-going-down/) sobre projetos de software. Por isso, fiz uma tradução livre do mesmo:
Como você sabe se seu projeto de software está indo por água abaixo?
- O desenvolvimento começou com cascata e, em seguida, assim que entrou em queda livre, a equipe começou a chamá-lo "qualquer coisa" ágil. Isso também é conhecido como ágil falso, ou "frÁGIL".
- Corrigir um bug sempre expõe outros bugs. O software está tão bugado que você não pode sequer chegar a certas partes sem esbarrar num problema. Não é tão ruim quanto causar seus próprios bugs, mesmo assim não é bom.
- Uma ou mais das tecnologias centrais deixou de ser suportada pelo fabricante antes mesmo do projeto começar. Melhor ainda se a linha de tecnologia foi totalmente interrompida.
- Você está utilizando PowerBuilder ou qualquer outra "ferramenta de desenvolvimento rápido" na qual o código tenha sido abstraía em checkboxes e drop downs. Bibliotecas, ferramentas e APIs são ótimas, mas estas ferramentas são como jogar Twister com o código.
- O líder tecnológico não sabe usar corretamente o e-mail ou navegador. Como alguém que não consegue nem mesmo usar o básico de software, pode conduzir adequadamente uma equipe de programadores?
- O Gerente de Projeto está escrevendo código e um desenvolvedor está gerenciando a equipe. Tenho visto isso com mais freqüência do que eu gostaria de admitir.
- Há mais pessoas de negócios ou de domínio do que na equipe de técnica. 1 programador + alta rotatividade + código grande + sistema crítico + enorme lista de bugs = sem problema?
- Há um conjunto de testes de um programador anterior, mas metade deles estão falhando ou não compilam. Para um divertimento extra, verifique se os erros relatados teriam sido evitados se o conjunto de testes fossem utilizados.
- Adicionar uma única linha de código requer várias linhas de comentário. Um comentário na linha indicando o motivo e o seu nome. Um comentário no topo do arquivo colocando o seu nome e data de atualização. Um por comit de arquivo, com a mensagem descritiva. Atualização no software de bug-tracking/PM. Etc, etc
- A frase "não é um bug, é uma característica" se aplica a maioria das características "do produto. "O sistema não foi projetado para isso"