Ejemplo del día a día del equipo de desarrollo en Uorkers para resolver un problema complejo:
- 09:00h Se registra una idea o un problema como un nuevo Issue.
- 11:00h El problema se agrega a un hito (fin de la etapa Issue / inicio de la etapa Plan).
- 12:00h Comenzamos a trabajar en el tema, creamos una rama local y realizamos el primer compromiso de resolución.
- 12.30h Realizamos un segundo compromiso con la rama identifica el número Issue (fin de la etapa Plan / inicio de la etapa Code).
- 14:00h Empujamos la rama y creamos una solicitud de fusión que contiene el patrón de cierre de problemas en su descripción (fin de la etapa Code / inicio de las etapas Test y Review).
- 5m El CI finaliza la ejecución los scripts (fin de la etapa Test).
- 19:00h Revisamos la solicitud de fusión de ramas, nos aseguramos que todo es correcto y aceptamos la combinación. (fin de la etapa Review / inicio de la etapa Staging).
- 19:30h Una vez fusionado lo implementamos en producción (fin de la etapa de Staging).
- El ciclo se completa y la suma de los tiempos de las etapas anteriores se registra en la etapa de Producción. Ese es el tiempo entre la creación de un Issue y desplegar su solicitud de fusión relevante a la producción.
Resumen de los tiempos de ejemplo para una solución
Acción | Tiempo | Descripción |
---|---|---|
Issue | 2h | Desde el registro del problema hasta que se le asigna un hito |
Plan | 1h | Desde darle un hito hasta empujar la rama |
Code | 2h | Desde el primer compromiso hasta que se complete la solicitud de fusión |
Test | 5m | Tiempo medio total de prueba para todos los commits / merges |
Review | 5h | Desde la creación de la solicitud de fusión hasta que se fusiona la solicitud de fusión |
Staging | 30m | Desde que se fusionó hasta la implementación en producción |
Total | 10h 30m | Desde la recepción hasta la publicación en en entorno de producción |
Objetivo: la solución
El objetivo aquí no es dictar una serie de pasos que se deben seguir para lograr el nirvana de la implementación continua, sino más bien resaltar el enfoque de la implementación continua y algunos pasos para trabajar hacia ese objetivo. No se preocupe demasiado por la forma en la que está midiendo, no hay premio por tener el mejor proceso de implementación (o tal vez lo haya, pero eso no es importante en este momento).