Tabla de Contenidos

[SECCION EN REVISON] Fabrica: Versionamiento de Software - Proceso de liberación de versión

Esta sección está dedicada al Proceso de liberación de versiones de las aplicaciones de la fabrica de software.

Definiciones

Tener presente las siguientes definiciones para la contextualización del proceso:

TérminoDefinición (en el proceso)
ArtefactoSe define como los cambios que se realizan a las ramas de código y se pasan en el flujo de liberación de versión desde branches hasta tags.
branchesAmbiente para desarrollo y/o ajustes de código fuente de las aplicaciones de la compañía
trunkAmbiente para validación de las soluciones entregas por la fábrica de desarrollo.
preAmbiente transitorio donde se registran los cambios del siguiente corte de las versiones en mantenimiento y/o evolución.
tagsAmbiente que contiene las versiones estables

Aclaraciones Artefacto

Tener presente el significado de artefacto según las tecnologías que intervienen en los procesos de QA de la fabrica de software:

Proceso de Liberación de Versión

Gráfico de Referencia

Tener presente el siguiente gráfico de referencia para describir el proceso:

A continuación se describen los flujos de los roles de fabrica en el proceso de liberación de versiones. Sin embargo tener presente la siguientes consideraciones:

Consideraciones

Flujo de Liberación: Desarrolladores

  1. Para objetos (Clases) existentes, el desarrollador obtiene copia actualizada desde el repositorio branches y bloquea los que necesite para implementar la solución con el fin de evitar modificaciones concurrentes.
  2. Al finalizar el cambio se deben generar los documentos soporte de la solución los cuales son el F013_ING_Pruebas Unitarias y de Integración.V1.0, F014_ING_Despliegues Desarrollos.V1.1 y documenta la solución en la Wiki1).
  3. Se debe generar el artefacto de la solución el cual estará a cargo del desarrollador que asuma el rol de generador de artefacto.
  4. Al generar el artefacto, se debe bloquear en la rama branches2).
  5. Se debe copiar el artefacto generado a la rama QA (calidad).
  6. Posteriormente se debe documentar el ticket anexando los documentos requeridos por el proceso y pasar a la rama de calidad.

Consideraciones

Flujo de Liberación: Tester (QA) Validación de Soluciones

  1. Opcional: Si el ticket lo requiere desde el comité de cambio se hace el plan de pruebas para la validación de la solución.
  2. Al llegar un ticket a la cola de calidad, el Tester valida la documentación que lo sustenta F013_ING_Pruebas Unitarias y de Integración.V1.0, F014_ING_Despliegues Desarrollos.V1.1 y Wiki3) y verifica que el artefacto este confirmado en la rama de calidad.
  3. Al pasar la validaciones de documentación el artefacto es bloqueado por el Tester y se inicia el proceso de validación de la solución de acuerdo al plan de trabajo del área.
  4. Opcional: Si el ticket es de atención prioritaria debe estar respaldado por autorización del líder del producto y el jefe de fabrica.
  5. Si el artefacto no cumple con el alcance de la solución, se diligencia el formato F070_QA_Reporte_Issue_V1.0 el cual es anexado al ticket, se devuelve a la cola de desarrollo y el artefacto es devuelto de la rama de calidad.
  6. Si el artefacto cumple con el alcance de la solución, se diligencia el formato F069_QA_Informe_Final_QA_Ticket_V1.0, se adiciona el ticket al formato (transitorio) de liberación de versión F084_VV_Bugtracker_V1.0, se copia el artefacto a la rama pre y por último se desbloquea el artefacto de la de calidad.

Flujo de Liberación: Líder (QA) Liberación de Versión

Consideraciones previas

  1. De acuerdo al corte de versión (día, semana, mes) definida en el proceso, QA debe llevar por aplicación el control del commit inicial y final para la generación de la versión.
  2. El Tipo de actualización de la versión se define según la clasificación de los ticket revisados en el corte.
  3. Todos los commit de la versi´pn a liberar deben estar realizados en la rama pre.
  4. Sólo QA tiene acceso a la rama pre ya es de uso exclusivo del área.

Generación del corte de versión

  1. Verificar que los tickets que hagan parte del corte esten realizados en la rama pre.
  2. Copiar el artefacto de la rama pre a tags
  3. nombrar el artefacto con la numeración adecuada.
  4. Notificar a implantación con la información requerida del proceso.

Flujo de Liberación: Implantación

  1. Obtener la notificación de QA
  2. Actualizar repositorio
  3. (Opcional) Actualizar Script
  4. Realizar despliegue
  5. Registrar versión (entregada por QA) en la tabla Versión de SicofConfig
  6. Registrar versión en los parámetros del sistema del módulo.

Se deben realizar actualizaciones regulares, para garantizar que los clientes se encuentren operando la última versión del producto con las nuevas mejoras y soluciones de bugs. Para esto se establece un calendario de actualización por producto.

Estas actualizaciones se deben realizar como mínimo mensualmente, siempre y cuando el producto haya presentado evolución, en caso que no sea así, se debe garantizar que todos los clientes se encuentren en la última versión aprobada. A excepción de las soluciones de alto impacto, estas deben ser actualizadas de manera inmediata para todos los clientes, de no ser así solo se actualizara el cliente que reporto el requerimiento o los clientes notificados en el mismo para liberación inmediata.

Se establece calendario de actualización de productos.

También se establece realizar la cuarta semana de cada mes tuning a las bases de datos de todos clientes, se deben realizar las siguientes actividades:

Notas de Proceso

←Volver atras

1) , 3)
Si aplica
2)
Para evitar modificaciones no controladas