.1
Equipos Ágiles DistribuidosDesde las Trincheras
Diego Fidel FerreyraCore Technologies Manager
.2
Agenda• Equipos distribuidos• Problemáticas Comunes
– Inicio de proyecto– Ejecución– Cierre y Mantenimiento
• Conclusiones• Preguntas y Respuestas
.3Equipos distribuidos
• Distribuidos y Dispersos
• ¿Porqué Equipos distribuidos?– Tercerización de una capacidad no crucial al
negocio– Por falta de capacidad– Por Costos
.4Proyectos Distribuidos
Región Actualmente HistóricoEstados Unidos 13 50+
Latinoamérica 6 40+
Europa 2 15+
• Equipo típico:• 1 líder• 2 developers• 1 tester• 1 analista funcional
.5Típico proyecto
7 equipos
4 equipos3 equipos
.6Equipos Distribuidos
• Diferentes…– Países
• Horarios, idiomas
– Culturas• Costumbres, modos de hablar
• Iguales…– Objetivos
.7Componentes de la Comunicación
¿Cómo asegurar la comprensión
entre los equipos si no están cara a
cara?
Según el psicólogo Albert Mehrabian, el lenguaje corporal y la voz tienen altísimo impacto en la comunicación de un mensaje
Solamente el 7% del mensaje corresponde a las palabras La interacción cara a cara sigue siendo el mejor canal
7%
38%55%
Comunicación
PalabrasVozLenguaje corporal
Non Verbal Communication, Albert Mehrabian, UCLA, 1971
.8Problemáticas por etapa
• Inicio de proyecto
• Ejecución
• Cierre y Mantenimiento
.9Inicio de Proyecto
• Aspectos de Estructuración– Comenzar chico, crecer a lo grande.– Equipos por funcionalidad.– Contemplar viajes periódicos en el presupuesto– Asegurar la comprensión de la metodología.– Asegurar la asignación de los participantes.
.10Inicio de Proyecto
• Aspectos de Gestión– Asegurar buenos medios de comunicación– Establecer calendario de días feriados– Negociar horarios de reuniones– Compartir fotos del equipo
.11Inicio de Proyecto
• Aspectos Técnicos– Unificar repositorio de código
• Deadlocks
– Integración continua– Estabilizar frameworks o plataformas a usar.– Herramientas accesibles por todo el equipo
.12Ejecución
• Aspectos de Gestión– Comunicar estado y avance más frecuentemente– PEDIR feedback explícitamente.– Generar viajes focalizados en atacar problemáticas
concretas y en mantener la relación– Fomentar el hacer preguntas.
.13Ejecución
• Aspectos de Análisis– Capacitar en el negocio, no sólo en aspectos
técnicos– Mail como último recurso– Trabajar en la definición de User Acceptance Tests.
• No sólo ayudan a validar requerimientos, ayudan a comprenderlos.
.14Ejecución
• Aspectos Técnicos– Respetar la integridad de los builds.
• La diferencia horario puede causar todo un día perdido.
– Checkin frecuente.• Si hay que hablar sobre el merge, hay mayores tiempos
involucrados
– Wikis y Blogs• Fundamental para inclusión de nuevos miembros.
– Solamente especificar las interfaces de servicios no alcanza.
.15Cierre y Mantenimiento
• Aspectos de Estructuración– Evolucionar a un modelo on demand
• Kanban por ejemplo– Definir un buffer de pedidos
• Planificar para lo general, manejar la excepción.
.16Cierre y Mantenimiento
• Aspectos de Gestión– Sobrecargas en ciertos roles.– En algunas ocasiones, 3 ambientes,
diferentes prioridades• Desarrollo• Testing • Producción
.17Conclusiones
• La comunicación cara a cara no se puede reemplazar.– Buenos medios de comunicación– Viajes periódicos.
• Herramientas:– Control de código compartido– Integración continua– Wikis, blogs.
• Humanizar la relación.
¿Tiene dudas, consultas o sugerencias?
Muchas Gracias por su atención.
¿Diego Fidel Ferreyra
Core Technologies Manager
www.huddle.com.ar
.19