Guía de Kanban · Fundamentos Lean
Entrega continua: principios, pipeline y beneficios
La entrega continua es una práctica de software en la que el código se mantiene siempre en un estado publicable, de modo que los nuevos cambios pueden llegar a los usuarios de forma rápida, segura y en cualquier momento. Convierte en realidad técnica el ideal de Kanban de un flujo pequeño y continuo.
Puntos clave
- La entrega continua mantiene el software siempre publicable.
- Un pipeline de despliegue automatiza la compilación, las pruebas y la publicación.
- Complementa a Kanban al eliminar las publicaciones por lotes.
Orígenes
La práctica la describieron en profundidad Jez Humble y David Farley en su libro de 2010 Continuous Delivery. Se basa en los principios ágiles, sobre todo en el primero: entregar software valioso pronto y de forma continua.
CI frente a entrega continua frente a despliegue continuo
| Práctica | Qué significa |
|---|---|
| Integración continua (CI) | Los desarrolladores fusionan cambios pequeños con frecuencia; cada fusión se compila y se prueba automáticamente |
| Entrega continua (CD) | Cada cambio que supera el pipeline podría publicarse; la publicación es una decisión de negocio |
| Despliegue continuo | Cada cambio que supera el pipeline se publica automáticamente |
El pipeline de despliegue
- Etapa de commit: compilar el código y ejecutar pruebas automatizadas rápidas.
- Etapa de aceptación: pruebas funcionales y de integración automatizadas.
- Pruebas adicionales: pruebas de rendimiento, de seguridad y exploratorias.
- Lanzamiento: desplegar en producción, a menudo con feature flags o despliegues graduales.
- Supervisar: observar el uso real y los errores, y revertir rápidamente si es necesario.
Beneficios
- Publicaciones más pequeñas y de menor riesgo.
- Retroalimentación más rápida de usuarios reales.
- Menor lead time desde la idea hasta el cliente.
- Días de publicación menos estresantes.
- Mayor calidad gracias a la automatización.
Entrega continua y Kanban
Kanban limita el trabajo en curso y mantiene pequeños los elementos; la entrega continua elimina el paso final de publicación por lotes. Juntos permiten que cada elemento llegue a los clientes en cuanto está terminado. Consulte DevOps.
Plantillas gratuitas sobre este tema
Preguntas frecuentes
¿Es la entrega continua solo para software?
El término procede del software, pero el principio de mantener el trabajo siempre listo para publicarse en pequeños incrementos se aplica a contenidos, documentación y otros productos digitales.
¿Se necesita el despliegue continuo para hacer entrega continua?
No. La entrega continua significa que puede publicar en cualquier momento; el despliegue continuo significa que publica automáticamente.
¿Qué es la entrega continua?
La entrega continua es una práctica de software en la que el código se mantiene siempre en un estado publicable, de modo que cualquier cambio puede desplegarse en producción de forma segura y rápida en cualquier momento.
¿Cuál es la diferencia entre la entrega continua y el despliegue continuo?
En la entrega continua, cada cambio está listo para publicarse, pero una persona decide cuándo desplegar. En el despliegue continuo, cada cambio que supera el pipeline se publica automáticamente.
¿Cuál es la diferencia entre la integración continua y la entrega continua?
La integración continua consiste en fusionar y probar los cambios de código con frecuencia. La entrega continua la amplía para que el código integrado sea siempre desplegable en producción.
¿Qué es un pipeline de despliegue en la entrega continua?
Una secuencia automatizada de etapas, como la compilación, las pruebas y el despliegue en entornos de pruebas, por la que pasa cada cambio en su camino hacia la publicación.
¿Quién escribió el libro Continuous Delivery?
Jez Humble y David Farley, en su libro de 2010 Continuous Delivery.
¿Cuáles son los beneficios de la entrega continua?
Publicaciones más pequeñas y de menor riesgo, retroalimentación más rápida de los usuarios, menos errores manuales y días de publicación menos estresantes.
¿Qué herramientas se usan para la entrega continua?
Los equipos suelen combinar control de versiones, un servidor de CI/CD, marcos de pruebas automatizadas y herramientas de infraestructura como código. Los productos concretos importan menos que la automatización y la disciplina.
¿Qué relación tiene la entrega continua con Kanban?
Ambos buscan lotes pequeños que fluyan de forma constante hacia los clientes. Un tablero Kanban con un tiempo de ciclo encaja de forma natural con un pipeline que puede publicar cualquier elemento terminado.
¿Qué es un feature flag en la entrega continua?
Un interruptor en el código que activa o desactiva una funcionalidad sin volver a desplegar, lo que permite a los equipos publicar código de forma segura antes de que una funcionalidad sea visible para todos los usuarios.