Ad esempio:
- Ho un ACL (access control list) con le chiavi nel database come
create_user
eallow_booking_for_past_dates
. Ogni voce ACL ha un nome metodo o funzione corrispondente nell'applicazione. - Ho diverse classi di 'controller' per un'applicazione web ognuna delle quali può avere uno o più riferimenti in una tabella 'pagine' nel database.
In entrambi i casi ogni volta che viene apportata una modifica all'applicazione, qualcuno deve ricordare di aggiornare il database e viceversa. L'aggiornamento dell'applicazione dopo una mod del database può essere relativamente privo di problemi denominando le chiavi in modo tale che possano essere facilmente individuate da search-replace. Trovare le istanze di un identificatore nel database può essere similmente indolore.
Tutto il resto di solito è contenuto completamente nell'applicazione (sottoclasse, file di configurazione, ecc.) o interamente nel database (chiavi primarie, chiavi esterne, indici, ecc.)
Come tenere traccia di questi identificatori che collegano i due domini?
Al momento disponiamo di un documento Word (di tutte le cose) con una tabella che descrive in modo preciso il nome della chiave, dove trovarlo e una descrizione di cosa sia. Questo sembra funzionare meglio del "commit to the application, crea la voce nel db e incrocia le dita per il futuro" approccio.