¿Qué es la metodología Scrum?
Y Gestión de proyectos Scrum

¿Qué es Scrum? 

Scrum es una metodología de desarrollo ágil utilizada en el desarrollo de Software basada en un proceso iterativo e incremental.  Scrum es un marco ágil adaptable, rápido, flexible y eficaz que está diseñado para ofrecer valor al cliente durante todo el desarrollo del proyecto. El objetivo principal de Scrum es satisfacer la necesidad del cliente a través de un entorno de transparencia en la comunicación, responsabilidad colectiva y progreso continuo. El desarrollo parte de una idea general de lo que hay que construir, elaborando una lista de características ordenadas por prioridad (product backlog) que el propietario del producto quiere obtener.

Scrum Methodology

Aprender Scrum: 

  • Historia de Scrum 
  • Metodología y proceso de Scrum 
  • Roles en Scrum 
  • Beneficios de la metodología Scrum 
  • Eventos en Scrum  
  • Artefactos de Scrum 
  • Planificación en Scrum

Breve Historia de Scrum

La historia de Scrum se remonta a 1986 en el artículo de la Harvard Business Review (HBR) titulado “The New Product Development Game” (El juego del desarrollo de nuevos productos) por Hirotaka Takeuchi y Ikujiro Nonaka. Este artículo describe cómo empresas como Honda, Canon y Fuji-Xerox producen nuevos productos en todo el mundo utilizando un enfoque escalable y basado en equipos para el desarrollo de productos. Este enfoque hace hincapié en la importancia de potenciar los equipos autoorganizados.

Jeff-SutherlandEl artículo fue una influencia para desarrollar muchos de los conceptos que dieron origen a lo que hoy llamamos Scrum. Scrum es un término extraído del Rugby, que se refiere a la forma en que se reinicia el juego después de una falta o cuando el balón ha abandonado el juego. 

En 1993, Jeff Sutherland y su equipo de Easel Corporation crearon el proceso Scrum para ser utilizado en los procesos de desarrollo de software combinando los conceptos del artículo de 1986 con los conceptos de desarrollo orientado a objetos, control empírico de procesos, desarrollo iterativo e incremental, procesos de software y mejora de la productividad, así como el desarrollo de sistemas complejos y dinámicos.

«Hacer la mitad de algo es, esencialmente, no hacer nada.” – Jeff Sutherland

Metodología y proceso Scrum es precisamente una evolución de la gestión ágil. La metodología Scrum se basa en un conjunto de prácticas y roles muy definidos que deben intervenir durante el proceso de desarrollo de software. Es una metodología flexible que premia la aplicación de los 12 principios ágiles en un contexto acordado por todos los miembros del equipo del producto. 

Scrum se ejecuta en bloques temporales, cortos y periódicos, denominados Sprints, que suelen oscilar entre 2 y 4 semanas, que es el plazo de retroalimentación y reflexión. Cada Sprint es una entidad en sí misma, es decir, proporciona un resultado completo, una variación del producto final que debe poder entregarse al cliente con el menor esfuerzo posible cuando éste lo solicite. 

El proceso tiene como punto de partida una lista de objetivos/requisitos que conforman el plan del proyecto. Es el cliente del proyecto el que prioriza estos objetivos considerando un equilibrio entre el valor y el coste de los mismos, así se determinan las iteraciones y las consiguientes entregas. 

Por un lado el mercado exige calidad, rapidez en la entrega y menores costes, para lo cual una empresa debe ser muy ágil y flexible en el desarrollo de los productos, para conseguir ciclos de desarrollo cortos que puedan satisfacer la demanda de los clientes sin mermar la calidad del resultado. Es una metodología muy fácil de implementar y muy popular por los rápidos resultados que obtiene. 

La metodología Scrum se utiliza principalmente para el desarrollo de software, pero otros sectores también están aprovechando sus ventajas implementando esta metodología en sus modelos organizativos como los equipos de ventas, equipos de marketing y recursos humanos, etc.

Scrum Development

Diferentes roles en Scrum

En Scrum, el equipo se centra en construir un software de calidad. El propietario de un proyecto Scrum se centra en definir cuáles son las características que debe tener el producto a construir (qué construir, qué no y en qué orden) y en superar cualquier obstáculo que pueda dificultar la tarea del equipo de desarrollo. 

El equipo Scrum está formado por los siguientes roles: 

Scrum master: Es la persona que dirige al equipo guiándolo para que cumpla con las reglas y procesos de la metodología. El Scrum master gestiona la reducción de impedimentos del proyecto y trabaja con el Propietario de Producto para maximizar el ROI. El Scrum Master se encarga de mantener Scrum al día, proporcionando coaching, mentoring y formación a los equipos en caso de que lo necesite.

«El trabajo del Scrum Master es guiar al equipo hacia la mejora continua – preguntar con regularidad: «¿Cómo podemos hacer mejor lo que hacemos?» – Jeff Sutherland

Propietario de Producto o Product owner (PO): Es el representante de las partes interesadas y de los clientes que utilizan el software. Se centra en la parte de negocio y es responsable del ROI del proyecto. Traduce la visión del proyecto al equipo, valida los beneficios en historias para incorporarlas al Product Backlog y las prioriza de forma regular. 

Equipo: Grupo de profesionales con los conocimientos técnicos necesarios que desarrollan el proyecto de forma conjunta llevando a cabo las historias a las que se comprometen al inicio de cada sprint.

Scrum Roles

Beneficios de la metodología Scrum

Scrum tiene muchas ventajas sobre otras metodologías de desarrollo ágil. Actualmente es el marco de referencia más utilizado y fiable en la industria del software. A continuación se presentan algunos de los beneficios conocidos de Scrum: 

Fácilmente escalable: Los procesos de Scrum son iterativos y se manejan dentro de períodos de trabajo específicos, lo que facilita que el equipo se concentre en funcionalidades definidas para cada período. Esto no sólo tiene el beneficio de lograr mejores entregables en línea con las necesidades del usuario, sino que también da la capacidad a los equipos de escalar los módulos en términos de funcionalidad, diseño, alcance y características de una manera ordenada, transparente y sencilla. 

Cumplimiento de expectativas: El cliente establece sus expectativas indicando el valor que aporta cada requisito/historia del proyecto, el equipo las estima y con esta información el Propietario de Producto establece su prioridad. De forma periódica, en las demos de los sprints, el Propietario de Producto verifica que se han cumplido los requisitos y transmite el feedback al equipo. 

Flexibilidad ante los cambios: Reacción rápida a los cambios en los requisitos generados por las necesidades del cliente o la evolución del mercado. La metodología está diseñada para adaptarse a los requisitos cambiantes que conllevan los proyectos complejos. 

Reducción del tiempo de comercialización: El cliente puede empezar a utilizar las funcionalidades más importantes del proyecto antes de que el producto esté completamente listo. 

Mayor calidad del software: El método de trabajo y la necesidad de obtener una versión funcional después de cada iteración, ayuda a obtener un software de mayor calidad.

Predicción oportuna:  Con esta metodología se conoce la velocidad media del equipo por sprint (puntos de historia), con lo que, en consecuencia, se puede estimar cuándo estará disponible una determinada funcionalidad que aún está en el backlog. 

Reducción de riesgos: El hecho de realizar las funcionalidades más valiosas en primer lugar y de conocer la velocidad con la que el equipo avanza en el proyecto, permite despejar los riesgos de forma eficaz y anticipada.

Eventos en Scrum  

Cada uno de los eventos de Scrum facilita la adaptación de alguno de los aspectos del proceso, el producto, el progreso o las relaciones. 

Sprint: El sprint es la unidad básica de trabajo de un equipo Scrum. Es la principal característica que marca la diferencia entre Scrum y otros modelos de desarrollo ágil. 

Planificación del Sprint: El objetivo del Sprint Planning es definir qué se va a hacer en el Sprint y cómo se va a hacer. Esta reunión se realiza al inicio de cada Sprint y se define cómo se va a enfocar el proyecto a partir de las etapas y plazos del Product Backlog. Cada Sprint se compone de diferentes características. 

Scrum Diario: El objetivo del Scrum Diario es evaluar el progreso y la tendencia hasta el final del Sprint, sincronizando las actividades y creando un plan para las próximas 24 horas. Se trata de una breve reunión que tiene lugar diariamente durante el periodo del Sprint. Se responden tres preguntas de forma individual: ¿Qué hice ayer? ¿Qué voy a hacer hoy? ¿Qué ayuda necesito?  El Scrum Master debe tratar de resolver los problemas u obstáculos que surjan. 

Revisión del sprint: El objetivo de la revisión del sprint es mostrar qué trabajo se ha completado con respecto al backlog del producto para futuras entregas. Se revisa el sprint terminado, y ya debe haber un avance claro y tangible en el producto para presentarlo al cliente. 

Retrospectiva del sprint: El equipo revisa los objetivos cumplidos del sprint terminado, anota lo bueno y lo malo, para no volver a repetir los errores. Esta etapa sirve para implementar mejoras desde el punto de vista del proceso de desarrollo. El objetivo de la retrospectiva del sprint es identificar las posibles mejoras del proceso y generar un plan para implementarlas en el siguiente Sprint.

«El objetivo de las retrospectivas es ayudar a los equipos a mejorar continuamente su forma de trabajar”. – Ben Linders

Artefactos de Scrum 

Los artefactos de Scrum están diseñados para garantizar la transparencia de la información clave en la toma de decisiones. 

Product Backlog (PB): El backlog del producto es una lista que recoge todo lo que el producto necesita para satisfacer a los potenciales clientes. Lo elabora el propietario del producto y las funciones se priorizan en función de lo que es más y menos importante para el negocio. El objetivo es que el propietario del producto responda a la pregunta «¿Qué hay que hacer?». 

Sprint Backlog (SB): Es un subconjunto de ítems del product backlog, que son seleccionados por el equipo para realizar durante el sprint en el que van a trabajar. El equipo establece la duración de cada Sprint. Por lo general, el sprint backlog se muestra en tableros físicos llamados Tableros Scrum – que hace que el proceso de desarrollo sea visible para todos los que entran en el área de desarrollo. 

Incremento: El Incremento es la suma de todas las tareas, casos de uso, historias de usuario, backlogs de producto y cualquier elemento que se haya desarrollado durante el sprint y que se pondrá a disposición del usuario final en forma de Software.

Scrum Task Board

Planificación en Scrum  

La Reunión de Planificación del Sprint se lleva a cabo al comienzo de cada Sprint. En la reunión participan todos los miembros del Equipo, es decir, el Propietario de Producto, el Scrum Master y todo el Equipo de Desarrollo. Todo el equipo Scrum debe entender y definir qué objetivo se debe obtener en ese Sprint (Sprint Goal). A partir de ahí el equipo de desarrollo debe diseñar un plan de trabajo para conseguir el objetivo. Esta planificación debe permitir ver si el objetivo del sprint implica una carga de trabajo acorde a la duración estipulada para los Sprints (que es de 2 a 4 semanas).

El cliente muestra el resultado que hay que conseguir en ese Sprint y los requisitos del producto entregable. Aquí hay que llevar a cabo una discusión en la que el equipo de desarrollo evalúa qué elementos de la lista se pueden entregar. 

Tanto el Scrum Master como el Propietario de Producto deben colaborar para aclarar cualquier aspecto de los requisitos. Por último, el equipo de desarrollo debe explicar cómo va a organizar el trabajo del equipo para lograr el objetivo del Sprint. 

Ahora que conoce mejor en qué consiste la metodología Scrum y cómo puede ayudarle, ¿le interesaría aplicarla en su empresa? Póngase en contacto con nosotros y le ayudaremos a transformar su proceso actual en uno mejor. 

También puede registrarse para una prueba gratuita de SwiftKanban que apoya los procesos de Scrum con un conjunto integrado de características y métricas de Scrum – para ayudarle a mejorar gradualmente sus procesos.

What is Scrum?

Life is Good When Your Agile Teams Are in Sync!

Contact us Today for a Custom Demo of SwiftEnterprise! Or Signup for updates below.

Request Demo