mob programming como forma de auto organización de un equipo agile

24
MOB PROGRAMMING como forma de auto- organizacion de un equipo AGILE

Upload: oscar-amelunge

Post on 02-Jul-2015

157 views

Category:

Software


2 download

TRANSCRIPT

Page 1: Mob programming  como forma de auto organización de un equipo Agile

MOB PROGRAMMING como forma de auto- organizacion

de un equipo AGILE

Page 2: Mob programming  como forma de auto organización de un equipo Agile

Oscar Amelunge

Page 3: Mob programming  como forma de auto organización de un equipo Agile
Page 4: Mob programming  como forma de auto organización de un equipo Agile

• “ Where one person might be weak, someone else was strong.”

•“Si quieres ir rápido ve solo, si quieres ir lejos ve acompañado”

Page 5: Mob programming  como forma de auto organización de un equipo Agile
Page 6: Mob programming  como forma de auto organización de un equipo Agile
Page 7: Mob programming  como forma de auto organización de un equipo Agile
Page 8: Mob programming  como forma de auto organización de un equipo Agile
Page 9: Mob programming  como forma de auto organización de un equipo Agile
Page 10: Mob programming  como forma de auto organización de un equipo Agile

•Historia de usuario MUY CORTA•Historia de usuario MUY LARGA•Historia de usuario MUY, MUY MUY LARGA

Page 11: Mob programming  como forma de auto organización de un equipo Agile

MOB PROGRAMMING

“Mob programming is a software development approach where the whole team works on the same thing at the same time, in the same space, and at the same computer.”

Woody Zuill

Page 12: Mob programming  como forma de auto organización de un equipo Agile

Principle

“Treat each other with kindness, consideration, and respect.”

Page 13: Mob programming  como forma de auto organización de un equipo Agile

Practice

Driver/navigator pair programming adapted to work with the whole team

Page 14: Mob programming  como forma de auto organización de un equipo Agile

Practice

Timed Rotation

Page 15: Mob programming  como forma de auto organización de un equipo Agile

Practice

Practice: Whole Team

Page 16: Mob programming  como forma de auto organización de un equipo Agile

Practice:Reflect, Tune, and Adjust Frequently

Page 17: Mob programming  como forma de auto organización de un equipo Agile

Donde Aplicamos MOB

1. Historias de usuario que son muy grandes no se puede partir.

2. No todos los miembros del equipo son expertos en la historias de usuario o no tienen la habilidades para desarrollar toda la historia de usuario.

Page 18: Mob programming  como forma de auto organización de un equipo Agile

Historias Grandes

1. Brainstorming para generar ideas de por donde empezamos.

2. Dividir la historias(tareas) en posibles tareas (sub-tareas)

3. Empezar a trabajar las tareas menos claras.

4. Volver al paso 1 si las tareas son muy grandes

5. Codificar (Se recomienda TDD)

Recomendación: Tener siempre a mano al P.O. o experto del negocio

Page 19: Mob programming  como forma de auto organización de un equipo Agile

Falta de habilidades

1. Una tarea seleccionada es trabajada por un “driver expert”.

2. Los “navigators dummy” observan

3. Se termina la tarea y se discute y conceptualiza que se realice

4. “Borro todo el código” y el “navigator dummy” se vuelve a tartar de escribir todo.

4. El “navigator dummy” hace unatarea similar

Page 20: Mob programming  como forma de auto organización de un equipo Agile

Problemas del MOB

• Navigators “Pasivos”.

• Puede no ser productivo para historias de usuarios simples.

• Los Drivers “Genios”

• Los Navigators “Teoricos que saben como resolver el problema”

• Si la visión de la empresa es Horas/Hombre, va a ser un desastre

• Problemas Tecnicos

Page 21: Mob programming  como forma de auto organización de un equipo Agile

Beneficios• El código tiene el talento y el ingenio

de todo el equipo.

• Implícitamente se da el code review

• Si la empresa se enfoca en el valor de negocio es genial.

• Se genera un proceso de aprendizaje técnico y del negocio.

• Se optimiza la productividad al trabajar todos en una maquina.

Page 22: Mob programming  como forma de auto organización de un equipo Agile

Conclusiones

• Mob funciona cuando las personas se respetan, colaboran y están dispuestas a aprender y enseñar.

• Mob se nos da muy bien para trabajar historias de usuario Grandes y de alto valor de negocio.

• Mob facilito el proceso de aprendizaje de los miembros del equipo en el negocio o en lo tecnológico.

• Mob no siempre es bien visto por los directivos de la empresa

• Mob no es un SilverBullet.

Page 23: Mob programming  como forma de auto organización de un equipo Agile
Page 24: Mob programming  como forma de auto organización de un equipo Agile

@oscaramelunge

[email protected]

oscar.amelunge

bo.linkedin.com/pub/oscar-amelunge/