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:
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.
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.
Entrega Continua (CD): cada cambio el software, una vez integrado, es inmediatamente entregado como un paquete desplegable en cualquier infraestructura compatible.
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.
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.