Il mio capo sta attualmente tentando di applicare alcuni standard di sviluppo al nostro team, quindi ieri abbiamo avuto un incontro per discutere degli standard che andavano per lo più fino a quando non l'ha cresciuta:
- Tutte le tabelle DB avranno una colonna CreatedDate e LastUpdatedDate, aggiornata dai trigger.
A questo punto la nostra squadra ha subito uno scisma di opinione; metà di noi pensa che fare questo su tutti i tavoli sia una grande quantità di lavoro con poco beneficio (lavoriamo su progetti a budget fisso, quindi ogni costo deriva dai profitti della nostra azienda); la seconda metà crede che aiuterà con il supporto dei progetti.
Sono fermamente nel vecchio campo. Sebbene apprezzi che alcuni casi esterni potrebbero causare colonne aggiuntive per migliorare la supportabilità, a mio avviso la quantità di lavoro necessaria per aggiungere le colonne in primo luogo, oltre alla manutenzione, ci farebbe trascorrere meno tempo in più cose importanti come Unit o Load-Testing. Inoltre, sono abbastanza sicuro che queste colonne aggiuntive renderebbero più difficile l'utilizzo di un ORM, tenendo presente che utilizziamo principalmente C # e Oracle, che non è molto ORM-felice per iniziare.
Quindi, la mia domanda è duplice:
- Sono nel campo giusto? Non pretendo di avere competenze di database di fama mondiale, quindi questa potrebbe essere un'aggiunta banalmente facile senza effetti collaterali negativi.
- In che modo affronteresti una situazione in cui un incontro sugli standard si trasforma in una partita scodinzolante? Come posso davvero vendere che questo standard non ci aiuterà a lungo termine?