Rodrigo Strauss :: Blog
Programando direito com o Slashdot
No Ask Slashdot de ontem, um slashdotter perguntou sobre como montar um padrão de desenvolvimento para um recém criado departamento de desenvolvimento de software. Como sempre, as respostas foram muito boas, recomendo a leitura. O que eu acho mais interessante é que ninguém recomenda RUP... :-)
E isso me faz lembrar de como muitas das coisas que foram respondidas lá são óbivias para todo mundo mas muita gente não faz. E esse muita gente inclui "eu mesmo" em alguns pontos...
Coisas obviamente necessárias para fazer um software que presta:
- Especificação. Simples. Alguns DOCs, nada muito complicado, mas que diga o que deve ser feito, como deve ser feito e porque deve ser feito assim.
- Comentário no código. Na minha opinião MAIS IMPORTANTE DO QUE A ESPECIFICAÇÃO, pelo fato de ser mais simples de escrever e estar mais ligado ao processo de desenvolvimento. Se você não comenta seu código, está errado, isso é essencial. Essencial. Essencial. for(;;) cout << "Essencial" << endl.
- Software de controle de bugs. Essencial também. Pode ser uma planilha Excel ou algo como o Bugzilla (que usamos aqui onde eu trabalho).
- Controle de versão. Eu espero mesmo que ninguém questione esse. O básico do básico. Pode ser um Source Safe (que funciona bem para projetos pequenos), CVS, SVN ou até um Preforce (dizem que é o melhor, US$ 800,00 por usuário).
- Testes. Uma equipe de testes ou testes unitários. Eu tenho o segundo. Como faço só software server-side e nem tudo está 100% orientado a objetos do jeito que deveria ser, faço softwares que agem como clientes e testam todas as possibilidades e fazem testes de stress. Isso é importante e reduz muito o stress de ter um cliente dizendo que seu software é uma porcaria porque você não testou uma situação de uso que, para ele, é básica.
- Build automático. É importante, mas muita gente não faz. Eu não fazia, até que compilar 10 dependências na mão começou a atrapalhar o meu trabalho. Alguns arquivos BAT resolvem o problema. Tenho feito meus últimos em Python. Se você usa .NET, estude o MSBuild.
Acho que esses são os básicos do básico. Não são muito difíceis de implementar e trazem um imenso retorno em curto prazo.
Em 17/11/2005 14:51, por Rodrigo Strauss





Muito bom, principalmente quanto a não-recomendação do RUP e o incentivo a especificações simples :)