Llegamos a ustedes gracias a:



Columnas de opinión

7 mejores prácticas para equipos ágiles remotos

Por: Isaac Sacolick presidente de StarCIO

[15/04/2020] Las metodologías ágiles funcionan mejor cuando todos los miembros del equipo están juntos en un lugar. Cuando los equipos comparten un espacio de trabajo, es fácil para los compañeros de equipo hacer preguntas, emparejarse en tareas de programación y resolver problemas sin programar reuniones. El uso de tecnologías como las conferencias web, los chats grupales y el correo electrónico no es tan efectivo como las interacciones directas de persona a persona.

Dicho esto, las organizaciones pueden hacer que las metodologías ágiles sobresalgan con equipos remotos y distribuidos, pero requiere algo de trabajo y experimentación. Los miembros de los equipos deben encontrar el uso óptimo de las tecnologías y ajustarse a los estilos de comunicación para asegurar la productividad, la colaboración y la calidad del equipo.

Con el estallido de COVID-19, muchos equipos ágiles deben pasar de trabajar en oficinas a trabajar a distancia. Esta será una nueva experiencia para muchas personas que no han trabajado en casa durante una parte significativa de sus carreras, y para los equipos acostumbrados a las interacciones en persona. Además, algunos miembros del equipo pueden enfermarse o enfrentarse a otras dificultades debido a la creciente pandemia, por lo que los equipos ágiles deben adaptarse a una nueva forma de trabajo.

Este artículo es una sencilla guía destinada a ayudar a los miembros de los equipos y las organizaciones a hacer la transición de los equipos ágiles principalmente presenciales a los altamente distribuidos.

Elija el equipo, las herramientas y el espacio de trabajo adecuados

Si va a trabajar a distancia, asegúrese de que tiene un sistema que funcione para usted, su empresa y su equipo. Piense en ello como una mudanza de oficina e invierta el tiempo por adelantado para evaluar las opciones y asegurarse de que tiene todo lo que necesita para ser productivo, cómodo y en un espacio donde es menos probable que se distraiga.

Considere estas 12 consideraciones cuando trabaje a distancia por períodos prolongados que incluyan recomendaciones sobre las disciplinas de trabajo, el espacio de trabajo, el equipo, la red y las herramientas.

Algunos cambios que tendrá que hacer no se aclararán hasta después de que empiece. Si la conectividad es deficiente, es posible que deba reubicar el enrutador inalámbrico o cambiar a una conexión con cable. Es posible que la ubicación de su escritorio necesite ser ajustada si va a realizar muchas videoconferencias. Es probable que tenga que decirles a los miembros de su familia que se mantengan a distancia cuando esté trabajando.

Estar presente y conversar con los compañeros de equipo

Los equipos ágiles tienen éxito al equilibrar el tiempo dedicado a la colaboración, con el tiempo dedicado a los esfuerzos concentrados necesarios para la codificación y otras actividades de desarrollo. En la oficina, es un poco más fácil ver el enfoque de un compañero de equipo, y los equipos ágiles disciplinados encuentran maneras de evitar las distracciones y el cambio de contexto.

Cuando trabajan a distancia, los equipos tienen que estar en línea, pero también compartir su disponibilidad. Herramientas como Slack y Microsoft Teams permiten establecer el estado de disponibilidad, mientras que otras herramientas de colaboración permiten silenciar las notificaciones. El uso de la configuración del estado es de vital importancia cuando los equipos están abiertos a un horario de trabajo flexible.

Los equipos ágiles deben programar tiempo para las sesiones formales de colaboración y para hacer el trabajo de completar las historias de los usuarios, pero los miembros del equipo también deben participar en pequeñas charlas. Las personas responden de manera diferente a los momentos de estrés y al trabajo a distancia, por lo que es esencial que se comuniquen entre sí. Además, las personas tienen diferentes estilos de comunicación en línea y en persona, y existe una nueva oportunidad de hacer que más personas participen en las conversaciones en línea.

Los maestros de Scrum, los líderes técnicos y los propietarios de productos deben hacer regularmente preguntas al equipo sobre su nivel de comprensión de los requisitos, los bloqueos a su progreso y si hay algo que necesitan para mejorar su productividad y felicidad.

Por último, los scrum masters y los líderes técnicos de varios equipos deben estar en contacto regular entre sí. Sus experiencias y problemas en el manejo de sus equipos remotos probablemente no son únicos. Compartir cualquier aprendizaje sobre cómo están consiguiendo que sus equipos ágiles colaboren remotamente sin duda beneficiaría a todo el grupo.

Revisar los enfoques de los procesos ágiles

Los equipos ágiles que pasan a la colaboración remota no deberían tener que rediseñar su proceso o eliminar los procesos ágiles. Pero ir a distancia puede requerir que los maestros de scrum reconsideren cómo llevar a cabo la reunión, dependiendo del tamaño del equipo y las herramientas de colaboración disponibles.

Por ejemplo, los equipos en persona que miran la tabla de scrum durante el levantamiento diario, tendrán que idear una versión digital de este proceso. Si el equipo es pequeño e históricamente ha experimentado relativamente pocos bloqueos que impidan el trabajo en las historias de los usuarios, entonces podrán eliminar una reunión y reemplazarla por una reunión de chat programada.

Otras sugerencias para los equipos ágiles remotos:

  • Usar herramientas de pizarra digital para la planificación de sprints y sesiones de diseño
  • Establecer una videoconferencia en la web para las reuniones de compromiso
  • Seleccionar una persona para compartir la pantalla durante las revisiones de sprint
  • Utilizar encuestas o aplicaciones de código bajo para captar la retroalimentación en las retrospectivas

Comprometerse a asignaciones de equipo e individuales realistas

Los equipos ágiles que pasan de la colaboración en persona a la colaboración a distancia tienen que reajustar sus velocidades de sprint y revisar el nivel y la complejidad del trabajo al que pueden comprometerse y completar de forma realista. Los maestros de scrum y los líderes ágiles deben aplicar prácticas similares a las de los equipos ágiles recién formados, y permitir que los equipos se ajusten a las nuevas formas de trabajo.

Por ejemplo, no es aconsejable comprometerse con historias de usuarios complejas que requieren la contribución de varios miembros del equipo, porque algunos compañeros de equipo pueden no estar disponibles durante el sprint. De ser posible, estas historias deberían desglosarse en otras más pequeñas o retrasarse si el propietario del producto es capaz de quitarles la prioridad.

Del mismo modo, los equipos ágiles pueden evitar comprometerse con historias que dependan del trabajo de otros equipos. La colaboración adicional puede requerir un par de sprints para definirla para los equipos remotos recién formados.

Aumentar el nivel de documentación

Los equipos de desarrollo ágil dan prioridad al código de trabajo sobre la documentación inicial, pero eso no significa que no sea necesario documentar la arquitectura, las API y el código.

Los equipos que trabajan de forma remota durante largos periodos de tiempo pueden querer discutir los estándares de documentación y ver si se justifican esfuerzos más significativos. A veces, la documentación del código puede reemplazar algunas de las discusiones de implementación en persona sobre cómo funciona un módulo de código o cómo un compañero de equipo está abordando la deuda técnica.

Invertir en spikes, CI/CD, y abordar la deuda técnica

Los equipos que esperan trabajar a distancia durante períodos prolongados pueden encontrar más fácil centrarse en historias más técnicas en lugar de las que requieren interacciones con el propietario del producto y los interesados. Por ejemplo, la instrumentación de una experiencia de usuario de varios pasos implica la colaboración entre el propietario del producto, los diseñadores, los desarrolladores y los probadores. Puede resultar más difícil coordinar los debates o desarrollar una comprensión compartida de las necesidades del usuario final, cuando los equipos están empezando a trabajar a distancia.

Hay otras oportunidades de priorizar el trabajo que requieren menos colaboración y más concentración e innovación individual. La prioridad de los pequeños spikespara probar nuevas ideas es un ejemplo, especialmente si un desarrollador puede trabajar en una prueba de concepto corta con pocas interrupciones o cambio de contexto. Otra opción es dar prioridad al tratamiento de la deuda técnica a nivel de código, especialmente la refactorización de módulos de código, la adición de pruebas de unidad o la mejora de la gestión de excepciones. Una tercera opción es invertir tiempo para desarrollar o mejorar la automatización de la CI/CD.

Estas tareas más difíciles desde el punto de vista técnico también ayudan a los desarrolladores a concentrarse en completar un trabajo en áreas en las que ven los beneficios directamente.

Revisar las estrategias de despliegue y reducir los riesgos

Los equipos ágiles altamente colaborativos aprenden a trabajar juntos como los equipos de hockey de alto rendimiento. En el hockey, aunque el disco se mueve rápido y puede rebotar de forma errática, los jugadores utilizan una mezcla de jugadas diseñadas e improvisaciones que permiten tanto un juego defensivo fuerte como un juego ofensivo explosivo.

Ahora mueva a este equipo de un estadio cubierto y pídales que jueguen en un lago al aire libre, y necesitarán algo de tiempo para adaptarse a los elementos. Jugarán una defensa conservadora por un tiempo, hasta que se sientan cómodos con el nuevo entorno y recuperen su ritmo.

Lo mismo ocurre con los equipos ágiles y las organizaciones ágiles de múltiples equipos. Es cierto tanto si los equipos están trabajando en sistemas heredados, o construyendo aplicaciones en la nube usando las últimas prácticas de desarrollo.

Las condiciones que requieren que los equipos ágiles trabajen de forma remota probablemente afectarán a otros aspectos del negocio, como las operaciones, las expectativas de los clientes y la dinámica de la cadena de suministro.

Es posible que los clientes y los usuarios finales no deseen la misma frecuencia de despliegue, especialmente si esa frecuencia pone en peligro la fiabilidad o el rendimiento de la aplicación. Si tiene API que funcionan con los proveedores de su empresa, es posible que estos proveedores sean menos accesibles para participar en la prueba de los cambios. Si la aplicación de software está sujeta al cumplimiento o a la supervisión normativa, entonces puede resultar más difícil obtener las revisiones y aprobaciones necesarias.

Los equipos ágiles deben reconocer el conjunto más amplio de cambios que afectan al modelo de negocio, a los clientes y al entorno de trabajo de su organización. Los principios de la organización que impulsaron todo, desde la velocidad y la frecuencia del despliegue hasta los tipos de trabajo y las historias de usuarios a los que se les da prioridad, deberán ser revisados desde una nueva perspectiva operativa.

Una gran parte de ser ágil, y no solo seguir las prácticas ágiles, es reconocer cuándo y cómo cambiar.

Isaac Sacolick es el autor de Driving Digital: The Leader's Guide to Business Transformation through Technology, que cubre muchas prácticas como la agilidad, el desarrollo y la ciencia de los datos que son fundamentales para el éxito de los programas de transformación digital. Sacolick es un reconocido CIO social de primer nivel, un blogger de larga data en Social, Agile and Transformation y CIO.com, y presidente de StarCIO.