¿Es  tu equipos multifuncional? ¿Sabes por qué Scrum indica que los equipos deben serlo? ¿Sprint tras Sprint no eres capaz de entregar valor? En este post vamos a hablar del significado de equipo multifuncional. También hablaremos de las posibles dificultades en caso de que un equipo no sea multifuncional.

Equipo multifuncional

Un equipo multifuncional es aquel que tiene todas las características necesarias para realizar su trabajo. Eso no quiere decir que todo el equipo tiene que saber de todo. Aunque sí es ideal que las personas que forman el equipo sepan de más de una cosa. De esta forma es más sencillo que unos puedan ayudar a otros. 

Si nos vamos al caso extremo podríamos tener un equipo multifuncional de expertos. Es decir de gente que es muy buena solo en una cosa. Puede que en ciertas ocasiones sea necesario. Suponga por ejemplo una operación. Lo que cualquiera quisiera es que médico, enfermero y anestesistas sean los mejores en su campo. Esto conlleva que sepan poco o nada de otros campos. 

Como casi siempre la virtud está en el medio. Y en casi todos los casos lo ideal es tener un equipo multifuncional con personas desarrolladas en T. Es decir son buenos en una cosa y además saben un poco de otras.

Un gran equipo multifuncional

Para ilustrarlo pongamos el ejemplo de un partido de fútbol. En un equipo hay gente que puede jugar de delanteros, defensas, medios. Incluso hay gente preparada para hacer cambios y un entrenador. ¿Os imagináis que pasaría si no existiera alguno de estos perfiles?. Supongamos que se lesiona un jugador y hay que hacer un cambio, pero al faltar entrenador no son capaces de ponerse de acuerdo. El partido sigue y nadie salta al terreno de juego. O si a la hora de tirar un penalti nadie para lanzarlo.  Imaginemos también una final de la Champions League a falta de 10 minutos y perdiendo de uno. ¿Os imagináis a los defensas o al portero negándose a subir a rematar un córner por que no es su perfil.?

Pensad en vuestro equipo. Tiene la gente necesaria para hacer todo lo que necesita. Puede que no sean tareas propiamente de desarrollo. ¿Necesita un experto en Base de datos para optimizar las consultas? ¿Saben como realizar despliegues en producción? ¿Son capaces de encontrar soluciones técnicas a los requisitos de negocio?. Si las respuesta es que si plantéate ¿Son capaces de ayudarse unos a otros independientemente de su área de experiencia principal? ¿Todos pueden faltar sin que se produzca un desastre? Si has contestado a todo que si. Formas parte de un gran equipo multifuncional.

selección española celebra mundial

Cuando tu equipo no es multifuncional

Cuando un equipo no es multifuncional se suelen producir problemas a la hora de entregar valor. En muchas ocasiones complicamos las soluciones cuando lo ideal sería ampliar las responsabilidades del equipo para poder conseguir entregar valor. 

No se puede desplegar en un entorno productivo

Tras un gran Sprint llega la hora de la review y no podemos enseñar el incremento por que no tenemos donde ponerlo. Se ha desarrollado en los ordenadores del equipo pero no hay un servidor donde alojarlo.

Normalmente esto se soluciona mostrando el avance desde el ordenador de alguien del equipo. Esta solución de compromiso normalmente tiene una serie de inconvenientes. Por ejemplo no es posible realizar pruebas de rendimiento o de integración. Esto hace va aumentando la incertidumbre sobre el desarrollo ya realizado. Ya que una vez desplegado en un entorno productivo puede ser que haya problemas de rendimiento o integración. En este caso todo el desarrollo hasta la fecha se ve comprometido ya que puede ser necesario un cambio de arquitectura. 

Normalmente eso se intenta solucionar con un equipo encargado de proporcionar entornos productivos y gestionarlos. Estos equipos suelen atender muchas peticiones. Esto supone que estén sujetos a cambios de prioridades organizativas. 

¿Qué pasaría si el equipo de desarrollo fuera capaz tanto de crear como de desplegar en entornos productivos? Lo más probable es que el avance funcional iría inicialmente más lento. Esto es debido a que parte de su tiempo se dedicará a generar entornos y configurarlos. Eso sí, cada funcionalidad terminada quedará cerrada realmente. En  contra del caso anterior en el que debía de esperar para su correcta validación.

Existen dependencias externas

Nuestra aplicación tiene dependencias con otras que se están desarrollando actualmente. En este caso la solución suele pasar por mostrar datos simulados mientras  el sistema externo resuelve nuestra dependencia. 

Al igual que en el caso anterior esto imposibilita cerrar la funcionalidad. Además estamos poniéndole la zancadilla al empirismo. Esto se debe a que hay una parte de la funcionalidad que no terminamos y tan solo podemos suponer el coste que nos supondrá la integración. Una vez la integración esté liberada tendremos que empezar a comprobar si nuestras suposiciones son correctas. Mi experiencia me indica que no suele ser así. Normalmente subestimamos las integraciones. Esto puede llegar a producir que trabajo ya realizado se descarte por el coste de integración.

Por otro lado hay que sumar el coste que supone hacer algo con servicios simulados para luego deshacerlo cuando haya servicios reales. 

La forma más sencilla de solucionar esto es incorporar el desarrollo de esos servicios externos dentro de nuestro equipo. De esta forma las funcionalidades terminadas siempre serán con servicios reales. Además los posibles errores se solucionaran internamente evitando bloqueos debidos a terceros.

Conclusión

Muchos de las dificultades a las que se enfrentan hoy en días las organizaciones se solucionan con procedimientos y creación de departamentos. Esto supone un gran coste debido a retrasos y personas cuya labor es gestionar estas áreas. ¿No sería más sencillo ampliar las capacidades de los equipos? ¿No sería más sencillo dar capacidades a la gente que hace en lugar de ampliar el número de gestores coordinando áreas?

Enlaces relacionados

a great scrum master - un gran scrum master

Un gran Scrum Master

No podemos ignorar los cambios que están sucediendo en el mundo laboral actualmente, sobre todo estos nuevos roles que aparecen: ...
Leer Más
El evento o reunion Daily Scrum Meeting, te permite trazar un plan diaria y controlar los riesgos dia a dia

Daily Scrum parte 1/2

La Daily Scrum es uno de los eventos del marco de trabajo Scrum. La Daily consiste en reunirse todo el ...
Leer Más

 

¿Te ha gustado el post?

¡Valóranos!

Promedio de puntuación 4.7 / 5. Total de votos: 3

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

Si continuas utilizando este sitio aceptas el uso de cookies. más información

Los ajustes de cookies de esta web están configurados para "permitir cookies" y así ofrecerte la mejor experiencia de navegación posible. Si sigues utilizando esta web sin cambiar tus ajustes de cookies o haces clic en "Aceptar" estarás dando tu consentimiento a esto.

Cerrar