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:12] 192.168.177.29 |
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** 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)) y pasar el ticket a implantación. | + | - **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 activdad de liberaió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 ===== | ||
| - | * Toda actualización debe estar soportada por un ticket en el otrs o el MantisBT. | + | * Toda liberacion transitoria (debe incluir/listar los objetos modificados). |
| - | * Toda actualización debe estar validada exitosamente por QA. | + | * Solo aceptan liberaciones transitorias si el componente hace parte de la ruta crítica (Matriz de impacto). |
| + | * 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. | ||
| + | * 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]] | ||