Si necesitas ayudar a implantar Integración Continua a un equipo externo (a modo de asesoría o consultoría), puedes seguir estos pasos y recomendaciones.

Primero, realiza dos diagnósticos para conocer la forma actual de trabajar de este equipo externo: El primer diagnóstico basado en las 11 prácticas de Integración Continua y el segundo llamado Joel Test.

Con base en los resultados obtenidos de estos diagnósticos, debes definir una metodología de trabajo junto al equipo asesorado. Te recomendamos revisar estos resultados en conjunto y definir prioridades sobre qué prácticas abordar primero. Luego, definir al menos una reunión semanal para revisar tareas y avances en pos de aumentar el grado de utilización de cada práctica. Además, es muy importante que establezcan una contraparte en el equipo externo, encargada de la comunicación con el equipo asesor y que, idealmente, trabaje de forma fija con el equipo a asesorar.

Según los resultados obtenidos de nuestra encuesta, las prácticas 1, 4 y 9 son las más utilizadas, mientras que las 2, 3 y 5 son las más ignoradas.

Supongamos que se quiere iniciar mejorando la utilización de la práctica 2 (Automatizar el build). Dependiendo del tipo de software que se esté desarrollando, te recomendamos recolectar todos los pasos actuales de compilación y unificarlos en un script. La idea de automatizar el build es que se realice en un solo paso.

Ahora, si se quiere abordar la práctica 2 (Hacer el build auto-testeable), se debe verificar si se están realizando o no tests y de qué tipo. Te recomendamos ver alguna de nuestras guías sobre testing. Finalmente, para cumplir con esta práctica debes incluir la ejecución de los test en el mismo build mencionado anteriormente. Ten cuidado de que al cumplir con esta práctica no estés afectando a la práctica 7 (Mantener el build rápido).

Abordar la práctica 5 (Cada commit gatilla el build en una máquina de integración) es un poco más complejo. No todos ocupan una maquina de integración distinta a la de desarrollo (algunos incluso solo ocupan un servidor de producción). Lo importante aquí es ir constantemente ejecutando el build en una máquina que finalmente sea igual a la de producción, con el fin de ir comprobando que todo esté en perfecto estado. En este punto es necesario utilizar un Servidor de Integración Continua que se encargue de esta tarea. Si se cuenta con una máquina de integración, te recomendamos ver la guía de Jenkins. En caso contrario si solo cuentas con una máquina de desarrollo o producción, puedes revisar la guía de Travis CI.

Finalmente, cuando ya hayas trabajado en las prácticas que se desearon abordar, te recomendamos realizar nuevamente los diagnósticos iniciales. De esta forma podrás comparar la mejora en la utilización de las prácticas y ver si ya están utilizando correctamente la Integración Continua.