Algumas práticas de desenvolvimento ineficazes foram escolhidas com tanta frequência, por tantas pessoas, com resultados tão previsíveis e ruins que merecem ser chamados de "erros clássicos" ...
Esta seção enumera três dezenas de erros clássicos. Eu pessoalmente vi cada um desses erros cometidos pelo menos uma vez e cometi muitos deles pessoalmente ...
O denominador comum nesta lista é que você não terá necessariamente um desenvolvimento rápido se evitar o erro, mas definitivamente obterá um desenvolvimento lento se não o evitar ...
Para facilitar a referência, a lista foi dividida de acordo com as dimensões da velocidade de desenvolvimento de pessoas, processos, produtos e tecnologias.
Pessoas
# 1: Motivação minada ...
# 2: Pessoal fraco ...
# 3: Funcionários com problemas não controlados ...
# 4: Heróico ...
# 5: Adicionando pessoas a um projeto atrasado ...
# 6: Escritórios barulhentos e lotados ...
# 7: Atrito entre desenvolvedores e clientes ...
# 8: Expectativas irrealistas ...
# 9: Falta de patrocínio eficaz do projeto ...
# 10: Falta de participação das partes interessadas ...
# 11: Falta de entrada do usuário ...
# 12: Política colocada sobre substância ...
# 13: Pensamentos ...
Processo
# 14: horários excessivamente otimistas ...
# 15: Gerenciamento insuficiente de riscos ...
# 16: Falha no contratante ...
# 17: planejamento insuficiente ...
# 18: Abandono do planejamento sob pressão ...
# 19: Perda de tempo durante o front end difuso. O "front end difuso" é o tempo antes do início do projeto, o tempo normalmente gasto no processo de aprovação e orçamento ...
# 20: Atividades upstream alteradas ... Também conhecido como "saltando para a codificação" ...
# 21: design inadequado ...
# 22: Garantia de qualidade em curto prazo ...
# 23: controles de gerenciamento insuficientes ...
# 24: Convergência prematura ou muito frequente. Pouco antes do lançamento programado de um produto, há um esforço para prepará-lo para lançamento - melhore o desempenho do produto, imprima a documentação final, incorpore os ganchos finais do sistema de ajuda, aprimore o programa de instalação, elimine a funcionalidade que não será pronto a tempo, e assim por diante ...
# 25: Omitindo tarefas necessárias das estimativas ...
# 26: Planejando recuperar o atraso mais tarde ...
# 27: Programação tipo código. Algumas organizações pensam que a codificação rápida, flexível e fácil de usar é um caminho para o desenvolvimento rápido ...
produtos
# 28: Requisitos de revestimento de ouro. Alguns projetos têm mais requisitos do que precisam desde o início ...
# 29: Característica ...
# 30: desenvolvedor de revestimento de ouro. Os desenvolvedores são fascinados por novas tecnologias e, às vezes, estão ansiosos para experimentar novos recursos ... - seja ou não necessário em seus produtos ...
# 31: Me empurre, me puxe a negociação ...
# 32: Desenvolvimento orientado para a pesquisa. Seymour Cray, o projetista dos supercomputadores Cray, diz que não tenta exceder os limites de engenharia em mais de duas áreas por vez, porque o risco de falha é muito alto (Gilb 1988). Muitos projetos de software podem aprender uma lição com Cray ...
Tecnologia
# 33: Síndrome da bala de prata ...
# 34: Economias superestimadas de novas ferramentas ou métodos ... Um caso especial de economia superestimada surge quando os projetos reutilizam o código de projetos anteriores ...
# 35: Trocando ferramentas no meio de um projeto ...
# 36: Falta de controle automatizado de código-fonte ...