Para darle un poco de historia: trabajo para una empresa con aproximadamente doce desarrolladores de Ruby on Rails (pasantes +/-). El trabajo remoto es común. Nuestro producto está hecho de dos partes: un núcleo bastante grueso y delgado para proyectos de grandes clientes basados en él. Los proyectos de los clientes suelen ampliar el núcleo. La sobrescritura de características clave no ocurre. Podría agregar que el núcleo tiene algunas partes bastante malas que necesitan urgentemente refactorizaciones. Hay especificaciones, pero principalmente para los proyectos del cliente. La peor parte del núcleo no se ha probado (no como debería ser ...).
Los desarrolladores se dividen en dos equipos, trabajando con uno o dos PO para cada sprint. Por lo general, un proyecto de cliente está estrictamente asociado con uno de los equipos y OP.
Ahora nuestro problema: con bastante frecuencia, rompemos las cosas del otro. Alguien del Equipo A expande o refactoriza la característica central Y, causando errores inesperados para uno de los proyectos de clientes del Equipo B. En su mayoría, los cambios no se anuncian en los equipos, por lo que los errores casi siempre son inesperados. El equipo B, incluido el PO, pensó que la característica Y era estable y no la probó antes de su lanzamiento, sin darse cuenta de los cambios.
¿Cómo deshacerse de esos problemas? ¿Qué tipo de 'técnica de anuncio' me puede recomendar?