¿Qué es Scrum? Conoce el Framework que agiliza el Trabajo en Equipo
Para llevar a cabo un proyecto resulta imprescindible que todo el equipo implicado conozca sus plazos de tiempo de entrega y sus tareas. Scrum es un marco de trabajo o framework que permite el trabajo colaborativo entre equipos y acelerar la entrega de valor al cliente en menores rangos de tiempo.
Se podría decir que scrum está estructurado para ayudar a los equipos a adaptarse a las condiciones cambiantes de forma natural, al igual que a los requisitos de los usuarios. Se integra el cambio de prioridades en el proceso y ciclos de lanzamiento breves para que el equipo aprenda y mejore constantemente.
Se trata de un concepto sencillo, pero a la vez difícil de entender y dominar del todo, por lo que vamos a resolver todas tus dudas en este artículo.
QUÉ ES ‘SCRUM’
Scrum es un marco de trabajo que se utiliza normalmente en equipos de desarrollo ágil de software, es decir, que lideran proyectos de gran responsabilidad e incertidumbre, aunque sus principios y lecciones se pueden aplicar a todo tipo de trabajos y ya se están expandiendo a otras industrias. Gracias a esto, los trabajadores pueden tratar problemas complejos adaptativos al mismo tiempo que entregan productos con el mayor valor posible en cuanto a lo que se refiere a creativa y productivamente.
En otras palabras, este framework, que permite la gestión de proyectos de forma ágil, anima a los equipos a autoorganizarse mientras abordan problemas; a aprender mediante experiencias; y a recapacitar sobre sus logros y errores para mejorar continuamente. Además, aporta a los trabajadores un conjunto de herramientas, reuniones y funciones que facilita la estructuración, coordinación y gestión del trabajo.
El proceso del framework de scrum sería el siguiente, cuyas partes vamos a ir conociendo a lo largo de todo el artículo:
CARACTERÍSTICAS
El marco de trabajo Scrum está dentro de las Metodologías Agile, es decir, una mentalidad de forma de trabajo que permite cambiar prioridades de cada fase del proyecto según los objetivos y necesidades del cliente porque está orientada a obtener resultados tangibles desde el principio.
Por lo tanto, algunas de las características que dan sentido a este marco de trabajo son:
- Compromiso: Para que este framework funcione tiene que contar con el compromiso de todos los trabajadores involucrados
- Coraje: Resolver problemas difíciles con valentía.
- Foco: Centrar los esfuerzos en objetivos realistas y alcanzables gracias a la organización del trabajo de forma consciente y sin dudas.
- Respeto: Valorar el esfuerzo y las ideas del resto de personas que forman el equipo sin tratar mal o creando entornos de trabajo conflictivos.
- Transparencia: El equipo debe conocer todo lo que ocurre o cómo ocurre, además de ser sincero y no ocultar nada sobre el trabajo ni los problemas que le surjan en el camino. La transparencia hace que haya una visión global y común del proyecto.
- Inspección: Los miembros del equipo revisan frecuentemente el progreso del proyecto para detectar posibles problemas. No hace falta que se haga a diario, sino de vez en cuando para comprobar que el trabajo se está sacando adelante.
ROLES EN EL EQUIPO
Para que el equipo de trabajo sea capaz de cumplir su objetivo, es decir, ofrecer resultados de calidad y entregar valor al cliente, es necesario que cada miembro sea capaz de organizarse de forma multifuncional y autodidacta.
Cada trabajador es responsable de unas tareas y tiene que finalizarlas en los tiempos acordados para que se produzca la entrega de valor del equipo completo y no se precise de la supervisión exhaustiva de otros miembros de la empresa.
Los tres roles principales en un equipo de trabajo Scrum son:
- Propietario de producto o Product Owner: Se asegura de que el equipo trabaje adecuadamente desde la perspectiva del negocio. Es la única persona que habla de forma continua con el cliente, por lo que tiene que conocer el negocio y el mercado a la perfección. Este perfil solo puede ser ocupado por una persona. Además, se responsabiliza de maximizar el valor del trabajo, que viene unido a la buena gestión del Product Backlog (que explicaremos más adelante).
- Facilitador o Scrum Master: Es el encargado de que se comprendan y se cumplan las reglas del marco scrum, es decir, es mayor especialista de scrum en el equipo. Elimina los inconvenientes o impedimentos para que se desarrolle el objetivo del sprint. Da la información necesaria y asesora al Product Owner y al equipo de desarrolladores.
- Equipo de desarrolladores: Formado por profesionales, recomendablemente de 3 a 9 personas, que se ocupan de realizar las tareas a las que ha dado prioridad el Product Owner. Son los únicos que estiman las tareas del product backlog. Es un equipo auto-organizado y multifuncional que dispone de habilidades transversales para realizar el trabajo, como diseño, pruebas, análisis, documentación, etc.
Puede interesarte: NEGOCIACIÓN: Di NO y aprender a priorizar
ARTEFACTOS
Para adentrarnos en este marco de trabajo, vamos a empezar identificando los tres artefactos de scrum. Artefacto se refiere a algo que fabricamos como, por ejemplo, una herramienta para solucionar un problema.
Es necesario que todos los miembros del equipo tengan una misma visión de los artefactos, de lo que ocurre dentro del proyecto. Los artefactos son tres:
1. Product Backlog o pila de producto
Es el listado dinámico de tareas, funciones y mejoras que reúne todo un proyecto, es decir, engloba los requisitos del mismo y suelen llamarse ‘historias de usuario’.
Examina y prioriza los requisitos desde la perspectiva del cliente. Comienza con una visión principal del producto y evoluciona durante el desarrollo del mismo. Aunque es un documento abierto, solo puede modificarlo el product owner, o lo que es lo mismo, el propietario o gestor de productos, porque es el que está siempre en contacto con el cliente.
2. Sprint backlog o pila del sprint
Es el grupo de tareas o requisitos que elige el equipo de desarrollo en el Sprint Planning junto con el plan para poder llevarlas a cabo durante un sprint. Este artefacto puede ser flexible y evolucionar durante un sprint.
3. Product Increment o Incremento de scrum
Es el producto final utilizable de un sprint, es decir, el resultado de sumar todos los elementos del Product Backlog completados durante el sprint actual, teniendo en cuenta también el valor de los sprints anteriores.
EVENTOS DE SCRUM
En este marco de trabajo existe un conjunto de eventos secuenciales o reuniones que los equipos de scrum deben realizar de forma periódica. Estos eventos son:
Sprint
Se trata del periodo de tiempo en el que el equipo trabaja para finalizar una cantidad de tareas establecidas. El sprint es el corazón de este framework y hacerlo de forma correcta potenciará la eficacia del trabajo y reducirá los problemas a la hora de lanzar el mejor software.
La duración de los sprints debe ser constante y estar definida por el equipo en función de su experiencia. La duración normal del sprint es de 2 a 3 semanas y se va ajustando al ritmo que lleve el equipo, siempre siendo lo más eficientes posible y sin relajarse. El máximo tiempo para un sprint es de 4 semanas porque si se alarga, el proyecto puede peligrar debido a que se corre el riesgo de perder feedback valioso con el cliente.
Cuando llega el final del sprint, el equipo debe presentar los avances del proyecto y el resultado, que debe ser un producto que pueda entregarse al cliente. Es recomendable que no se pongan objetivos en los sprints a no ser que se vea en peligro el éxito del proyecto.
Planificación de sprint
El equipo de scrum tiene una reunión de planificación de sprint justo al comienzo para identificar y establecer las tareas y el objetivo (Sprint Goal) que van a ser capaz de llevar a cabo durante el sprint. La primera reunión que se hace en el sprint puede durar hasta 8 horas para sprints de un mes.
El equipo, por un lado, decide qué se va a hacer en el sprint y se eligen las tareas del Product Backlog; y por otro lado, se decide cómo se va a hacer, para lo que se definen las tareas necesarias para poder completar cada ítem elegido del Product Backlog.
Scrum diario
Reunión fija dentro del sprint que tiene como máximo 15 minutos de duración para ver cómo va el estado del proyecto. El objetivo es que los empleados estén informados del trabajo de los otros, cuáles son los problemas que van surgiendo o que prevén encontrar y cómo lo resolverán.
La reunión se hace siempre en el mismo sitio y a la misma hora. Los perfiles que tienen que acudir a esta reunión de forma obligatoria son los desarrolladores y el Scrum Master, mientras que el Product Owner puede asistir de forma opcional. Si falta algún empleado de asistencia obligatoria, se pospone la reunión.
Si se quisiera ampliar algún tema deberá hacerse tras el scrum de ese día, sin interrumpir la dinámica.
Además, en esta reunión se hacen tres preguntas:
- ¿Qué hice ayer?
- ¿Qué voy a hacer hoy?
- ¿Hay algún impedimento que necesito que me ayuden a solucionar?
Revisión de sprint
Cuando finaliza el sprint, el equipo lo revisa para determinar el valor que se le va a entregar al cliente. Por lo tanto, en esta revisión se muestran los trabajos finalizados y su duración no debería ser mayor a 4 horas para un sprint de 1 mes y es la única a la que puede asistir el cliente.
Esta reunión es la única a la que puede asistir el cliente. El Product Owner hace una presentación de lo desarrollado hasta el momento y el equipo de desarrolladores muestra el funcionamiento. De esta manera, el cliente puede validar los cambios realizados y dar su opinión sobre nuevas tareas que el Product Owner tendrá que añadir al Product Backlog.
Retrospectiva del sprint
Después de la revisión del sprint, se hace una retrospectiva como último evento de scrum para que los miembros del equipo comuniquen sus impresiones sobre el sprint recién superado con el objetivo de mejorar la implementación del scrum. La reunión tiene un tiempo fijo de 3 horas para sprints de un mes.
Este evento le sirve de ayuda al equipo de desarrolladores para inspeccionarse a sí mismo y proponer mejoras para el siguiente sprint. Cuando acaba la retrospectiva comienza un nuevo sprint, por lo que las mejoras acordadas se aplican al día siguiente.
VENTAJAS Y DESVENTAJAS
Una vez sabemos cómo funciona Scrum, hablemos de sus ventajas y desventajas:
Ventajas de la metodología Scrum
- Reducción del Time to Market: El cliente puede empezar a utilizar el producto rápidamente antes de que esté totalmente terminado.
- Flexibilidad a variaciones: Se dispone de una gran capacidad de reacción para adecuarse a los nuevos cambios y exigencias que se produzcan en los requerimientos generados por las necesidades del cliente o del mercado.
- Incremento de la productividad: Se elimina todo lo relacionado con burocracia y se prioriza la motivación del equipo para que puedan trabajar de forma autónoma y eficiente.
- Mayor calidad del software: Se obtiene un software de alta calidad gracias a la metodología de trabajo y a la necesidad de llevar a cabo un trabajo funcional después de cada iteración.
- Predicción de tiempos: Se conoce la velocidad media del equipo por sprint gracias a este marco de trabajo, por lo que se puede estimar fácilmente cuándo se podrán usar determinadas funcionalidades que todavía están en el Backlog.
- Maximiza el retorno de la inversión (ROI): Se crea un software únicamente con las prestaciones que ayudan a un mayor valor de negocio gracias a la priorización por retorno de inversión.
Desventajas de la metodología Scrum
- Implementación complicada: Aunque el marco de trabajo scrum es fácil de aprender, resulta difícil de implementar porque requiere de un cambio de cultura muy elevado por parte de la empresa, es decir, debe de aplicarse tanto en los altos mandos como en los clientes del negocio.
- Falta de multidisciplinariedad: Puede resultar complicado encontrar a profesionales que sepan llevar a cabo todo el trabajo de un equipo, que sean multidisciplinares.
- Compromiso del equipo: En muchas ocasiones, los trabajadores tienden a realizar el trabajo eligiendo el camino más corto para cumplir el objetivo de un sprint, lo que no siempre ofrece resultados de calidad. La clave está en conseguir un equipo de trabajo comprometido y dispuesto a darlo todo para sacar adelante el trabajo de la manera más eficiente posible.
En resumen, el marco de trabajo o framework Scrum es especialmente útil cuando se trabaja en entornos de alta incertidumbre, en los que la probabilidad de que haya cambios durante el proyecto es alta. Si los requisitos no están claros, si el cliente tiene prisa en sacar un producto al mercado o necesita un MVP, Scrum es el framework perfecto. Este marco nos permite entregar un proyecto en varias partes funcionales e independientes entre sí, a un ritmo rápido y con capacidad de corregir errores en el momento.