Meu chefe está atualmente tentando aplicar alguns padrões de desenvolvimento à nossa equipe, então tivemos uma reunião ontem para discutir os padrões que estavam indo muito bem até que ela falou:
- Todas as tabelas de banco de dados terão uma coluna CreatedDate e LastUpdatedDate, atualizada por gatilhos.
Nesse ponto, nossa equipe sofreu um cisma de opinião; metade de nós acha que fazer isso em todas as tabelas é uma grande quantidade de trabalho com pouco benefício (trabalhamos em projetos de orçamento fixo, para que qualquer custo provenha dos lucros de nossa empresa); a segunda metade acredita que ajudará no apoio aos projetos.
Estou firmemente no antigo campo. Embora eu aprecie que alguns casos externos façam com que as colunas extras melhorem o suporte, na minha opinião, a quantidade de trabalho necessária para adicionar as colunas em primeiro lugar, bem como a manutenção, nos levaria a gastar menos tempo em mais coisas importantes, como testes de unidade ou de carga. Além disso, tenho certeza de que essas colunas extras tornariam mais complicado o uso de um ORM - tendo em mente que usamos principalmente C # e Oracle, o que não é muito bom para ORM no início.
Então, minha pergunta é dupla:
- Estou no acampamento certo? Não pretendo ter habilidades de banco de dados de renome mundial; portanto, essa pode ser uma adição trivialmente fácil, sem efeitos colaterais adversos.
- Como você lidaria com uma situação em que uma reunião sobre padrões se transforma em uma disputa de escória? Como posso realmente vender que esse padrão não vai nos ajudar a longo prazo?