Atualmente, estou escrevendo minha tese de doutorado. Passei uma fração significativa do meu doutorado limpando e estendendo o código científico existente, aplicando as práticas recomendadas de engenharia de software que não eram usadas anteriormente e gostaria de escrever sobre isso em minha tese. Em vez de simplesmente dizer "eu adicionei testes de unidade", quero poder escrever algo como isto:
J. Doe inventou testes de unidade em 1975 . Um estudo recente de Bloggs et al mostrou que os testes de unidade reduzem a incidência de erros de software em 73% ... 234 testes de unidade separados foram adicionados à base de código, gerenciados pela estrutura xUnit criada por Timpkins et al.[ 24 ] [ 25 ]
Estou procurando referências acadêmicas citáveis (de preferência artigos em jornais revisados por pares, onde posso obter DOIs, BibTeX etc.) para as melhores práticas de engenharia de software amplamente aceitas, especificamente:
- testes de unidade
- controle de versão
- modularização / separação de preocupações
- perfil / otimização de desempenho com base em informações de perfil
- rastreamento de bug / problema
Estou procurando informações sobre a invenção inicial e avaliações subseqüentes de eficácia. Se houver um artigo de revisão que lista todas essas coisas em um só lugar, tanto melhor.