DevOps (Development + Operations) es una filosofía que defiende una integración más intensa y eficaz entre los diferentes departamentos de TI y que permite una mayor automatización en todo el proceso de construcción y puesta en producción de las aplicaciones, garantizando una mayor calidad, un menor time to market y, por tanto, una mayor competitividad.

La relevancia de metodologías ágiles para el desarrollo de software y de otras más propias del ámbito de la producción industrial como puede ser Lean, las necesidades de gestionar una producción de software más intensiva y de establecer unas relaciones más dinámicas con el cliente final, así como las nuevas infraestructuras TI de alta disponibilidad son, entre otros, algunos factores facilitadores de la entrada de esta nueva filosofía de gestión del software.

Además de los anteriores factores desencadenantes, existen algunos problemas en las estrategias actuales que pueden ser resueltos con la incorporación de herramientas que pongan en marcha las prácticas DevOps. Las grandes organizaciones tienen el difícil reto de gestionar eficientemente el alto número de desarrollos e instalaciones de software, que se realizan sobre complejas y heterogéneas estructuras (diferentes sistemas, proveedores, procedimientos, herramientas, etc.).

Así mismo, la existencia de equipos inconexos y que luchan por conseguir objetivos distintos provocan departamentos y procesos optimizados pero no alineados, así como conflictos y una falta de colaboración que afectan al flujo del proceso global y por tanto a la consecución del objetivo final: la puesta en el mercado de un producto a tiempo y con la calidad apropiada.

La falta de automatización es otro de los grandes problemas existentes dado su impacto en la eficiencia y en el rendimiento. Es muy común la aparición de defectos en fases muy avanzadas a causa de errores humanos que podrían haberse detectado con mayor anticipación (por ejemplo, en la generación de documentación de diseño de las aplicaciones) y que repercuten en altos costes de no-calidad y retrasos.

La puesta en práctica de la filosofía DevOps permite solventar las dificultades anteriores, haciendo posible contar con escenarios altamente automatizados y ágiles sobre los que es posible ejercer un mayor y mejor control mediante herramientas especializadas que se conectan a su vez con todas las herramientas de la cadena de desarrollo+producción (herramientas de soporte a la toma de requisitos de las aplicaciones, herramientas de diseño, desarrollo y pruebas, gestión de cambios, gestión de incidencias, gestión de proyectos, etc.). Esto se traduce en un importante valor añadido en términos de aseguramiento y control de la calidad (detección temprana, revisiones más rápidas, trazabilidad de problemas…) y time to market (menos pruebas necesarias, menos acciones correctivas, tareas más rápidas, etc.).

Como factores clave del éxito en la implantación de esta nueva idea en la estrategia de TI de las organizaciones, es fundamental un apoyo firme del equipo directivo y un cambio de mentalidad en el modelo de producción, tanto en el equipo de desarrollo como en el de operaciones, siendo necesarios nuevos modelos de interrelación y organizativos, incluyendo la participación de los stakeholders clave (cliente, usuario…) desde fases muy tempranas.Los objetivos y métricas deben ser comunes para garantizar la cohesión de los equipos involucrados en el proceso, y se requiere el empleo de tecnologías de primera línea.

Share This