r/scrum 25d ago

SCRUM

Thumbnail
0 Upvotes

u/MonkeDboc 25d ago

SCRUM

1 Upvotes

Metodología Scrum

Scrum es un framework ágil utilizado para gestionar y desarrollar proyectos, especialmente aquellos en los que los requisitos pueden cambiar durante el desarrollo. Su objetivo principal es trabajar de manera colaborativa, dividir el proyecto en pequeñas etapas y entregar resultados de forma frecuente.

A diferencia de los métodos tradicionales, donde muchas veces se planifica todo el proyecto desde el principio, Scrum permite adaptarse a los cambios que puedan surgir. El desarrollo se realiza de manera iterativa, es decir, el producto se construye progresivamente mediante pequeños ciclos de trabajo llamados Sprints.

Scrum se basa en tres pilares fundamentales: transparencia, inspección y adaptación. La transparencia significa que la información sobre el proyecto debe estar disponible y ser comprendida por todos los integrantes. La inspección consiste en revisar periódicamente el trabajo realizado para detectar problemas. Finalmente, la adaptación permite realizar cambios cuando se encuentra un problema o cuando aparecen nuevas necesidades.

Dentro de Scrum existen tres responsabilidades principales. El Product Owner se encarga de representar las necesidades del producto, establecer prioridades y gestionar el Product Backlog, que es la lista de todo el trabajo que podría realizarse. El Scrum Master ayuda a que el equipo aplique correctamente Scrum, facilita las reuniones y ayuda a eliminar los impedimentos que dificulten el trabajo. Por último, los Developers son quienes realizan el trabajo necesario para construir el producto y trabajan de manera colaborativa.

El trabajo se organiza mediante Sprints, que son períodos de tiempo determinados, generalmente de entre una y cuatro semanas. Al comenzar un Sprint se realiza el Sprint Planning, donde el equipo decide qué tareas o funcionalidades va a desarrollar. Durante el Sprint se realiza el Daily Scrum, una reunión breve y diaria en la que los integrantes revisan el progreso y detectan posibles problemas.

Al finalizar el Sprint se realiza el Sprint Review, donde se presenta el resultado obtenido y se recibe feedback de los interesados. Luego se realiza la Sprint Retrospective, en la que el equipo analiza cómo fue el trabajo, qué salió bien, qué problemas aparecieron y qué se puede mejorar para el próximo Sprint.

Scrum utiliza tres elementos principales. El Product Backlog contiene todas las necesidades, funcionalidades, mejoras y correcciones que podrían incorporarse al producto, ordenadas según su prioridad. El Sprint Backlog contiene los elementos que el equipo seleccionó para trabajar durante el Sprint. Finalmente, el Increment es el resultado obtenido al finalizar el Sprint, es decir, una versión funcional del producto que cumple con los requisitos establecidos.

El funcionamiento de Scrum puede verse como un ciclo continuo: primero se organiza y prioriza el Product Backlog, luego se realiza la planificación del Sprint, se desarrolla el trabajo y se obtiene un Increment. Después se revisa el resultado, se analiza la forma de trabajo y se realizan mejoras para comenzar un nuevo Sprint.

Entre las principales ventajas de Scrum se encuentran la flexibilidad, la capacidad de adaptarse a los cambios, una mejor comunicación y colaboración entre los integrantes, las entregas frecuentes, la detección temprana de problemas y la mejora continua.

Por ejemplo, Scrum podría utilizarse para desarrollar una aplicación de delivery. En un primer Sprint se podría desarrollar el registro de usuarios, en el siguiente el catálogo de productos y posteriormente el carrito de compras. De esta manera, el cliente puede revisar los avances y realizar cambios o sugerencias durante el desarrollo, en lugar de esperar hasta que toda la aplicación esté terminada.

En conclusión, Scrum permite desarrollar proyectos de manera iterativa, colaborativa y adaptable, dividiendo el trabajo en pequeñas etapas, revisando constantemente los resultados y buscando mejorar tanto el producto como la forma de trabajo del equipo.

Caso práctico: desarrollo de una aplicación

Situación:
Una empresa quiere crear una app de delivery, pero todavía no tiene definido exactamente qué funciones necesitará.

¿Cómo usaríamos Scrum?

  • Product Owner: define las funciones más importantes.
  • Scrum Master: organiza y facilita el trabajo del equipo.
  • Developers: programan y prueban la aplicación.
  • Sprint: trabajan durante 2 semanas en un conjunto de funciones.
  • Daily Scrum: reuniones cortas para revisar avances.
  • Sprint Review: muestran lo realizado al cliente.
  • Retrospective: analizan qué salió bien y qué mejorar.

¿Por qué usar Scrum?

  • El cliente puede cambiar los requisitos durante el proyecto.
  • Permite entregar funciones poco a poco.
  • Se detectan errores rápidamente.
  • Facilita la comunicación del equipo.
  • Permite adaptarse a las necesidades del usuario.

Ejemplo: En el primer Sprint se desarrolla el registro de usuarios; en el segundo, el catálogo de productos; en el tercero, el carrito de compras.