“Sueña en grande y atrévete a fallar”
Norman Vaughan
Hoy quiero hablaros de Nexus como modelo de escalado, ¿por qué? Bueno, conozco más otros marcos como SAFE, DAD, incluso LESS. Nexus es de las que menos conozco, así que aprovecho a escribir el post, para también informarme de ello un poco.
Lo primero de todo, Nexus tiene su propia guía, te dejo aquí el enlacedonde poder descargarla. La tienes en múltiples idiomas, en audio, para leer online, vamos que no tienes excusa para no leerla.
Para empezar…
Nexus es un marco de trabajo para desarrollar y mantener iniciativas a escala de desarrollo de productos y software. Nexus usa Scrum como su componente básico.
Nexus es un marco de trabajo que consiste en roles, eventos, artefactos y técnicas que vinculan y entrelazan el trabajo de aproximadamente de tres a nueve equipos de Scrum que trabajan en un solo Product Backlog para construir un Incremento Integrado que cumpla un objetivo.
Estas son las definiciones oficiales de la guía. He de decir, que en mi último trabajo, a pesar de intentar haber escalado usando Less, al final se ha parecido más a Nexus, y tras tener un conocimiento un poco más profundo de este marco, la verdad que me parece muy interesante y muy lograda si todo se lleva bien.
Con Nexus, se presta mayor atención a las dependencias y a la comunicación y trabajo entre los diferentes equipos Scrum que entregan al menos un Incremento Integrado “Terminado” en cada Sprint.
Mostrando Nexus gráficamente
A continuación, ospongo una imagen de cómo funciona Nexus, es la típica que véis en cualquier lado si buscáis Nexus, prometo intentar y conseguir un dibujo de los mios super chulos (ironía) para mostrar medante facilitación gráfica el funcionamiento de Nexus, pero hasta entonces, os pongo este, mejor esto que nada =).
Los roles, eventos y artefactos de Nexus heredan el propósito y los atributos de sus correspondientes roles, eventos y artefactos de Scrum, y además se añade alguno más.
Particularidades de Nexus frente a Scrum
Aquí quiero contar las diferencias, o los añadidos para poder llevar a cabo Nexus, y que creo que son los más importantes. Ojo, pero como dije, aún estoy aprendiendo sobre esto, por lo que me puedo equivocar o me puede faltar algo.
En cuanto a los roles
En Nexus, a parte de los propios equipos de desarrollo, que bien dice en la guía que puede comprender entre 3 y 9 equipos, además añade un equipo más, llamado Equipo de Integración Nexus, el cual es responsable de asegurar que se produzca al menos un Incremento Integrado “Terminado” (el trabajo combinado completado por un Nexus).
Llaman un Nexus a todos los equipos Scrum que desarrollan incrementos. Este equipo consta de:
- El Dueño de Producto: es responsable de maximizar el valor del producto y el trabajo ejecutado e integrado por los Equipos Scrum
- Un Scrum Master: tiene la responsabilidad general de asegurar que el marco de trabajo Nexus se entienda y se promulgue.
- Uno o más Miembros del Equipo de Integración Nexus: se compone de profesionales de software que tienen habilidades en el uso de herramientas, distintas prácticas y en el campo general de la ingeniería de sistemas.
Las actividades comunes que un Equipo de Integración Nexus puede ejecutar incluyen acompañamiento (coaching), consultoría y generación de advertencias de dependencias y problemas entre equipos. También puede realizar el trabajo de la Lista de Producto
En cuanto a los eventos
En Nexus, seguimos tenemos una reunión de refinamiento, y continua hasta que los elementos de la Lista de Producto estén lo suficientemente independientes para que un Equipo Scrum individual pueda trabajar con ellos sin ocasionar conflictos excesivos.
También tenemos una planning, a la cual llaman Planificación del Sprint Nexus cuyo objetivo es coordinar las actividades de todos los Equipos Scrum en un Nexus para un Sprint individual.
La Planificación del Sprint Nexus se completa cuando cada Equipo Scrum haya finalizado los eventos de Planificación del Sprint individuales.
También tenemos una daily, es un evento para que representantes apropiados de los Equipos de Desarrollo Scrum individuales inspeccionen el estado actual de su trabajo.
La parte de a review, es más interesante, en vez de si, por ejemplo tenemos 5 equipos, en vez de tener una review por cada equipo, la review del Sprint Nexus reemplaza las reviews de Sprint de los Equipos Scrum individuales porque el Incremento Integrado completo es el foco para obtener retroalimentación de los interesados.
Para acabar, con la retrospectiva, estas constan de tres partes:
- La primera parte es una oportunidad para que representantes apropiados de todo un Nexus se reúnan e identifiquen problemas que hayan impactado a más de un equipo. El propósito es hacer que los problemas compartidos sean transparentes a todos los Equipos Scrum.
- La segunda parte consiste en que cada Equipo Scrum realice su propia Retrospectiva del Sprint como se describió en el marco de trabajo Scrum. Los equipos pueden usar los problemas encontrados en la primera parte de la Retrospectiva Nexus como insumo para sus discusiones de equipo. Los Equipos Scrum Individuales deberían concebir acciones para atender estos problemas durante sus Retrospectivas del Sprint individuales.
- La tercera y última parte es una oportunidad para que representantes apropiados de los Equipos Scrum se reúnan nuevamente y acuerden sobre cómo visualizar y rastrear las acciones identificadas. Esto permite al Nexus adaptarse como un todo.
En cuanto a los artefactos
Como en Scrum, vamos a tener un Product Backlog para todos los equipos. A esta lista, añade una más, la Lista de Pendientes del Sprint Nexus que es la composición de todos los elementos de la Lista de Producto de las Listas de Pendientes del Sprint de los Equipos Scrum individuales.
Y también un incremento Integrado representa la suma actual de todo el trabajo integrado por un Nexus.
Otras consideraciones
Podemos hablar de otras cosas, como la meta u objetivo del sprint. En Nexus, la Meta del Sprint Nexus es un objetivo establecido para el Sprint. Es la suma de todo el trabajo y las Metas del Sprint de los Equipos Scrum individuales dentro del Nexus.
También de la definición del DoD, en este caso el Equipo de Integración Nexus es responsable de una definición de “Terminado” que pueda aplicarse al Incremento Integrado desarrollado en cada Sprint. Todos los Equipos Scrum de un Nexus adhieren a esta definición de “Terminado”.
Terminando…
Bueno, hay variaciones y añadidos a la metodología de Scrum, no obstante, lo veo con bastante sentido común, seguiré indagando en esto, e intentaré certificarme o hacer algún curso, ya que alguien que sepa de verdad, me podrá enseñar más.
Espero que a aquellos que no supiéseis mucho, os alla aclarado algo más sobre el tema, y a los que, si sabíais, pues refrescar la información.
Como he dicho antes, una vez integrada toda la información que lea, intentaré hacer un dibujo explicativo, que gráficamente se pueda entender, y que englobe un poco todo esto contado, los artefactos, eventos, roles, etc.
Algún día, más adelante, que me empape de más, hare una comparación de todos los marcos que conozco, y cuál veo mejor para unas cosas o para otras.
Dicho lo cual… ¡Feliz miércoles!