Saya memiliki sejumlah aplikasi yang berbagi data yang sama di database yang sama. Untuk mencoba dan meminimalkan redundansi kode, Layer Akses Data adalah proyek bersama. Ini mencegah setiap proyek dari perlu kode ulang akses data itu sendiri, tetapi ini juga menciptakan titik sakit yang besar. Ketika satu tim perlu memperbarui lapisan data, semua tim lain harus menarik dan menguji perubahan untuk memastikan bahwa mereka tidak merusak apa pun dan ini adalah proses yang lambat dan menyakitkan.
Saya telah memikirkan ide untuk menghapus lapisan data bersama dan hanya meminta masing-masing tim mengelola lapisan data mereka sendiri tetapi masalahnya adalah semua tim masih mengakses database yang sama sehingga jika ada perubahan tabel titik nyeri masih ada karena setiap tim perlu perbarui kode yang relevan.
Jadi pertanyaan saya adalah, bagaimana saya bisa mendesain data dan lapisan akses kami sedemikian rupa sehingga banyak proyek diusir dari sumber data yang sama, dan meminimalkan rasa sakit karena membuat perubahan pada database atau lapisan akses?