Marco de Referencia DevOps

Propósito

El propósito de este Marco de Referencia es servir de guía a los productos que quieran implementar una estrategia DevOps en su desarrollo. El Marco de Referencia DevOps establece una serie de estándares, procedimientos y recomendaciones que permiten aprovechar al máximo las capacidades ofrecidas por el Sistema Onesait DevOps.

Objetivos

El Marco de Referencia DevOps busca tres objetivos principales:

  • Mejorar la calidad del software puesto a disposición de los clientes de Minsait

  • Reducir el tiempo que tardan los cambios en el software en estar disponibles para los clientes de Minsait

  • Implantar un marco común para la construcción, la entrega, el despliegue y la operación de productos Onesait

¿Qué es DevOps?

DevOps es un acrónimo inglés de Development (desarrollo) y Operations (operaciones), que se refiere a una metodología de desarrollo de software que se centra en la comunicación, colaboración e integración entre desarrolladores de software y los profesionales de sistemas, tradicionalmente encargados de dar soporte a los productos una vez entran en operación. DevOps es una respuesta a la interdependencia del desarrollo de software y las operaciones IT. Su objetivo es ayudar a una organización a producir productos y servicios software más rápidamente, con mejor calidad y a un menor coste.

Estrategia DevOps

Aspiramos a incorporar las prácticas más recientes y contrastadas en Ingeniería del Software para conseguir los objetivos de la iniciativa, destacando los siguientes aspectos de la estrategia:

  1. Equipos de Desarrollo: los Equipos de Desarrollo, además de desarrollar software, deben también saber cómo verificarlo, cómo operarlo, y cómo detectar problemas y corregirlos. La práctica adopción de la práctica DevOps en los Equipos de Desarrollo redunda en una mayor calidad del software producido al mejorar el conocimiento que el equipo tiene de su propio producto. Como efecto secundario aumenta el grado de involucración (ownership) y el sentimiento de pertenencia.

  2. Integración Continua (CI): cada cambio en el software, por pequeño que sea, es integrado inmediatamente (<1h) en el producto, con un grado de confianza definido y conocido.

  3. Entrega Continua (CD): cada cambio el software, una vez integrado, es inmediatamente entregado como un paquete desplegable en cualquier infraestructura compatible.

  4. Despliegue Continuo (CD): cada cambio en el software, una vez entregado como paquete, es pastoreado (staging) en un entorno idéntico al de producción, y en un plazo breve (<6h) es puesto a disposición de los usuarios en un entorno de producción, con un grado de confianza definido y conocido.

  5. Realimentación contínua: cada instalación de un producto, ya sea en pruebas, pastoreo (staging) o producción, genera logs que están almacenados en un único punto en el Sistema Onesait DevOps. Accediendo a este sistema se puede buscar y filtrar la información disponible para diagnosticar fallos de software, estimar la utilidad de los servicios del producto, u obtener cualquier otro insight deseado. Este bucle de realimentación (feedback) es una herramienta inestimable para el Equipo de Desarrollo y responsables de producto.

Dónde seguir

DevOps