Todos los que se necesitan para entregar valor, trabajando juntos en estrecha colaboración.
Un equipo completo tiene a todos los que se necesitan para llevar una historia desde la idea hasta producción. No dispersos entre departamentos. No esperando a otros equipos. Todos, juntos.
Para software, esto típicamente significa:
El principio clave: sin transferencias. El trabajo no se "lanza por encima del muro" a otro equipo. Todos son responsables de la entrega completa.
¿Por qué? Porque las transferencias son donde muere la calidad. El desarrollador no entiende del todo lo que el diseñador pretendía. El tester no sabe qué casos extremos consideró el desarrollador. El equipo de operaciones no entiende por qué el código necesita esa configuración. Cada transferencia es una traducción, y las traducciones pierden información.
Un equipo completo no se trata solo de tener todas las habilidades presentes. Se trata de que todos se sientan responsables del producto final, no solo de su parte.
Un equipo completo es multifuncional—el equipo tiene todas las funciones necesarias. Pero los individuos no tienen que ser multi-habilidad (expertos en todo).
Podrías tener:
El equipo es multifuncional; los individuos tienen forma de T—profundos en un área, lo suficientemente amplios para colaborar.
Beneficios de las personas con forma de T:
XP fomenta el aprendizaje entre especialidades, no eliminar las especialidades por completo. El objetivo es la colaboración y la propiedad compartida, no la experiencia uniforme.
El equipo incluye 4 desarrolladores (2 frontend, 2 backend), 1 QA y acceso compartido a un diseñador. Los desarrolladores frontend pueden escribir código API básico; los desarrolladores backend pueden actualizar la UI. Todos pueden ejecutar el conjunto de pruebas.
Equipo de frontend, equipo de backend, equipo de QA y equipo de diseño todos trabajan en el mismo producto pero como grupos separados. El trabajo se acumula entre equipos. Nadie se siente responsable del producto final.
XP originalmente enfatizaba la co-ubicación física—todos en la misma sala. Aunque el trabajo remoto ha cambiado esto, el principio permanece: hacer el trabajo visible y la comunicación fácil.
Un espacio de trabajo informativo muestra:
Cualquiera que pase (o se una a una videollamada) debería poder entender el estado del equipo de un vistazo.
Equivalentes digitales para equipos distribuidos:
El objetivo no son las herramientas—es la transparencia. Todos deberían saber qué está pasando sin tener que preguntar.
XP funciona mejor con equipos pequeños: típicamente 5-9 personas.
¿Por qué pequeños?
Si necesitas más capacidad, considera:
Escalar XP es un tema en sí mismo. La idea clave: no hagas equipos más grandes; haz más equipos. Mantén cada equipo completo y pequeño.
Si tu equipo es demasiado grande para caber alrededor de una mesa de almuerzo, probablemente es demasiado grande para XP efectivo.
Crear un equipo completo a menudo requiere cambio organizacional:
Paso 1: Identificar todas las habilidades necesarias Mapea el camino desde la historia hasta producción. ¿Quién está involucrado? ¿Qué transferencias existen?
Paso 2: Reunir a las personas Mueve a las personas (física u organizacionalmente) a un solo equipo. Esto puede requerir negociación con otros gerentes.
Paso 3: Definir objetivos compartidos El equipo tiene éxito o falla junto. No "los desarrolladores entregaron a tiempo pero QA encontró bugs" o "el diseño fue genial pero los desarrolladores no pudieron construirlo."
Paso 4: Construir habilidades cruzadas con el tiempo Trabaja en pareja entre especialidades. Haz que los testers trabajen en pareja con desarrolladores. Haz que los desarrolladores hagan tareas de operaciones. Difunde el conocimiento gradualmente.
Espera resistencia. Los especialistas pueden sentirse amenazados. Los gerentes pueden perder "su" gente. La organización puede no estar lista. Los equipos completos requieren aceptación organizacional, no solo cambio a nivel de equipo.