Depois de elaborar um projeto, ele pode exigir muitos ajustes e alterações para que ele funcione corretamente ...
O que posso fazer para evitar isso?
Existe uma regra simples, que eu aplico o tempo todo, porque também sou perfeccionista. E o perfeccionismo leva você à mediocridade.
Defina um prazo. Navio nesse prazo.
Para evitar que o seu software de ter um unfishined estado de recurso que irá torná-lo inutilizável faltando, use esta definição de feito para cada recurso que você produz. Não inicie o próximo recurso até que TODAS as etapas sejam concluídas:
Presumo que você possa criar uma versão com um clique do mouse (usando scripts de construção)
Antes de dar minha resposta (ou sugestão de uma resposta, na verdade), devo dizer que não tenho muita experiência em grandes projetos e apenas declararei o que li e acredito ser uma das causas. Posso muito bem estar errado, mas provavelmente terei aprendido algo com todos os comentários que receberei. ^^
Um fator importante, acredito, não é deixar seu código se deteriorar à medida que o projeto está em andamento. Isso pode ser evitado de várias maneiras, das quais conheço apenas algumas:
Não espere muito tempo com a refatoração: a refatoração leva algum tempo, mas vale a pena não ter que fazer chamadas de função complicadas apenas porque você não se preocupou em reescrever o código para permitir esse parâmetro extra. Um código mais intuitivo e menos duplicado reduz o número de bugs.
Corrija a janela quebrada: No Programador Pragmático , li sobre um fenômeno conhecido como janela quebrada. Os autores argumentam que o código começará a se deteriorar da mesma maneira que um edifício se deteriora: começa com uma janela quebrada. No código, isso significa correções feias, nomeação de variáveis, funções; em geral, apenas código ruim. Eu descobri que isso é verdadeiro: eu codigo melhor e fico mais feliz com a codificação quando minha base de código é sólida. Se houver muitas janelas quebradas, geralmente não sinto vontade de escrever um bom código. Portanto, se você vir uma janela quebrada, corrija-a o mais rápido possível; refatorar se for necessário. Isso levará a menos erros e ajustes desnecessários.
E não se esqueça de ler a resposta de Pierre 303 .
O que é "demais" ajustes e mudanças? A manutenção do software pode levar muito mais tempo do que o desenvolvimento inicial do software. Não há nada de errado nisso. Para se manter organizado, use um rastreador de problemas .
Independentemente disso, é claro que você deseja inicialmente torná-lo o melhor possível. Para isso, nada supera o teste .