¿Por qué invertir en integración continua?

Indenova es una empresa de desarrollo enfocada a producto y año tras año los productos de Indenova adquieren nuevas funcionalidades o se añaden nuevos productos al catálogo existente.

Estos nuevos productos o funcionalidades surgen a partir de nuevas peticiones de nuestros clientes, por proyectos nuevos o por el I+D interno y produce nuevos desarrollos que deben de ser gestionados para que su calidad software cumpla los mínimos requeridos por Indenova, algo muy complejo y costoso de llevar a cabo.

Es requisito indispensable para la factoría de software de Indenova, el que todos sus artefactos (productos y librerías) tengan la misma calidad software, algo extremadamente complejo al tener ese crecimiento en número de artefactos.

Otro de los motivos y por no decir el más crucial, es el tiempo que transcurre desde que una funcionalidad inicia el desarrollo por el equipo técnico, hasta que es desplegada en el entorno de cliente, asegurando su calidad.

El tiempo total de este proceso puede desglosarse del siguiente modo:

  1. Tiempo de análisis, Plan y Desarrollo: Inicia en la toma del requerimiento y finaliza cuando ha sido desarrollado. Esta etapa incluye: Análisis, Diseño, Desarrollo, Pruebas (unitaria, integración, funcionales, rendimiento y seguridad) y aceptación del cliente.
  2. Tiempo de liberación (release): Tras finalizar el desarrollo el tiempo que se le dedica para empaquetar y liberar el artefacto.
  3. Tiempo de despliegue (delivery): Desde la liberación a la entrega en el entorno del cliente.

El beneficio de incorporar la integración continua en cada uno de estos puntos es el siguiente: 

  1. Mejora la etapa de pruebas ya que el sistema es capaz de realizar de forma automática todas las pruebas necesarias sin ningún tipo de intervención:
    1. Prueba continua de la integración entre todos los artefactos (un cambio en un artefacto desencadena el testeo de todos los artefactos relacionados).
    2. Medirá tras cada cambio la calidad de software sin que el desarrollador tenga que hacerlo explícitamente.
  2. Todo el proceso de liberación pasa a ser automático. Poder liberar cuando se requiera sin consumir tiempo del equipo técnico.
  3. El proceso de despliegue pasa a ser automático: Reduciendo este tiempo a minutos, sin requerir la intervención de ningún técnico especializado.

Objetivos que ha conseguido Indenova al aplicar el modelo de integración continua:

  1. Gestionar de manera sencilla el ciclo de vida de un artefacto.
  2. Todos los artefactos de Indenova tendrán la misma calidad software.
  3. Mejorar los tiempos de liberación.
  4. Disminuir los tiempos de implantación.