Definition

Entrega progresiva

La entrega progresiva es el proceso de impulsar los cambios a un producto de forma iterativa, primero a una audiencia pequeña y luego a audiencias cada vez más grandes para mantener el control de calidad (QC). El objetivo de la entrega progresiva es mejorar los tiempos de entrega de las nuevas características del producto y mitigar el riesgo controlando quién puede verlos.

En el desarrollo de software, un enfoque de entrega progresiva permite que se implemente un nuevo código en producción. Los cambios en el código se entregan primero a audiencias pequeñas y de bajo riesgo y se evalúan para garantizar la calidad (QA) antes de que estén disponibles para audiencias más grandes y riesgosas. IBM, Microsoft y Target se encuentran entre las compañías que utilizan un enfoque de entrega progresiva para implementar un nuevo código.

Cómo funciona la entrega progresiva

En general, la primera audiencia en recibir nuevas funciones y cambios de código está compuesta por usuarios expertos o grupos de personas que usan el producto para pequeños proyectos que no son sensibles al tiempo. El lanzamiento inicial de este primer grupo de bajo riesgo a menudo se denomina lanzamiento de canario y los cambios de código se denominan canario.

Al igual que un canario en una mina de carbón, el usuario final que es seleccionado para recibir el nuevo código en un lanzamiento de canario no sabe que está siendo utilizando para proporcionar una advertencia temprana de que algo está mal. Debido a que el canario solo se distribuye a un pequeño número de usuarios, su impacto es relativamente pequeño y los cambios se pueden revertir rápidamente si el nuevo código resulta defectuoso.

Después del lanzamiento canario, el tamaño de la audiencia aumenta progresivamente a medida que el equipo de DevOps gana confianza en la estabilidad y la funcionalidad del sistema.

Entrega progresiva versus entrega continua

La entrega progresiva es muy similar a la entrega continua. Ambos enfoques implican empujar cambios y actualizaciones tan pronto como estén listos en lugar de agregarlos y esperar la próxima versión del producto.

Sin embargo, la diferencia es que la entrega progresiva proporciona un nivel adicional de control mediante el uso de indicadores de funciones. La marcación de características es una práctica recomendada que consiste en ajustar el cambio de código con una marca que especifica qué atributos deben cumplirse antes de que se ejecute el código.

Las plataformas de administración de indicadores de características, como la que ofrece LaunchDarkly, permiten a los ingenieros de DevOps activar o desactivar indicadores de características para varios subconjuntos de usuarios a través de un tablero y realizar retrocesos a nivel de aplicación. Estas son dos consideraciones importantes para cualquier organización que desee implementar código a través de un modelo de entrega progresivo.

Ventajas de la entrega progresiva

Los profesionales de TI que utilizan la entrega progresiva encuentran los siguientes beneficios:

  • La capacidad de planificar el fracaso y acomodarlo.
  • La capacidad de controlar la calidad de nuevas funciones en un entorno de producción.
  • La capacidad de recopilar comentarios de las pruebas canarias y realizar mejoras antes de implementar cambios para todos.
  • La capacidad de los equipos que no son de ingeniería, tales como marketing o ventas, de lanzar funciones a los usuarios de manera puntual.

Este contenido se actualizó por última vez en noviembre 2019

Investigue más sobre Desarrollo de software y aplicaciones

ComputerWeekly.com.br
Close