S.C.R.U.M.
SCRUM es una metodología ágil de gestión de proyectos que se centra en equipos pequeños y colaborativos para desarrollar productos de manera iterativa. Se basa en la comunicación constante, la adaptación a cambios y la entrega frecuente de resultados, fomentando la eficiencia y la satisfacción del cliente.
Se resalta apropósito la comunicación constante, la adaptabilidad al cambio y la entrega constante de valor al cliente, porque son conceptos que deben ser interiorizados por todo el equipo SCRUM y stakeholders, pero claro, debe existir algo que para mi es esencial en un proyecto, la transparencia; transparencia en el avance, en lo que está pasando alrededor del proyecto, en los entregables, en la comunicación y todos los aspectos que rodean un proyecto.
Reflexión antes de iniciar
Antes de iniciar quiero que quede muy claro que la implementación de una metodología ágil, cualquiera que sea, esta relacionada directamente a la intención de las directivas por querer implementarla, si no es así, será un camino muy difícil de llevar. Las metodologías ágiles no hacen que las personas piensen mas rápido, o el desarrollador cree soluciones complejas de forma rápida, por eso una metodología ágil nunca debe ser comparada con velocidad.
Una metodología ágil permite trabajar con equipos auto-organizados, auto-motivados, enfocados en un objetivo organizacional, colaborativos, y lo mas importante, es un equipo que esta entregando valor al cliente y está dispuesto a cambiar sus prioridades rápidamente a partir de condiciones reales de cambio, porque están concientes del producto o servicio en el que están trabajando.
Principios de SCRUM
A continuación se relacionan de manera resumida los principios de SCRUM. Estos son fundamentos básicos para implementar la metodología. Una de las caracteristicas importantes es que no solo aplican para proyectos de software, esto lo puedes aplicar a cualquier tipo de proyecto.
- Control del proceso empírico: En SCRUM no tenemos una planificación detallada del proyecto.
- Control: Este control se basa en tres pilares:
- Transparencia: Que toda la información del proyecto este visible para el equipo.
- Inspección: Revisar y obtener retroalimentación constante.
- Adaptación: Mejora continua basada en los resultados de la inspección.
- Artefactos:
- Visión del proyecto.
- Product Backlog
- Sprint backlog
- Incremento (Definition of Done)
- Reuniones:
- Review
- Dailys
- Radiadores de información:
- BurndownChart
- Scrumboard
- Control: Este control se basa en tres pilares:
- AutoOrganizado: Caracteristicas de un equipo SCRUM:
- Motivación propia
- Mayores responsabilidades
- Liderazgo funcional
- Abiertos a nuevos aprendizajes.
- Entrega de resultados tangibles.
3. Colaboración: El trabajo siempre se hace de la mano de los stakeholders y el cliente.
4. Priorización: Basada en el valor. Para ellos se utilizan diferentes metodología de priorización, dentro de las mas conocidas están:
- Cuatro cuadrantes (Urgente, importante, delegar y no hacer)
- MoSCoW
- WSJF
5. Time-Boxing: Se definen los siguientes tiempos por ceremonias. (Estos son los tiempos mas usados)
- Sprint. De 1 a 6 semanas.
- Retrospective. 4 horas
- Daily. 15 minutos cada día
- Planning. 8 horas antes de cada sprint.
- Review. 4 horas cada sprint.
6.Desarrollo iterativo y progresivo de entregables. El modelo es mas flexible , permitiendo incorporar cambios que solicite el cliente.
Release plan
El release plan tiene como resultado al final del ejercicio un MVP y uno o mas releases en los cuales se irán trabajando historias de usuario en cada sprint.
Agile inception: (Impact mapping)
User Story mapping.
La forma de llevar esta sesión se da en 3 pasos:
- Desglosar: A partir de los «qué» identificados en el impact mapping, listamos todas las funcionalidades definidas. (product backlog). Cada una de las funcionalidades se deben desglosar en historias de usuario.
- Priorizar: Mi recomendación para este proceso es el método MoSCoW (Entérate mas ) en el cual se puede definir la importancia de cada una de las historias de usuario así: M (Must) que tiene que estar, S (Should) que debería estar, C (Could) que podría estar y W (WON’T) que queda descartado por el momento; con esta técnica el equipo de trabajo podrá determinar en conjunto las prioridades de cada una de las funcionalidades solicitadas.
- Definir versiones: Con base en la priorización, se determinará el MVP (Mínimo producto viable) que estará conformado por una o mas de las funcionalidades definidas por el equipo como MUST, seguida a esta las SHOULD y COULD con las cuales se conformaran los release iniciando en el release 1. Ver detalle Agile Inception
Liderazgo servicial
La gerencia de proyectos en sus diferentes colores y sabores, (Waterfall o alguna de las diferentes metodologías ágiles), llevan a un solo concepto, «Liderazgo Servicial». Cuando tienes a cargo la gerencia de un proyecto o de un portafolio de proyectos, lo que esperan las personas de ti, es que tu como project manager mantengas el orden, tomes decisiones, conviertas necesidades de usuarios en funcionalidades o productos finales exitosos, gestiones de manera correcta el tiempo del proyecto y de los recursos, y sobre todo que le des visibilidad al sponsor y stakeholders de lo que está pasando con los proyectos.