nexus: el exoesqueleto de desarrollo a escala con scrum
TRANSCRIPT
Esta presentación:
Nexus, el exoesqueleto de desarrollo a
escala con Scrum
en Ágiles 2016, Quito
http://bit.ly/nexusagiles2016
NEXUS - SCRUM PROFESIONAL A ESCALA
Lucho Salazar
@luchosalazarc
El exoesqueleto de desarrollo a escala con Scrum Versión 3.0.0 20160925
LUCHO SALAZAR
@luchosalazarc
wwww.gazafatonarioit.com
https://co.linkedin.com/in/luchosalazar
Miembro de Ágiles Colombia
• http://www.agilescolombia.org
• @AgilesColombia
• facebook.com/AgilesColombia
• Meetup.com/agilescolombia
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Recordando el ayer…
Scrum de Scrums…
• Era el paso natural para escalar Ágil
• Reunión Diaria multiequipo
• No era una reunión de estatus
• Para identificar dependencias y tratar problemas de
integración entre los equipos
• Asistía un representante técnico de cada equipo
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Historias de la vida real
¿Cuál de los siguientes frameworks estás usando en tu organización?
• Lean (Software Development)
• Kanban
• DevOps
• SAFe
• DAD
• LeSS
• Serious LeAP™
• Tribal Leadership
• eXtreme Programming
• Scrum
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Historias de la vida real
¿Has estado involucrado en esfuerzos para escalar Scrum?
Levanta la mano si tu organización define ‘escalar’ como:
• Múltiples equipos trabajando en un producto
• Múltiples equipos trabajando en sus productos individuales
• Múltiples equipos trabajando en una suite de productos
integrados
• Un equipo trabajando en varios productos en paralelo
• Toda la organización TI adoptando Scrum
• Una transformación organizacional de 180º hacia Ágil
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Historias de la vida real
¿Has estado involucrado en esfuerzos para escalar Scrum?
Levanta la mano si tu organización define ‘escalar’ como:
• Múltiples equipos trabajando en un producto
• Múltiples equipos trabajando en sus productos individuales
• Múltiples equipos trabajando en una suite de productos
integrados
• Un equipo trabajando en varios productos en paralelo
• Toda la organización TI adoptando Scrum
• Una transformación organizacional de 180º hacia Ágil
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Scrum: diseñado para la complejidad
• Fomentar la creatividad
de las personas
• Controlar el riesgo
(Time-Boxing)
• Permitir el aprendizaje
validado
• Conducido por metas
• Exitoso en el
descubrimiento
• Entrega de valor
• Un entorno delimitado
para la acción
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Scrum: diseñado para la complejidad
TECNOLOGÍA
REQUISITOS
Simple Complicado
Complicado Complejo
CAOS
Lejos de la certeza
Cerca a la certeza
Cerca al Acuerdo
Lejos del Acuerdo
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
DNA de Scrum
Autoorganización
• Los componentes de un sistema interactuando con un único propósito hacia una meta compartida, evitando cualquier poder externo
Empirismo
• Las decisiones frecuentes de adaptación se basan en el conocimiento ganado vía la inspección y la experiencia
Sin embargo…
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
s c r u m p i d a Basado en estampida. 1. f. scrumpido. 2. f. Prisa repentina y frenética de empresas y organizaciones (pánico) para hacer Scrum porque quieren ser ágiles también. de escrumpida 1. loc. adv. Empezar a usar Scrum repentinamente y con
precipitación impetuosa. Agilizar, escalar de escrumpida.
Gazafatonario © Todo sobre Lenguaje, Lengua y Habla
¿Qué tal si empezáramos con Scrum
antes de intentar ‘escalarlo’?
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
La Esencia de Scrum
1. Un equipo saca
trabajo de una
Lista de
Producto
2. Cada Sprint
entrega un
Incremento
distribuible del
producto
Incrementos
Equipo Scrum Lista de
Producto
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
“Se necesitan dos para escalar”
-- Gunter Verheyen
Scrum a Escala
Scrum Profesional a Escala
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Definición de Scrum a Escala
• Cualquier implementación
de Scrum donde múltiples
Equipos Scrum construyen
un producto o un conjunto
de características de un
producto en uno o más
Sprints.
• Cualquier implementación
de Scrum donde múltiples
Equipos Scrum construyen
múltiples productos
relacionados o conjuntos de
características de productos
en uno o más Sprints.
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
La Esencia de Scrum
1. Un producto
tiene una Lista
de Producto
manejado por un
Dueño de
Producto
2. Múltiples
Equipos crean
Incrementos
integrados
Lista de Producto
Equipos Scrum
Incrementos (Integrados)
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
¿Cuáles son tus mayores obstáculos al
escalar Scrum, implementar Scrum a
gran escala?
Los desafíos de escalar Scrum
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
La integración del trabajo (o la ausencia de ella)
Código pobremente mantenido produce
EL EFECTO MEDUSA
Un Equipo Scrum Haciendo su Trabajo
Lista de Producto
Algunos Equipos Scrum Haciendo su Trabajo
Lista de Producto
Lista de Producto
Muchos Equipos Scrum Haciendo su Trabajo
• Personas (comunicación)
• Dominios del negocio y requisitos
• Tecnología
• Software
• Infraestructura
• Interna a los equipos
• Entre los equipos
• Externa
Dependencias
Dimensiones Dónde
Dependencias sin revolver aumentan costo
Agregar nuevas
características
Luchar contra la deuda técnica
Tu habilidad de escalar depende de tu
habilidad para:
– Manejar dependencias
– Integrar el trabajo en todos los niveles
– Crear Incrementos integrados
continuamente
Nexus Scrum Profesional a Escala
“Un hombre que toma un gato por la cola aprende algo que no puede aprender de otra forma”.
- Mark Twain
Nexus
–sustantivo
\ˈnek-səs\
En español, Nexo \ˈnekso\
: una relación o conexión entre personas o cosas
¿3-9 Equipos Construyendo un Producto? ¡Ayuda!
Incrementos (Integrados)
Equipos Scrum Lista de
Producto
Nexus™ – Un Exoesqueleto para 3-9 Equipos Scrum
Identifica y trabaja alrededor de las dependencias:
• Antes de que se haga el trabajo
• Continuo
• Persistente
• En todas las dimensiones
Revela dependencias que permanecen desapercibidas:
• Integración Frecuente
• Pruebas de aceptación
• Compilación y entrega continua
• Reduce la deuda técnica
Diseñado para Manejar Dependencias
Proactivo Reificación*
*Reificación:
Hacer que algo se vuelva real o hacer
que algo abstracto se vuelva concreto
Nexus Aumenta Scrum
Construido sobre los principios, valores y fundamentos de Scrum
• Crea rutas de comunicación
• Extiende y profundiza los mecanismos de inspección y adaptación
• Fomenta la transparencia continuada
• Depende en la inteligencia hacia arriba
Evita soluciones fijas y definidas que agregan sobrecostos.
Nexus - Roles, Eventos y Artefactos Roles Eventos Artefactos
Equipos de Desarrollo El Sprint Lista de Producto
El Equipo de Integración Nexus*
Planificación del Sprint Nexus* Lista de Pendientes del Sprint Nexus*
Dueño de Producto Planificación del Sprint Lista de Pendientes del Sprint
Scrum Master Scrum Diario Nexus* Incremento Integrado
Scrum Diario
Revisión del Sprint*
Revisión del Sprint
Retrospectiva del Sprint Nexus*
*Específico de Nexus
El Equipo de Integración Nexus • Un Equipo Scrum • Trabaja con la Lista de
Producto • Los Miembros están
tiempo completo o medio tiempo
• Su composición puede cambiar entre Sprints
• Se enfoca en las dependencias y en la facilitación de la integración
Prácticas de Scrum Profesional a Escala Dependencias Reificación
Equipos de Características Automatización de artefactos ALM
Microservicios Desarrollo conducido por pruebas
Metadatos de la Lista de Producto Integración continua de todo el trabajo
Refinamiento continuo de la Lista de Producto
Compilaciones frecuentes
Mapas de historias Pruebas Frecuentes
Mapeo de dependencias entre equipos de la Lista de Producto
Limited branching
Comunidades de práctica Descaling and Scrumble
La Arquitectura contiene experimentación Porciones de los elementos de la Lista de Producto componen los Pendientes del Sprint para ATDD
Desescalar • Escale con precaución • Adicione prácticas o
herramientas • Reduzca el ritmo
general, disminuyendo el número de equipos (o la velocidad) a un número más sostenible
• Limpie e integre el software actual para que se pueda compilar sobre él en futuros Sprints
Pro
du
ctiv
idad
Equipos
Scrumble • Cuando la deuda técnica, el
conocimiento del dominio y los resultados de las pruebas abrumen el progreso, haga ‘Scrumble’
• Scrumble es un periodo de duración desconocida y de reclutamiento de personal en el que se trabaja para lograr que el progreso se reinicie
• El reclutamiento debería minimizarse y el talento aplicado debería maximizarse
Equipos
Pro
du
ctiv
idad
Nexus interconecta 3-9 Equipos Scrum
que:
– Exhiban los principios y el DNA de Scrum
–Creen un Incremento de producto reificado
– Reduzcan sobrecostos, maximicen
resultados
Para implementar Nexus
• Empieza con Scrum
• Construye Nexus iterativa e incrementalmente
• Completa un incremento Nexus antes de adicionar más equipos
• Una buena implementación de Nexus fluye
• Promueve técnicas que fomenten el intercambio de conocimiento
• Permite que la autoorganización surja dentro del Nexus
Basado en ‘How to start a Nexus in practice?’ de Jerónimo Palacios
“El estado futuro de Scrum no se
llamará ‘Scrum’. Lo que ahora
llamamos Scrum se habrá
convertido en la norma y las
organizaciones se habrán
reinventado ellas mismas
alrededor de eso”.
Fuente: Gunther Verheyen, “Scrum – A Pocket Guide (A Smart Travel Companion)”, 2013
Qué nos ha enseñado la experiencia
• La cura a todos nuestros males no es ‘escalar Scrum/Ágil’, es crear soluciones que funcionen
• Las organizaciones tienen un amplio y complejo rango de necesidades de todo tipo que no pueden solucionarse por un único marco de trabajo para ‘escalamiento Ágil’
• Antes de pensar en escalar, curemos nuestras ‘disfunciones ágiles’
Qué nos ha enseñado la experiencia
• La transparencia debe magnificarse
• La deuda técnica se paga (¡debe pagarse!) en módicas cuotas iterativas
• No caigamos en las discusiones banales sobre cuál es el ‘mejor’ marco de trabajo para escalar Scrum o Ágil
Qué nos ha enseñado la experiencia
• Unas bases saludables de Scrum son el mejor camino al éxito antes de intentar escalar, de otra forma escalaremos nuestras disfunciones actuales
• Scrum por sí solo no es suficiente para el éxito
• Establecer, promocionar y apoyar la excelencia técnica como una base para el crecimiento es fundamental para Escalar Ágil
¡Son necesarias las prácticas técnicas!
Qué nos ha enseñado la experiencia
• Nexus se basa en Scrum cuya teoría se basa en el control empírico de procesos
– ¡Así que experimentemos!
• El Refinamiento es fundamental en Nexus
• No olvidemos el ‘estamos descubriendo formas mejores …’ del Manifiesto Ágil
La guía de Nexus Con mis grandes amigos Leonardo Agudelo y Jorge Abad (en la foto con su
adorable esposa) tuve la oportunidad de traducir al español la Guía de Nexus.
Leo
Lucho
Diana
Jorge
Sobre mi enfoque Ágil…
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Ágil significa reemplazar
la predictibilidad falsa
por la eficiencia
http://www.gazafatonarioit.com
Ágil significa reemplazar
la predictibilidad falsa
por la eficiencia
http://www.gazafatonarioit.com Lucho Salazar
#CulturaÁgil #ÁgilEsAlgoQueEres
@luchosalazarc
Esta presentación:
Nexus, el exoesqueleto de desarrollo a
escala con Scrum
en Ágiles 2016, Quito
http://bit.ly/nexusagiles2016
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
Acerca de Lucho Lucho Salazar: autor, conferencista, coach ágil,
experto en procesos y métodos de software,
incluyendo métodos y prácticas ágiles,
Ingeniería de Requisitos, Arquitectura de
software, Análisis y Diseño de software y
Gerencia de Proyectos. Sus artículos han sido
publicados por medios como Líder de
Proyecto, Asociación Española de Profesionales
en Dirección de Proyectos, Scrum Alliance y la
revista PROIECTUS, editada también en
España.
Lucho es autor de los libros “Asuntos de la
Ingeniería de Software”, Volumen I y Volumen
II. Es traductor al español de la guía oficial de
Scrum y la Guía Definitiva de Nexus; de los
libros de Ivar Jacobson “Casos de Uso 2.0” y “La
Esencia de la Ingeniería del Software: aplicando
el Kernel de Semat”.
Su blog sobre Cultura Ágil se puede leer
en http://www.gazafatonarioit.com. Lucho
también escribe poemas, su libro Ansiedad de
un Náufrago fue publicado en 2010.
@luchosalazarc
http://co.linkedin.com/in/luchosalazar
http://www.gazafatonarioit.com
#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc
¿PREGUNTAS?
Sobre el material utilizado
• Esta presentación se basa en el trabajo de Gunther Verheyen (@Ullizee) y otras personas de Scrum.org.
• Además de las referencias explícitas, esta presentación puede contener material o ideas de otras personas u organizaciones que omití sin intención.
• Nota: Trate de dar crédito a todos, pero si consideras que faltaste por que no te referencié o debo modificar algo de tu propiedad, por favor, no dudes en hacérmelo saber, contactándome a: [email protected]
Aviso de Copyright
• Eres libre de: – Compartir- copiar, distribuir y transmitir este trabajo
– Modificar- adaptar el trabajo
• Bajo las siguientes condiciones
– Atribución: debes atribuir el trabajo en la manera especificada por el autor o
licenciante (pero de ninguna manera que sugiera que ellos aprueban su uso del
trabajo).
• Nada de lo dispuesto en esta licencia menoscaba o
restringe los derechos morales del autor.
• Para más información ver http://creativecommons.org/licenses/by/3.0/
Información de contacto
• Luis Antonio “Lucho” Salazar-Caraballo