Date post: | 06-Aug-2015 |
Category: |
Technology |
Upload: | scrumecuador |
View: | 125 times |
Download: | 1 times |
9
Complejidad Accidental
Complejidad Esencial
FRED BROOKS "No Silver Bullet — Essence and
Accidents of Software Engineering" 1986
11
“En lugar de que cada miembro haga cortes sobre el problema, uno sólo hace el corte y los demás le dan todo el soporte posible, lo que mejorará la eficiencia y productividad de toda la actividad”
F. Brooks, Cap2, The Mythical Man-Month 1975
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
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.
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
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 una tarea similar
Problemas del MOB• Navigators “Pasivos”.
• Puede no ser productivo para historias de usuarios simples.
• Los Drivers “Genios”
• Los Navigators “Teóricos que saben como resolver el problema”
• Si la visión de la empresa es Horas/Hombre, va a ser un desastre
• Problemas Técnicos
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.
• Se eliminan los silos de conocimiento.
• Nadie es indispensable en el equipo.
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.