# Proceso de cambios con consecuencias
Para los cambios que entran en la definición de cambio con consecuencias, se debe seguir el siguiente proceso:
- Proponga un cambio de producto al Mojaloop Product Council:
- Cree una 'Product Change Proposal' en el repositorio del proyecto 'product-council' de GitHub,
aquí (opens new window).
- Complete la plantilla con el mayor detalle posible para asegurar una respuesta rápida.
- Envíe un mensaje al canal de slack #product-council (opens new window) pidiendo una revisión de su propuesta.
- El Product Council hablará con usted sobre su propuesta para entender dónde encaja dentro de la hoja de ruta del producto Mojaloop.
- Cree una 'Product Change Proposal' en el repositorio del proyecto 'product-council' de GitHub,
aquí (opens new window).
- Proponga cambios de código a la Mojaloop Design Authority:
- Cree un problema de tipo 'Consequential Change Proposal' en el repositorio del proyecto 'design-authority-project'
de GitHub, aquí (opens new window).
- Complete la plantilla con el mayor detalle posible para asegurar una respuesta rápida.
- Envíe un mensaje al canal de slack #design-authority (opens new window) pidiendo una revisión de su propuesta.
- La design authority asignará a uno o más miembros para trabajar con usted en su propuesta.
- Cree un problema de tipo 'Consequential Change Proposal' en el repositorio del proyecto 'design-authority-project'
de GitHub, aquí (opens new window).
- Participe en una revisión de diseño:
- El miembro o los miembros de la design authority que se le asignen le guiarán por un proceso iterativo de revisión de diseño.
- Una vez completado el proceso de revisión de diseño, puede continuar con su cambio.
- Implemente y revise sus cambios de código:
- Cree elementos de trabajo en github/zenhub y trabaje en ellos, dentro de su proceso de workstream, según sea necesario. Asegúrese de hacer referencia al ticket del product council y al ticket de la propuesta de cambio con consecuencias en las descripciones de sus elementos, para permitir la trazabilidad futura.
- Cuando esté listo para hacer pull requests en uno o varios repositorios de código, contacte con el miembro o los miembros de la design authority que se le hayan asignado y pídales que inicien la fase de revisión del código.
- Esté preparado para responder preguntas y hacer ajustes durante esta etapa.
- Una vez que el miembro o los miembros de la design authority asignados aprueben sus pull requests, su funcionalidad está lista para incluirse en el proceso oficial de versiones de Mojaloop.
- Todo cambio en el diseño que se haga durante la implementación debe registrarse en el ticket de la propuesta.

# Qué esperar durante el proceso de revisión de diseño
La Mojaloop Design Authority tiene la responsabilidad de asegurar que los riesgos se identifiquen y se mitiguen adecuadamente y que se respeten nuestros estándares establecidos de herramientas, patrones y prácticas. El miembro o los miembros de la design authority que se le asignen están ahí para ayudarle a lograr el mejor resultado posible para usted y para toda la comunidad de Mojaloop.
El miembro o los miembros de la design authority que se le asignen le ayudarán a identificar y mitigar cualquier riesgo que su cambio pueda introducir, además de hablar de cómo se alinea su diseño con las herramientas, los patrones y las prácticas establecidos.
- Se le pedirá que exponga los motivos de su cambio propuesto y que explique qué desea lograr y
cómo pretende lograrlo.
- Debería poder remitirse a un ticket de GitHub existente del Mojaloop Product Council que muestre que ha hablado de su trabajo con ellos y que están conformes con que se haga el cambio. Tenga en cuenta que el Product Council tiene la responsabilidad de mantener una hoja de ruta coherente para nuestra tecnología y le orientará sobre la forma más apropiada de lograr sus objetivos de negocio dentro del contexto de Mojaloop. El Product Council puede consultar a la Design Authority como parte de este proceso.
- Debería poder explicar cómo se implementará su cambio, qué componentes existentes se verán afectados,
cómo tienen que cambiar y sus diseños para cualquier componente nuevo. Debería presentar, como mínimo:
- Diagramas de secuencia UML que muestren cada componente significativo implicado en sus casos de uso y cómo interactúan para lograr los resultados que desea. Debería asegurarse de incluir los casos de error además de los comportamientos "normales" esperados.
- Todos los detalles de cualquier componente de terceros que vaya a usar como parte de su implementación.
- Todos los detalles de cualquier cambio en componentes existentes, destacando las diferencias entre los comportamientos actuales y los comportamientos modificados o nuevos que desea.
- Es probable que los miembros de la Design Authority que se le asignen hagan muchas preguntas para entender por completo su propuesta y su contexto.
- El miembro o los miembros de la design authority que se le asignen le ayudarán a identificar a cualquier otro contribuyente, equipo o parte interesada que pueda verse afectado, para incorporarlos al proceso de revisión. Esto se hace para asegurar que los comportamientos anteriores y posteriores no se vean afectados negativamente y también para tener en cuenta cualquier cambio próximo en otras áreas del sistema. Mojaloop es un sistema grande y a menudo resulta útil incorporar a expertos de otras áreas para ayudar.
- El objetivo principal del miembro o los miembros de la Design Authority que se le asignen es identificar y mitigar riesgos que usted quizá no haya
detectado.
- El miembro o los miembros de la design authority que se le asignen pueden hacer sugerencias para mitigar el riesgo de su diseño y pueden pedirle que haga cambios concretos para alinear su propuesta con las restricciones establecidas de Mojaloop.
