Pergunta

Eu estaria levando um novo projeto em breve. E eu estive pensando sobre o que são a infra-estrutura básica para um projeto de software. Estas são as coisas que eu acho que todo projeto deve ter:

convenções de estilo -Coding

-Naming convenções

projeto -Standard estrutura de diretório (por exemplo maven disposição dir padrão, etc)

Gestão -Projeto e acompanhamento de problemas (por exemplo, trac, redmine, etc)

servidor -Continuous Integração (por exemplo, hudson, controle de cruzeiro, etc)

Eu não tenho certeza se eu perdi alguma coisa. Alguém gostaria de acrescentar?

Nenhuma solução correta

Outras dicas

Como uma resposta preliminar, veja o teste de Joel: http://www.joelonsoftware.com/articles/fog0000000043.html

Apenas um aperitivo:

  1. Você usa controle de origem?
  2. Você pode fazer uma compilação em uma etapa?
  3. Você faz compilações diárias?
  4. Você tem um banco de dados bug?
  5. Você corrigir erros antes de escrever novo código?
  6. Você tem um cronograma de up-to-date?
  7. Você tem uma especificação?
  8. programadores
  9. têm condições de trabalho tranquilos?
  10. Você usa as melhores ferramentas de dinheiro pode comprar?
  11. Você tem testadores?
  12. Faça novos candidatos escrever código durante a sua entrevista?
  13. Você faz testes de usabilidade corredor?
  • sistema de controle de revisão (por ex. Subversão, CVS, git)

Além de seu Porei:

  • Estratégia de Teste Unidade
  • Estratégia de Teste de Integração
  • Processo Definido
  • Release (entrega) estratégia (como marcos, pacotes de trabalho e assim por diante)
  • controle ramificação estratégia Fonte
  • O que sobre a documentação - how '(comentários no código, especificações de alto nível), quando, montante, que
  • Como é que vai testar - testes unitários / aceitação / user
  • código de versão, alguns SVN / Git (ou é incluído no trac?)
  • papéis e responsabilidades da equipe - necessidade de ser feito em ocntext do seu projeto

A gestão do conhecimento é crucial. Como você já planeja usar wiki (como Trac ou Redmine ), você pode usá-lo para KM também.

O teste funcional é uma parte obrigatória de qualquer projeto. O teste de unidade é grande e ele funciona bem para projetos ágeis, mas o teste funcional ainda é necessário. Você precisa de pelo menos um plano de teste básico. Se você pretende ter vários projetos ou subprojetos um documento de estratégia de teste ou página wiki seria bom. Casos de Teste, Casos etc Aceitação de teste poderia ser impulsionada por suas histórias de usuários ou seus equivalentes, mas eles ainda têm de existir de alguma forma.

Eu jogaria um servidor de compartilhamento de arquivos na mistura também. Pensei controle de versão era tão básico, que eu não me incomodei mesmo para colocá-lo lá na lista. Mas é um bom controle de versão ponto.

Plano de Gerenciamento de Configuração. Você precisa ter uma abordagem documentada a seus fluxos de trabalho de desenvolvimento, como é que vai ser objecto de fusão entre o então, etc.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top