Mi jefe actualmente está tratando de aplicar algunos estándares de desarrollo a nuestro equipo, por lo que tuvimos una reunión ayer para discutir los estándares que en su mayoría iban bien hasta que ella mencionó:
- Todas las tablas de base de datos tendrán una columna CreatedDate y LastUpdatedDate, actualizada por disparadores.
En este punto, nuestro equipo sufrió un cisma de opinión; la mitad de nosotros cree que hacer esto en todas las mesas es una gran cantidad de trabajo con poco beneficio (trabajamos en proyectos de presupuesto fijo, por lo que cualquier costo proviene de las ganancias de nuestra empresa); La segunda mitad cree que ayudará con el apoyo de los proyectos.
Estoy firmemente en el antiguo campamento. Si bien aprecio que algunos casos externos causarían que las columnas adicionales mejoren la capacidad de soporte, en mi opinión, la cantidad de trabajo que se requeriría para agregar las columnas en primer lugar, así como el mantenimiento, nos obligaría a dedicar menos tiempo a más cosas importantes como pruebas de unidad o carga. Además, estoy bastante seguro de que estas columnas adicionales harán que sea más incómodo usar un ORM, teniendo en cuenta que usamos principalmente C # y Oracle, que no es muy feliz para ORM.
Entonces, mi pregunta es doble:
- ¿Estoy en el campamento correcto? No pretendo tener habilidades de base de datos de renombre mundial, por lo que esta podría ser una adición trivialmente fácil sin efectos secundarios adversos.
- ¿Cómo lidiaría con una situación en la que una reunión sobre estándares se convierte en un partido de escorias? ¿Cómo puedo realmente vender que este estándar no nos va a ayudar a largo plazo?