Síguenos en

  RSS Google + Facebook Twitter

Addictware Logo

 

Mantener el sistema tradicional de construcción y despliegue de software ya no tiene sentido. Cada vez es más necesario adaptar otro basado en la filosofía Lean, que permita la optimización de los procesos, la reducción de costos mediante la eliminación de las tareas manuales, la reducción del time-to-market y la reducción del riesgo a la hora de realizar modificaciones en el entorno.

La rapidez con la que evoluciona la tecnología, junto a las nuevas necesidades y tendencias sociales, obliga a las organizaciones a agilizar sus métodos de trabajo con el objetivo de ofrecer a sus clientes nuevos servicios en el menor tiempo y con la mayor calidad posibles. En esta realidad, se hace necesario un cambio de cultura en todo lo referente a la construcción y despliegue del software.

Actualmente, los grupos de trabajo que participan en un proyecto –Desarrollo, SQA, Operaciones…- trabajan de forma independiente y con sistemas de comunicación poco eficientes. Además, muchos procesos se siguen llevando a cabo de forma manual, lo que da lugar a la generación de errores que acaban provocando trabajo extra, retrasos, necesidad de asignar más recursos y, por tanto, el encarecimiento del proyecto. La solución a esta situación tan poco idílica pasa, sin duda, por la adopción de prácticas de Entrega Continua y DevOps. 2 HiRes

En estos momentos, mantener el sistema tradicional de construcción y despliegue de software ya no tiene sentido. Se hace cada vez más necesario adaptar otro basado en la filosofía Lean, que permita la optimización de los procesos, la reducción de costes mediante la eliminación de las tareas manuales, la reducción del time-to-market y la reducción del riesgo a la hora de realizar modificaciones en el entorno.

En este cambio de cultura, la automatización juega un papel fundamental a la hora de asegurar la calidad en los procesos de despliegue del software. Si el proceso de construcción, pruebas y despliegue no está automatizado, no es reproducible. Es decir, al trabajar de forma manual, cada vez que se lleve a cabo un despliegue de una nueva versión se hará de forma distinta, porque resultará imposible auditar e identificar los errores cometidos a la hora de realizar cambios en la aplicación, la configuración del sistema o en los entornos. Es decir, no hay control en el proceso de release y, por lo tanto, no hay forma de asegurar la calidad final del producto.

Además, mediante la automatización de los procesos se hace también posible incrementar la frecuencia de la liberación de nuevas versiones de software con muy poco esfuerzo, lo que implica dos beneficios colaterales: por una parte, el conjunto de cambios entre una release y otra será pequeño, algo que reducirá significativamente el riesgo asociado con la liberación de cambios en los entornos de producción, y hará mucho más fácil la aplicación de un posible roll back. Por otra, será también posible obtener feedback de forma mucho más rápida y se empezarán a explotar las funcionalidades mucho antes.

En consecuencia, la organización obtendrá múltiples beneficios adoptando esta aproximación:

·        Reducción del time-to-market.

·        Rentabilidad más rápida del software desarrollado.

·        Menor coste, al reducirse recursos dedicados y horas de trabajo.

·        Mayor seguridad a la hora de introducir cambios.

·        Despliegues más sencillos, sin necesidad de tener conocimientos técnicos.

Nadie dice que implantar una metodología de Entrega Continua y DevOps resulte algo sencillo. Implica derribar barreras entre equipos, eliminar silos, utilizar nuevas herramientas, modificar procesos existentes, crear otros nuevos… pero los beneficios para la organización a nivel de negocio son de tal calibre que, sin duda, merece la pena el esfuerzo y la inversión que conlleva. 





Comentarios

Share on Myspace