Untuk memberi Anda sedikit latar belakang: Saya bekerja untuk sebuah perusahaan dengan sekitar dua belas pengembang Ruby on Rails (+/- interns). Pekerjaan jarak jauh adalah hal biasa. Produk kami terbuat dari dua bagian: inti yang agak gemuk, dan menipis ke proyek pelanggan besar yang dibangun di atasnya. Proyek pelanggan biasanya memperluas inti. Timpa fitur utama tidak terjadi. Saya dapat menambahkan bahwa inti memiliki beberapa bagian yang agak buruk yang membutuhkan refactoring. Ada spesifikasi, tetapi sebagian besar untuk proyek pelanggan. Bagian terburuk dari inti tidak diuji (tidak seperti yang seharusnya ...).
Pengembang dibagi menjadi dua tim, bekerja dengan satu atau dua PO untuk setiap sprint. Biasanya, satu proyek pelanggan secara ketat dikaitkan dengan salah satu tim dan PO.
Sekarang masalah kita: Lebih sering, kita saling menghancurkan barang. Seseorang dari Tim A memperluas atau refaktor fitur inti Y, menyebabkan kesalahan tak terduga untuk salah satu proyek pelanggan Tim B. Sebagian besar, perubahan tidak diumumkan pada tim, sehingga bug yang terjadi hampir selalu tidak terduga. Tim B, termasuk PO, berpikir tentang fitur Y menjadi stabil dan tidak mengujinya sebelum melepaskan, tidak menyadari perubahan.
Bagaimana cara mengatasi masalah tersebut? 'Teknik pengumuman' seperti apa yang bisa Anda rekomendasikan kepada saya?