Sprint vs hito vs lanzamiento

Soy nuevo en Agile y Scrum, y me confundí sobre cuáles son las diferencias entre un Sprint, un Milestone y un Release.

Escuché a algunos decir que el Sprint es un hito. También en algún software, los términos Sprint y Milestone tienen el mismo aspecto. Pero, ¿es realmente así?

Otros dicen que un Milestone no es un Sprint, sino un Release. Entonces, para ellos, Milestone y Release son lo mismo.

En The Scrum Guide, no hay ninguna palabra sobre Milestone. ¿Por qué? ¿Por qué siempre escuchamos la palabra hito en las conversaciones ágiles? ¿Hito es solo otro término para la liberación?

Estoy buscando una aclaración entre esos términos, Sprint, Milestone y Release y un ejemplo. Me gustaría saber las definiciones exactas de Scrum detrás de esos términos.

Respuestas (10)

Sprint
En Scrum Framework, todas las actividades necesarias para la implementación de las entradas de Scrum Product Backlog se realizan dentro de Sprints (también llamados 'Iteraciones'). Los sprints siempre son cortos: normalmente unas 2-4 semanas.

Cada Sprint sigue un proceso definido como se muestra a continuación:

ingrese la descripción de la imagen aquí

El corazón de Scrum es un Sprint, una caja de tiempo de dos semanas o un mes durante el cual se crea un incremento de producto potencialmente liberable. Un nuevo Sprint comienza inmediatamente después de la conclusión del Sprint anterior. Los Sprints consisten en la planificación del Sprint, los scrums diarios, el trabajo de desarrollo, la revisión del Sprint y la retrospectiva del Sprint.

En la planificación de Sprint, el trabajo a realizar en el Sprint es planificado en colaboración por el Equipo Scrum.

La reunión diaria de Scrum es un evento con un límite de tiempo de 15 minutos para que el equipo Scrum sincronice las actividades y cree un plan para ese día.

Se lleva a cabo una Revisión de Sprint al final del Sprint para inspeccionar el Incremento y realizar cambios en el Product Backlog, si es necesario.

La Retrospectiva de Sprint ocurre después de la Revisión de Sprint y antes de la próxima Planificación de Sprint. En esta reunión, el Equipo Scrum se inspeccionará a sí mismo y creará un plan para implementar mejoras durante el Sprint subsiguiente.


Lanzamiento
El objetivo de la planificación inicial del lanzamiento es estimar aproximadamente qué funciones se entregarán antes de la fecha límite del lanzamiento (suponiendo que la fecha límite sea fija), o elegir una fecha de entrega aproximada para un conjunto determinado de funciones (si el alcance es fijo). Usamos esta información para decidir si el proyecto producirá o no suficiente ROI para al menos pagar por sí mismo y, por lo tanto, si debemos continuar o no.

Milestone
Milestone generalmente se asocia con alcanzar un objetivo determinado, antes de continuar o detenerse por completo. El punto de control significa puntos en los que el equipo se detiene y verifica el progreso contra las expectativas, y posiblemente se ajuste.

Hito (gran granularidad) significa verificación del progreso de forma iterativa; es importante en el progreso general del proyecto y si la meta asociada no se cumple, se necesitan algunos análisis y decisiones importantes; está asociado con fases e iteraciones u otros puntos importantes y podría estar relacionado con el seguimiento formal del progreso. Como “ningún equipo es una isla en sí mismo”, ese “desarrollo de software” no es un universo herméticamente sellado, y que los esfuerzos de desarrollo de software de un equipo suelen ser parte de una empresa/organización coordinada más grande.


Ahora una respuesta a su pregunta en resumen:
Sprint, Milestone y release no son lo mismo, pero en algún momento durante el desarrollo del proyecto se encuentran.

Es posible que el final de un hito en particular resulte en una liberación parcial/final.

Los Sprints son fragmentos para el plan de desarrollo, con actividades iterativas, no se pueden considerar como un hito.

+1 para "Sprint, Milestone y lanzamiento no son lo mismo, pero en algún momento durante el desarrollo del proyecto se encuentran".
@Krunal, ¿puedo cambiar la duración del sprint durante el proyecto? por ejemplo, sprint 1,2,3 - 1 semana, sprint 4 - 2 semanas, sprint 5,6 - 3 semanas, sprint 7 - 1 semana .....
@Krunal "Es mejor que los sprints tengan duraciones constantes a lo largo de un esfuerzo de desarrollo". scrumguides.org/scrum-guide.html
@AlanLarimer gracias por sus comentarios, que me muestran la información correcta.

Tanto los Sprints como los Releases son hitos, ya que un hito es simplemente "una acción o evento que marca un cambio significativo o una etapa de desarrollo".

Milestone se usa a menudo en las conversaciones de gestión de proyectos en general. No es específicamente un término Agile (ni Scrum), pero su significado es lo suficientemente amplio (como se muestra arriba) para ser utilizado en contextos Agile.

Un Sprint es un lanzamiento potencial , pero la mayoría de los Sprints no son lanzamientos.

Un Sprint es solo una iteración de tiempo, después de la cual el producto se encuentra en una forma estable y liberable.

Un lanzamiento es cuando realmente lanzas el producto.

Si desea conocer las definiciones exactas de Scrum, lea la Guía de Scrum .

El corazón de Scrum es un Sprint, un período de tiempo de un mes o menos durante el cual se crea un Incremento de producto "Terminado", utilizable y potencialmente liberable.

en la guía de scrum, no hay ninguna palabra sobre Milestone. ¿Por qué? ¿Por qué siempre escuchamos la palabra hito en las conversaciones ágiles... es hito solo otro término para liberación? gracias

El corazón de Scrum es un Sprint, un período de tiempo de un mes o menos durante el cual se crea un Incremento de producto "Terminado", utilizable y potencialmente liberable.

La guía Scrum

Los otros términos no son parte de Scrum, aunque "Planificación de lanzamiento" solía serlo hace muchos años .

Los hitos suelen formar parte del vocabulario de PMI (gestión de proyectos).

ADICIONAL

Hay mucho en la historia del desarrollo de software y estos términos. Comience con la gestión del desarrollo de grandes sistemas de software (1970), el malentendido que condujo al proceso de cascada. Los términos hito y lanzamiento se usan ampliamente en la gestión de proyectos clásica. Son similares y, a menudo, se usan indistintamente; a menudo tienen diferentes significados para diferentes personas. El término ágil proviene del Manifiesto para el desarrollo ágil de software (2001), aunque la base de esa filosofía comenzó en la década de 1990 ( historia ), incluida la programación extrema y Scrum .. La razón por la que el lanzamiento se eliminó de The Scrum Guide y el hito nunca apareció fue porque ambos son una planificación a largo plazo, lo cual es contrario a la intención: ciclos cortos iterativos e incrementales destinados a promover la agilidad para cambiar de dirección para aprovechar oportunidades, reducir riesgos y terminar. un esfuerzo cuando el costo-beneficio ya no era aceptable.

¡Excelente explicación de por qué la definición de Milestone no aparece en The Scrum Guide! gracias

Los sprints y los hitos son herramientas que puede usar para dividir un lanzamiento, como el lanzamiento de una nueva función, en pasos más pequeños e incrementales.

La mayoría de los equipos de software ya están trabajando con sprints, comprometiéndose a completar varias tareas en las próximas 2 o 3 semanas. Una de las ventajas de trabajar en sprints es que después de decidir qué trabajo se incluye en cada sprint, es decir, la planificación de sprints, cualquier nueva solicitud debe tener una prioridad extremadamente alta y alguien del equipo tiene que cambiar el contexto y abordarlo. , o se agrega a la cartera de pedidos.

En cuanto a los hitos, son una gran herramienta para que los gerentes de ingeniería organicen el trabajo en torno a los resultados para los usuarios finales. No es obligatorio que un hito tenga una fecha de vencimiento, pero se vuelve especialmente útil tener una cuando hay compromisos externos con otros equipos. Entonces es más fácil establecer expectativas con otros equipos, porque existe el compromiso de entregar el trabajo en un hito en una fecha determinada y es más fácil comunicar el progreso. Si su equipo está trabajando con sprints, un hito puede incluir varios sprints.

Puede encontrar más información sobre la diferencia entre sprints e hitos en esta publicación de blog .

Un lanzamiento es cuando los clientes tienen acceso a nuevas capacidades. Desde el punto de vista de la ingeniería de software, puede significar diferentes cosas, según cómo implemente el código.

En un mundo de "implementación puntual", si está lanzando una nueva función, su equipo trabajará en sprints que desbloquean varios hitos. Una vez que haya completado cada hito, el código se implementa en los usuarios finales para que tengan acceso a la nueva función.

ingrese la descripción de la imagen aquíSi su equipo de ingeniería sigue una integración continua y una implementación continua (CI/CD), el uso de sprints es principalmente para que el equipo sepa en qué se concentrará durante las próximas 2 o 3 semanas. En un mundo de CI/CD, tiene una versión de producción cada vez que se integra un código nuevo. De esta manera, sus clientes pueden tener acceso completo a las nuevas capacidades, o las nuevas capacidades aún no son visibles para ellos, pero sus bases se prueban, implementan y ejercitan de forma incremental en segundo plano.

ingrese la descripción de la imagen aquí

Re pregunta: "las diferencias son entre un Sprint, un Hito y un Lanzamiento". En las mejores prácticas de PM, un hito es un punto en el tiempo que no consume recursos.

En un plan de PM que incorpore la entrega de software del marco Scrum, podría establecer algunos hitos simples en su plan/estructura general de desglose del trabajo para abordar los Scrum Sprints, por ejemplo:

  1. Producir Backlog para Sprint 1 (una línea de resumen de PM) (esta es una actividad del marco Scrum)
  2. Plan Sprint 1 (una línea de resumen de PM) (esta es una actividad del marco Scrum) Iniciar Sprint 1 (un hito de PM)
    • (una línea de resumen de PM) (Enumere las actividades del marco Scrum aquí)
    • Scrum Increment entregado (un hito)
  3. Terminar Sprint 1 (un hito)

Repite lo anterior para cada Sprint.


Con respecto al término Lanzamiento: primero, la definición de un Incremento: "una pieza de software funcional que se suma a los Incrementos creados previamente, donde la suma de todos los Incrementos, como un todo, forman un producto".

Tenga cuidado de ponerse de acuerdo sobre lo que significará el alcance del término Liberación. Por ejemplo, en el marco Scrum, cada Sprint entrega un Incremento, pero es posible que el usuario aún no haya puesto en servicio el Incremento; esta es una decisión tomada por el propietario del producto Scrum.

Esperaba que mis frases de actividad e hitos estuvieran en líneas separadas para facilitar la lectura, pero el editor de texto las encadenó en una sola oración, así que tenlo en cuenta cuando leas mi comentario anterior, gracias.

Un hito es un logro.

Un lanzamiento es un hecho de lanzar un software a los usuarios.

Un Sprint es un período de trabajo en el que se crea un valor añadido particular.

Por favor, comparta lo que está mal, no solo vote negativamente

Solo para aumentar la confusión, un "hito" también es un término que se usa en las herramientas de seguimiento de tickets como Trac y GitHub. En este uso, un hito es algo que tiene una fecha de vencimiento y un conjunto de tickets asociados.

Por lo tanto, podría ser que algunos equipos utilicen este tipo de hitos para organizar y realizar un seguimiento del progreso de los tickets para un sprint y/o para un lanzamiento. Me pregunto si esto está contribuyendo a la confusión del OP.

Milestone es una bandera de grupo de requisitos si se realiza, entonces ha logrado un objetivo en los objetivos del proyecto.

Sprint es un marco de tiempo fijo, lo suficientemente grande, en el que ofrece un grupo estable y funcional de características (historias de usuario).

en Release, envía características entregables (el cuadro de tiempo más pequeño).

Hito >= Sprint (es posible que necesite varios sprints para alcanzar un hito) Sprint >= lanzamiento (es posible que necesite varios lanzamientos para cerrar un sprint)

Parece que esta respuesta cambia la liberación y la velocidad de lo que otros dicen, lo que demuestra que no hay una sola perspectiva para esta pregunta. Si es CICD y lanza varias veces por sprint, entonces un ciclo de lanzamiento es más corto que el sprint.

Sprint es un marco de tiempo para lograr una o más metas, frecuentemente de 1 a 4 semanas. Está relacionado con un trabajo realizado por un equipo. Hito es un evento durante un proyecto, con cero días de duración, que representa un logro importante. El lanzamiento es un entregable, podría ser un documento, un módulo de software, un plano, etc.

EG: Sprint 1: Del 2 al 20 de octubre. Sprint 2: Del 23 al 27 de octubre.

Hito ABC: Inicio del proyecto. Hito XYZ: Inicio de la fase de diseño.

Versión n.º 1: Formulario web Contáctenos. Lanzamiento #2: Informe de ventas.

¿Pueden los sprints tener una duración diferente durante el proyecto (a veces 1 semana, a veces 2...)?
@ user155293 No está prohibido, pero se desaconseja encarecidamente: "Es mejor que los sprints tengan duraciones constantes a lo largo de un esfuerzo de desarrollo". scrumguides.org/scrum-guide.html
@Alan Larimer tiene razón.

Según yo, los Lanzamientos deberían ser un hito para mí y Sprint está diseñado por el gerente de acuerdo con el conjunto de habilidades de un empleado.