Herramientas de usuario

Herramientas del sitio


ada:howto:sicoferp:factory:softwareversioning:transitionalbranch

Fabrica: Versionamiento de Software - Rama de Liberación a Producción Transitoria

Es una rama temporal que se define para pasos a producción criticos que aún no han sido validados al 100% por calidad o tienen tickets relacionados que no han sido probados y tienen impacto leve o moderado en los clientes que requieren la liberación.

Tipos de Impacto

A continuación se listan los tipos de impacto que deben ser considerados en las liberaciones de la rama transitoria.

ImpactoDescripción
LeveNo afecta la operación de procesos del cliente
ModeradoAfecta la operación del cliente pero no de procesos reelevantes
CríticoAfecta 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 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 impacto moderado.

Complejidad: Alta

Cambios grandes en el código como:

  • Inclusión de nuevas funcionalidades.
  • Ajustes a funcionalidades de impacto crítico.

Observación

Los tipos de complejidad deben ser evaluados antes de enviar a QA.

Condiciones

A continuación se listan las condiciones previas que se deben cumplir para optar por la utilización de la rama transitoria.

  • La solución a liberar y/o soluciones vinculadas1) aun no han sido validada(s) por calidad en su totalidad y se requiere liberación urgente en el cliente porque se está parando la operación critica2).
  • Las soluciones vinculadas3) tienen impacto Leve o Moderado en los clientes que se realizará la liberación. Para estó se deben contar con la revisión del lider técnico del módulo.
  • Autorización del Lider del Producto4).
  • Autorización del Jefe de Fábrica5).
  • 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

A continuación se describe el proceso de generación de la rama transitoria:

  1. Solución a liberar: Cumplir las Condiciones de generación.
  2. Lider Configuración: Generar el corte de versión de la rama tags (revert/update) y copiar la rama en el directorio transitoria6)
  3. Calidad (QA): Bloquea la rama trunk completamente para evitar actualizaciones no controladas.
  4. Calidad (QA): Copiar los artefactos de la solución a la rama transitoria y hacer el commit7).
  5. 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.
  6. Implantación: Hace la liberación a los clientes relacionados y pasa el ticket al flujo normal de gestión. -
  7. Calidad (QA): Una vez es validada la solución en el ambiente de validación pasar el artefacto a tags8).
  8. Lider Configuración: Una vez el cambio pasa a la rama tags el release de la rama transitoria será inactiva.

Notas

  • Toda liberacion transitoria (debe incluir/listar los objetos modificados).
  • 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.

←Volver atras

1) , 3)
Tickets asociados
2)
Procesos que generan valor agregado como Facturación y/o Recaudo, Nómina, etc
4) , 5)
La autorización debe estar registrada en el ticket antes de la actualización de la rama
6)
Este directorio siempre estará en la raíz del módulo donde están las ramas branches, trunk y tags
7)
Es el mismo proceso que se realiza cuando se hace el paso a producción copiando los artefactos a la rama tags
8)
Continua el proceso estandar de liberación a producción
ada/howto/sicoferp/factory/softwareversioning/transitionalbranch.txt · Última modificación: 2021/08/05 13:11 por administraidor