Um Ihnen einen kleinen Hintergrund zu geben: Ich arbeite für ein Unternehmen mit ungefähr zwölf Ruby on Rails-Entwicklern (+/- Praktikanten). Fernarbeit ist weit verbreitet. Unser Produkt besteht aus zwei Teilen: einem ziemlich dicken Kern und einem dünnen bis zu großen Kundenprojekten, die darauf aufbauen. Kundenprojekte erweitern in der Regel den Kern. Das Überschreiben der wichtigsten Funktionen findet nicht statt. Ich könnte hinzufügen, dass der Kern einige ziemlich schlechte Teile hat, die dringend überarbeitet werden müssen. Es gibt Spezifikationen, aber hauptsächlich für Kundenprojekte. Der schlechteste Teil des Kerns ist ungetestet (nicht so, wie es sein sollte ...).
Die Entwickler sind in zwei Teams aufgeteilt, die für jeden Sprint mit einer oder zwei PO arbeiten. Normalerweise ist ein Kundenprojekt streng mit einem der Teams und POs verbunden.
Jetzt unser Problem: Ziemlich oft brechen wir uns gegenseitig auf. Jemand von Team A erweitert oder überarbeitet das Kernfeature Y, was zu unerwarteten Fehlern bei einem der Kundenprojekte von Team B führt. Meistens werden die Änderungen nicht über die Teams bekannt gegeben, so dass die Bugs fast immer unerwartet auftauchen. Team B, einschließlich der PO, hielt Feature Y für stabil und testete es nicht, bevor es freigegeben wurde, da die Änderungen nicht bekannt waren.
Wie diese Probleme loswerden? Welche Art von Ansagetechnik können Sie mir empfehlen?