Guía de Kanban · Fundamentos Lean
¿Qué es DevOps? Cultura, prácticas y métricas
DevOps es un conjunto de valores culturales, prácticas y herramientas que une el desarrollo de software y las operaciones de TI para que los equipos puedan entregar cambios de forma rápida y fiable. Extiende el pensamiento ágil y Lean a todo el recorrido desde el código hasta el cliente.
Puntos clave
- DevOps une el desarrollo y las operaciones en torno a objetivos comunes.
- CALMS y las Tres Vías resumen sus principios.
- Mídalo con la frecuencia de despliegue, el lead time, la tasa de fallos en los cambios y el tiempo de restauración.
Orígenes
El término DevOps surgió hacia 2009, cuando Patrick Debois organizó la primera conferencia DevOpsDays en Gante (Bélgica). Nació de la frustración por el muro que separaba a los desarrolladores, que querían cambios, de operaciones, que quería estabilidad.
El modelo CALMS
| Elemento | Significado |
|---|---|
| Cultura | Responsabilidad compartida y colaboración entre desarrollo y operaciones |
| Automatización (Automation) | Automatizar compilaciones, pruebas, infraestructura y despliegues |
| Lean | Lotes pequeños, WIP limitado, foco en el flujo |
| Medición (Measurement) | Medir el flujo, la calidad y los resultados para los usuarios |
| Compartir (Sharing) | Compartir conocimientos, herramientas y lecciones aprendidas |
Las Tres Vías
Popularizadas por The Phoenix Project y The DevOps Handbook:
- Flujo: acelerar el flujo de trabajo desde el desarrollo, pasando por operaciones, hasta el cliente.
- Retroalimentación: crear una retroalimentación rápida de operaciones y de los usuarios hacia desarrollo.
- Aprendizaje y experimentación continuos: construir una cultura que aprenda de los fallos y mejore.
Prácticas clave
- Integración continua y entrega continua.
- Infraestructura como código.
- Pruebas automatizadas y monitorización.
- Publicaciones pequeñas y frecuentes con feature flags.
- Equipos que construyen y operan sus propios servicios.
- Revisiones posteriores a incidentes sin culpas.
Medir el rendimiento de DevOps
El programa de investigación DORA popularizó cuatro medidas clave de la entrega de software:
- Frecuencia de despliegue: con qué frecuencia se publica.
- Lead time de los cambios: desde el commit hasta producción.
- Tasa de fallos en los cambios: proporción de publicaciones que causan problemas.
- Tiempo de restauración del servicio: la rapidez con la que se recupera de un fallo.
Plantillas gratuitas sobre este tema
Preguntas frecuentes
¿Es DevOps un rol o una cultura?
Principalmente una cultura y un conjunto de prácticas. Muchas organizaciones también tienen puestos de «ingeniero DevOps» centrados en la automatización y las herramientas.
¿Qué relación tiene DevOps con Kanban?
Ambos se centran en el flujo, los lotes pequeños y la visibilidad. Muchos equipos de operaciones y de plataforma usan Kanban para gestionar su trabajo.
¿Qué es DevOps en pocas palabras?
DevOps es una forma de trabajar que une el desarrollo de software y las operaciones de TI para que los equipos puedan construir, publicar y operar software de forma más rápida y fiable.
¿Cuándo empezó DevOps?
El término surgió hacia 2009, cuando Patrick Debois organizó la primera conferencia DevOpsDays en Gante (Bélgica).
¿Qué significa CALMS en DevOps?
Cultura, Automatización, Lean, Medición y Compartir (Culture, Automation, Lean, Measurement, Sharing): un modelo que resume los principales elementos de DevOps.
¿Cuáles son las cuatro métricas DORA en DevOps?
Frecuencia de despliegue, lead time de los cambios, tasa de fallos en los cambios y tiempo de restauración del servicio. Miden tanto la velocidad como la estabilidad de la entrega de software.
¿Cuáles son las Tres Vías de DevOps?
Flujo del desarrollo a operaciones, retroalimentación rápida en ambas direcciones y una cultura de aprendizaje y experimentación continuos.
¿Forma parte DevOps de Agile?
DevOps extiende las ideas ágiles más allá del desarrollo, a la publicación y las operaciones. Agile acelera la construcción del software; DevOps acelera que llegue de forma segura a los usuarios.
¿Cuál es la diferencia entre DevOps y la entrega continua?
La entrega continua es una práctica técnica específica para mantener el software publicable. DevOps es la cultura y el conjunto de prácticas más amplios, de los que la entrega continua es una parte clave; consulte entrega continua.
¿Qué hace un ingeniero DevOps?
Un ingeniero DevOps suele construir y mantener los pipelines de despliegue, la automatización de la infraestructura y la monitorización, y ayuda a que los equipos de desarrollo y operaciones trabajen juntos.
¿Qué es una revisión posterior a incidentes sin culpas en DevOps?
Una revisión tras una interrupción del servicio que se centra en qué aspectos del sistema permitieron que ocurriera el problema, en lugar de en a quién culpar, para que las personas compartan información abiertamente y el equipo aprenda.