¿Realmente necesitamos una integración continua para nuestros programas?

Akira Shimosoeda
Coloridad
Published in
2 min readOct 3, 2018
1, 2, 3, integrando, integrando…

Todos hemos pasado por este dilema varias veces en nuestra vida de programadores. A medida que vamos desarrollando un programa, nos llega la tentación de querer implementar algún mecanismo que, de forma automática, nos permita acelerar proceso el desarrollo, la construcción y la puesta en producción de nuestro programa, pero ¿vale la pena este esfuerzo?

Desarrollar un sistema de integración continua conlleva mucha labor, especialmente a la hora de configurar las herramientas necesarias y, las pruebas subsiguientes para validar que la nueva funcionalidad a ser agregada esté funcional y no genere errores críticos a la hora de unirlo al producto original.

Éste intercambio entre el aumento de la estabilidad contra la rapidez nos lleva a las siguientes preguntas. El programa que desarrollamos, ¿será utilizado una única vez o iremos agregando nuevas funcionalidades en el futuro?, ¿qué tan importante es la prevención de potenciales errores en nuestro programa?, ¿entre cuántas personas lo desarrollaremos?, ¿qué tan rápido debemos agregar nuevas funcionalidades al programa en cuestión? Como verán, hay un sinfín de preguntas a responder.

Una regla simple a seguir es, si nuestro programa requiere la labor de varios programadores, debemos agregar constantemente nuevas funcionalidades y, evitar errores por medio de pruebas unitarias y de integración, debemos de utilizar un sistema de integración continua.

En Coloridad optamos por la utilización de la misma para acelerar el proceso de unificación de los trabajos hechos por los programadores. Si bien, el costo inicial fue elevado, el beneficio que obtuvimos fue la reducción de tiempo de desarrollo, especialmente en el proceso de unir las nuevas funcionalidades con el programa original.

--

--