¿Agile y distribuido?

54
Gestión de proyectos ágiles distribuidos CEIN 25 de Mayo de 2010 Jorge Uriarte Aretxaga Gailen Tecnologías http://www.gailen.es

description

Slides de base para charla en CEIN el 25/05/2010

Transcript of ¿Agile y distribuido?

Page 1: ¿Agile y distribuido?

Gestión de proyectos ágiles distribuidos

CEIN

25 de Mayo de 2010Jorge Uriarte AretxagaGailen Tecnologíashttp://www.gailen.es

Page 2: ¿Agile y distribuido?

Si todo aprendizaje es un viaje...

Gailen – Work 2.0http://www.gailen.es© http://www.flickr.com/photos/fracturedfotos/

Page 3: ¿Agile y distribuido?

...hablemos desde la experiencia

Gailen – Work 2.0http://www.gailen.es© http://www.flickr.com/photos/elishams/

Page 4: ¿Agile y distribuido?

...hablemos desde la experiencia

Gailen – Work 2.0http://www.gailen.es© http://www.flickr.com/photos/elishams/

Gailen – Work 2.0http://www.gailen.es

2003 – Fábrica de Java de una factoría near-shore de una utility multinacional

2004 – Inicio macro proyecto migración (300ppl, 2 años, Bilbao, Madrid, Málaga, Buenos Aires)

2005 – BATACAZO

2006 – Equipos producivos, perfiles más caros, mayor rentabilidad... ¿cómo?

2008 – Experiencia como servicio GAILEN

Page 5: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

¿Por qué distribuidos geográficamente?

© http://www.fanpop.com

Page 6: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

Atentando contra el Manifiesto

Page 7: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

Atentando contra el Manifiesto

Page 8: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

¿Razones para el crimen?

Page 9: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

¿Razones para el crimen? (1)

Distribución del clienteOrganización distribuidaEspecialización de sedes por mercado,

canal, …Ejemplo:

• Cliente USA• Proxy del cliente en Méjico• Desarrollo en Barcelona• Testing en equipo en India

Page 10: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

¿Razones para el crimen? (2)

Distribución del equipo técnicoOrganización distribuida¿Decisión a priori? Fusiones,

adquisiciones, mercados,...Ejemplo:

• Desarrollo web y cliente en Bilbao

• Desarrollo host en Madrid• Arquitectura y central IT en

Barcelona

Page 11: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

¿Razones para el crimen? (y 3)

Page 12: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

¿No teníamos suficiente dificultad?

Page 13: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

¿No teníamos suficiente dificultad?

Page 14: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

Modelos base de equipos distribuidos

© http://www.flickr.com/photos/toniblay/

Page 15: ¿Agile y distribuido?

Modelos base en outsourcing (1)

Gailen – Work 2.0http://www.gailen.es

© http://www.flickr.com/photos/toniblay/

Outsourcing clásico del desarrolloCliente en “local”Equipo completo

remoto (a 5km o a 8.000km)

Page 16: ¿Agile y distribuido?

Modelos base en outsourcing (y2)

Gailen – Work 2.0http://www.gailen.es

© http://www.flickr.com/photos/toniblay/

Outsourcing parcial a factoríasColaboración

entre equipo “local” y “remoto”

Correspondencia jerárquico-geográfica

“Pídeselo a la fábrica”

Page 17: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

Riesgos generales (1)

¿Alineación de objetivos?

Multiplicación del “waste”

“El código justifica el trabajo”

Sobrecarga de supervisión

horas/hombre/tarifa/tarea

Page 18: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

Riesgos generales (2)

Sobrecarga del “equipo local”

Responsabilidad no compartida

“Si lo hacen en China... ¿vosotros qué hacéis?”

Page 19: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

Riesgos generales (3)

Guerra abierta por el pan de cada día...

Page 20: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es

Riesgos generales (y 4)

...y desplazamiento de la satisfacción laboral → DESMOTIVACIÓN

Page 21: ¿Agile y distribuido?

Distribuido, sí. ¿Ágil?

“trabajo con una factoría que hace Scrum”

¿Factoría o equipo?¿Personas o pool?¿Trabajan conmigo o para

mí?¿Release early? ¿Sprints?¿hecho, HECHO?¿Haces *tú* Scrum con el

equipo? Gailen – Work 2.0http://www.gailen.es

Page 22: ¿Agile y distribuido?

Estrategias de Scrum distribuido (Sutherland)

Gailen – Work 2.0http://www.gailen.es

Page 23: ¿Agile y distribuido?

Estrategias de Scrum distribuido (Sutherland)

Gailen – Work 2.0http://www.gailen.es

Equipos aisladosEquipos integradosEquipos combinados

Page 24: ¿Agile y distribuido?

Equipos aislados

Gailen – Work 2.0http://www.gailen.es

Modelo clásicoEl equipo hace Scrum en el site remotoNo hay Scrum entre sedes, o entre

“cliente” y “equipo”¿Es esto realmente “Agil” o “Scrum”?

Page 25: ¿Agile y distribuido?

Equipos integrados

Gailen – Work 2.0http://www.gailen.es

Cada equipo lleva su “Scrum”, y se integran por release/sprint

Eficiencia local, integración via “scrum de scrums”

Aislamiento funcionalSilos geográficos“Síndrome de la subcontrata”

Page 26: ¿Agile y distribuido?

Equipos combinados

Gailen – Work 2.0http://www.gailen.es

Estrategia “One Team”Miembros de cada equipo distribuidosRetos “para nota”:

¿Pairing distribuido? Comunicación continua

El ritual como salvación: Entrenar con pesas.

Responsabilidades *completas* de cada equipo

Page 27: ¿Agile y distribuido?

Estrategias de Scrum distribuido

Gailen – Work 2.0http://www.gailen.es

¿Es todo cuestión de distancia

o hay otros problemas?

Page 28: ¿Agile y distribuido?

Distancia

Gailen – Work 2.0http://www.gailen.es

Page 29: ¿Agile y distribuido?

Distancia

Gailen – Work 2.0http://www.gailen.es

Geográfica: Viajes, reuniones, costes asociados...

Temporal: ¿Hora del meeting? ¿Conciliación de vida

familiar?Cultural: ¿Qué entiendes por

“sí”? Te escucho Te entiendo Lo haré aunque no

funcionará

Page 30: ¿Agile y distribuido?

Distancia temporal

Gailen – Work 2.0http://www.gailen.es

Page 31: ¿Agile y distribuido?

Distancia temporal

Gailen – Work 2.0http://www.gailen.es

El desfase horario como VENTAJA Proyectos que “persiguen al

sol” Globalización del trabajo a

turnos¿”Tiempos Modernos” otra vez?

Page 32: ¿Agile y distribuido?

Distancia temporal

Gailen – Work 2.0http://www.gailen.es

Page 33: ¿Agile y distribuido?

Distancia temporal

Gailen – Work 2.0http://www.gailen.es

El contrapeso......de la INDUSTRIALIZACIÓN...

… es la SOSTENIBILIDAD

Page 34: ¿Agile y distribuido?

Distancia cultural

Gailen – Work 2.0http://www.gailen.es

Power Acceptance – Individualism – Masculinity – Uncertainty allowance – Long-term orientation

Page 35: ¿Agile y distribuido?

Distancia cultural

Gailen – Work 2.0http://www.gailen.es

Power Acceptance – Individualism – Masculinity – Uncertainty allowance – Long-term orientation

Page 36: ¿Agile y distribuido?

Otros tipos de problema

Gailen – Work 2.0http://www.gailen.es

Page 37: ¿Agile y distribuido?

Tipos de problema

Gailen – Work 2.0http://www.gailen.es

Estratégico: Recursos, personas, equipos, localizaciones, costes, ...

Gestión del proceso: Sincronización y consolidación

Mecanismos de comunicación efectivos a distancia

Page 38: ¿Agile y distribuido?

Tipos de problema

Gailen – Work 2.0http://www.gailen.es

Culturales: Conflictos, diferentes perspectivas y costumbres

Técnicos: Formatos, intercambiabilidad, entorno de trabajo común, reproductibilidad...

Page 39: ¿Agile y distribuido?

¿Soluciones?

Gailen – Work 2.0http://www.gailen.es

Page 40: ¿Agile y distribuido?

Reforzar el ritual

Gailen – Work 2.0http://www.gailen.es

Los rituales sencillos son suficientes...

...pero necesitan disciplina...

...y en ocasiones elementos que los refuercen

Page 41: ¿Agile y distribuido?

Reforzar el ritual para la distancia

Gailen – Work 2.0http://www.gailen.es

Planning meeting ¿Planning poker

remoto? Reducir las reuniones,

dividir sesiones

Scrum diario Rápido: "X e Y, lo

habláis y lo decidís"

DemoRetrospectiva: el

hermano pobre No "evaluar a la

contrata"

Page 42: ¿Agile y distribuido?

¿People over process? Process helping people

Gailen – Work 2.0http://www.gailen.es

“Lo siento, pero vas a necesitar...”

Más planificación previa Visión general compartida

Más arquitectura previa Patrones y estructura técnica

compartida

“... la justa, pero no más”

Page 43: ¿Agile y distribuido?

¿People over process? Process helping people

Gailen – Work 2.0http://www.gailen.es

“Lo siento, pero vas a necesitar...”

Más documentación Soporte de

comunicación/conocimiento

Más *charlas de café* Comunicación lateral, llamadas

fuera de reunión, "pairing"

Escalabilidad de la supervisión Portfolio Management,

consolidación

... la justa, pero no más”

Page 44: ¿Agile y distribuido?

It's all about communicating

Gailen – Work 2.0http://www.gailen.es

Page 45: ¿Agile y distribuido?

It's all about communicating

Gailen – Work 2.0http://www.gailen.es

Perfiles en común, mejor si se conocen

“¿Alguien querría ir a vivir medio año a...?”

Ni supervisores ni aprendices; sembrar equipo

No se trata de enseñar, se trata de “conectar”

Page 46: ¿Agile y distribuido?

It's all about communicating

Gailen – Work 2.0http://www.gailen.es

Listas de correo y wikis, docs técnicos, patrones.... *comunes*

Repositorio único, responsabilidad compartida

"Necesitamos una rama para..." ¿Seguro?

"Tengo unos cambio preparados pero no los he subido porque..." ¿Seguro?

"Mi vela está bien". ¿Cómo está el barco?

Page 47: ¿Agile y distribuido?

It's all about communicating

Gailen – Work 2.0http://www.gailen.es

“Code review” - difusión

Automaticas: Formas, criterios complejidad, usos prohibidos

Sesiones "Show me the code"

Comienza por el código sin cobertura

Comparte conocimiento

Democratiza la calidad

Page 48: ¿Agile y distribuido?

It's all about communicating

Gailen – Work 2.0http://www.gailen.es

Page 49: ¿Agile y distribuido?

It's all about communicating

Gailen – Work 2.0http://www.gailen.es

Page 50: ¿Agile y distribuido?

It's all about communicating

Gailen – Work 2.0http://www.gailen.es

Page 51: ¿Agile y distribuido?

¿Y esto funciona?

Gailen – Work 2.0http://www.gailen.es

Page 52: ¿Agile y distribuido?

¿Y cuesta?

Gailen – Work 2.0http://www.gailen.es

Page 53: ¿Agile y distribuido?

¿Y vale la pena?

Gailen – Work 2.0http://www.gailen.es

Page 54: ¿Agile y distribuido?

Gailen – Work 2.0http://www.gailen.es