Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
ada:howto:sicoferp:factory:softwareversioning:transitionalbranch [2021/06/16 13:31] 192.168.177.29 [Proceso de Generación Rama Transitoria] |
ada:howto:sicoferp:factory:softwareversioning:transitionalbranch [2021/08/05 13:11] (actual) administraidor [Proceso de Generación Rama Transitoria] |
||
---|---|---|---|
Línea 9: | Línea 9: | ||
|Moderado|Afecta la operación del cliente pero no de procesos reelevantes| | |Moderado|Afecta la operación del cliente pero no de procesos reelevantes| | ||
|Crítico|Afecta la operación de procesos reelevantes del cliente| | |Crítico|Afecta la operación de procesos reelevantes del cliente| | ||
+ | |||
+ | ==== Observación ==== | ||
+ | Los tipos de impacto deben ser utilizados para evaluar el tipo de afectación en los clientes. | ||
+ | |||
+ | ===== Tipos de Complejidad ===== | ||
+ | A continuación se listan los tipos de complejidad que deben ser considerados en las liberaciones de la rama transitoria. | ||
+ | |||
+ | ==== Complejidad: Baja ==== | ||
+ | Cambios sencillos o simples en el código como: | ||
+ | |||
+ | * Ajustes a columnas de (datawindows, entidades): Siempre y cuando la columna no modifique el agrupamiento de la consulta que genera el datawindow o entidad y la tabla exista previamente. | ||
+ | * Ajustes visuales en ventanas o formularios: Esto cubre ajustes de formato, agregar un campo oculto, ampliar tamaños. | ||
+ | * Ajustes a funcionalidades de [[#Tipos de Impacto|impacto leve]]. | ||
+ | |||
+ | ==== Complejidad: Media ==== | ||
+ | Cambios intemedios en el código como: | ||
+ | |||
+ | * Adición de fragmentos de código: Esto incluye validaciones, Reportes. | ||
+ | * Ajustes a funcionalidades de [[#Tipos de Impacto|impacto moderado]]. | ||
+ | |||
+ | ==== Complejidad: Alta ==== | ||
+ | Cambios grandes en el código como: | ||
+ | |||
+ | * Inclusión de nuevas funcionalidades. | ||
+ | * Ajustes a funcionalidades de [[#Tipos de Impacto|impacto crítico]]. | ||
+ | |||
+ | ==== Observación ==== | ||
+ | Los tipos de complejidad deben ser evaluados antes de enviar a QA. | ||
===== Condiciones ===== | ===== Condiciones ===== | ||
Línea 17: | Línea 45: | ||
* Autorización del Lider del Producto((La autorización debe estar registrada en el ticket antes de la actualización de la rama)). | * Autorización del Lider del Producto((La autorización debe estar registrada en el ticket antes de la actualización de la rama)). | ||
* Autorización del Jefe de Fábrica((La autorización debe estar registrada en el ticket antes de la actualización de la rama)). | * Autorización del Jefe de Fábrica((La autorización debe estar registrada en el ticket antes de la actualización de la rama)). | ||
+ | * Autorización del cliente: Se le debe indicar el impacto que puede generar esa actualización (retraso de otras liberaciones, errores en opciones, etc). | ||
===== Proceso de Generación Rama Transitoria ===== | ===== Proceso de Generación Rama Transitoria ===== | ||
Línea 22: | Línea 51: | ||
- **Solución a liberar**: Cumplir las [[#Condiciones|Condiciones]] de generación. | - **Solución a liberar**: Cumplir las [[#Condiciones|Condiciones]] de generación. | ||
- | - **Lider Configuración**: Generar el corte de versión de la rama **tags** (revert/update) y copiar la rama en el directorio **transi** | + | - **Lider Configuración**: Generar el corte de versión de la rama **tags** (revert/update) y copiar la rama en el directorio **transitoria**((Este directorio siempre estará en la raíz del módulo donde están las ramas branches, trunk y tags)) |
- | - **Calidad (QA)**: Copiar los artefactos de la solución a la rama **transi** y hacer el commit((Es el mismo proceso que se realiza cuando se hace el paso a producción copiando los artefactos a la rama tags)). | + | - **Calidad (QA)**: Bloquea la rama trunk completamente para evitar actualizaciones no controladas. |
- | - **Calidad (QA)**: Pasar el ticket y notificar a implantación sobre la situación de la liberación indicando los clientes que afecta la liberación. | + | - **Calidad (QA)**: Copiar los artefactos de la solución a la rama **transitoria** y hacer el commit((Es el mismo proceso que se realiza cuando se hace el paso a producción copiando los artefactos a la rama tags)). |
- | - **Implantación**: Hacer la liberación a los clientes relacionados y pasar de nuevo el ticket a calidad indicando la actividad de liberación realizada. | + | - **Calidad (QA)**: Pasar el ticket y notifica a implantación sobre la situación de la liberación indicando los clientes que afecta la liberación. Además crea un ticket interno y lo asocia al ticket original. |
- | - **Calidad (QA)**: Una vez es validada la solución en el ambiente de validación pasar el artefacto a tags. | + | - **Implantación**: Hace la liberación a los clientes relacionados y pasa el ticket al flujo normal de gestión. - |
+ | - **Calidad (QA)**: Una vez es validada la solución en el ambiente de validación pasar el artefacto a tags((Continua el proceso estandar de liberación a producción)). | ||
+ | - **Lider Configuración**: Una vez el cambio pasa a la rama **tags** el release de la rama **transitoria** será inactiva. | ||
===== Notas ===== | ===== Notas ===== | ||
- | * Solo se permite una rama transitoria por ticket. | + | * Toda liberacion transitoria (debe incluir/listar los objetos modificados). |
- | * Las liberaciones transitorias no son acumulativas es decir solo se puede realizar una por liberación, a menos que sea actualización del mismo artefacto. | + | * Solo aceptan liberaciones transitorias si el componente hace parte de la ruta crítica (Matriz de impacto). |
- | * Las liberaciones transitorias bloquean commit en la rama tags por lo tanto toda liberación transitoria debe ser validada antes de pasar cualquier otra solución a tags. | + | * Solo se permite una rama transitoria por módulo. |
+ | * Las liberaciones transitorias no son acumulativas es decir solo se puede realizar una por liberación (ticket), a menos que sea actualización del mismo artefacto. | ||
+ | * Las liberaciones transitorias bloquean commits en la rama tags y trunk por lo tanto toda liberación transitoria debe ser validada antes de pasar cualquier otra solución a tags. | ||
* El proceso de liberación transitoria se debe generar desde el flujo de calidad cuando un cliente o varios requieren liberación de una solución urgente que aún no ha sido completamente validada o tienen tickets de soluciones relacionadas pendientes. | * El proceso de liberación transitoria se debe generar desde el flujo de calidad cuando un cliente o varios requieren liberación de una solución urgente que aún no ha sido completamente validada o tienen tickets de soluciones relacionadas pendientes. | ||
* No se debe utilizar este mecanismo de liberación para cualquier liberación ya que el objetivo es permitir a los clientes la operación de sus procesos críticos o de valor. | * No se debe utilizar este mecanismo de liberación para cualquier liberación ya que el objetivo es permitir a los clientes la operación de sus procesos críticos o de valor. | ||
[[ada:howto:sicoferp:factory:softwareversioning|←Volver atras]] | [[ada:howto:sicoferp:factory:softwareversioning|←Volver atras]] |