nexus: el exoesqueleto de desarrollo a escala con scrum

61

Upload: luis-antonio-salazar-caraballo

Post on 16-Apr-2017

951 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Nexus: el exoesqueleto de desarrollo a escala con Scrum
Page 2: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Esta presentación:

Nexus, el exoesqueleto de desarrollo a

escala con Scrum

en Ágiles 2016, Quito

http://bit.ly/nexusagiles2016

Page 3: Nexus: el exoesqueleto de desarrollo a escala con Scrum

NEXUS - SCRUM PROFESIONAL A ESCALA

Lucho Salazar

@luchosalazarc

El exoesqueleto de desarrollo a escala con Scrum Versión 3.0.0 20160925

Page 4: Nexus: el exoesqueleto de desarrollo a escala con Scrum

LUCHO SALAZAR

@luchosalazarc

[email protected]

wwww.gazafatonarioit.com

https://co.linkedin.com/in/luchosalazar

Page 5: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Miembro de Ágiles Colombia

• http://www.agilescolombia.org

• @AgilesColombia

• facebook.com/AgilesColombia

• Meetup.com/agilescolombia

Page 10: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 11: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 12: Nexus: el exoesqueleto de desarrollo a escala con 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

Page 13: Nexus: el exoesqueleto de desarrollo a escala con 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

Page 14: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 15: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 16: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 17: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Sin embargo…

Page 18: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc

Page 19: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 20: Nexus: el exoesqueleto de desarrollo a escala con Scrum

¿Qué tal si empezáramos con Scrum

antes de intentar ‘escalarlo’?

Page 21: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 22: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc

“Se necesitan dos para escalar”

-- Gunter Verheyen

Scrum a Escala

Scrum Profesional a Escala

Page 23: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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.

Page 24: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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)

Page 25: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 26: Nexus: el exoesqueleto de desarrollo a escala con 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

Page 27: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Un Equipo Scrum Haciendo su Trabajo

Lista de Producto

Page 28: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Algunos Equipos Scrum Haciendo su Trabajo

Lista de Producto

Page 29: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Lista de Producto

Muchos Equipos Scrum Haciendo su Trabajo

Page 30: Nexus: el exoesqueleto de desarrollo a escala con Scrum

• Personas (comunicación)

• Dominios del negocio y requisitos

• Tecnología

• Software

• Infraestructura

• Interna a los equipos

• Entre los equipos

• Externa

Dependencias

Dimensiones Dónde

Page 31: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Dependencias sin revolver aumentan costo

Agregar nuevas

características

Luchar contra la deuda técnica

Page 32: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Tu habilidad de escalar depende de tu

habilidad para:

– Manejar dependencias

– Integrar el trabajo en todos los niveles

– Crear Incrementos integrados

continuamente

Page 33: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 34: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Nexus

–sustantivo

\ˈnek-səs\

En español, Nexo \ˈnekso\

: una relación o conexión entre personas o cosas

Page 35: Nexus: el exoesqueleto de desarrollo a escala con Scrum

¿3-9 Equipos Construyendo un Producto? ¡Ayuda!

Incrementos (Integrados)

Equipos Scrum Lista de

Producto

Page 36: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Nexus™ – Un Exoesqueleto para 3-9 Equipos Scrum

Page 37: Nexus: el exoesqueleto de desarrollo a escala con 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

Page 38: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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.

Page 39: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 40: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 41: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 42: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 43: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 44: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 45: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 46: Nexus: el exoesqueleto de desarrollo a escala con Scrum

“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

Page 47: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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’

Page 48: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 49: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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!

Page 50: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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

Page 52: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Sobre mi enfoque Ágil…

Page 53: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

Page 54: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#CulturaÁgil #ÁgilEsAlgoQueEres

@luchosalazarc

Page 55: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Esta presentación:

Nexus, el exoesqueleto de desarrollo a

escala con Scrum

en Ágiles 2016, Quito

http://bit.ly/nexusagiles2016

Page 56: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#Á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

[email protected]

http://co.linkedin.com/in/luchosalazar

http://www.gazafatonarioit.com

Page 57: Nexus: el exoesqueleto de desarrollo a escala con Scrum

#ÁgilEsAlgoQueEres www.gazafatonarioit.com - Lucho Salazar @luchosalazarc

¿PREGUNTAS?

Page 58: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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]

Page 59: Nexus: el exoesqueleto de desarrollo a escala con Scrum

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/

Page 60: Nexus: el exoesqueleto de desarrollo a escala con Scrum

Información de contacto

• Luis Antonio “Lucho” Salazar-Caraballo

[email protected]

Page 61: Nexus: el exoesqueleto de desarrollo a escala con Scrum