Integrando el enfoque de competencias en equipos de testers

  • Autor de la entrada:
  • Categoría de la entrada:Agile

Introducción

Cuando hablamos de manual testers y automation testers, dependiendo del proyecto en el que se encuentren y fundamentalmente, su marco de trabajo y madurez tanto del propio tester como del equipo, a menudo nos encontramos con equipos donde cada miembro está “encapsulado” en su rol. El tester manual se enfoca exclusivamente en ejecutar pruebas manuales, mientras que el automatizador se centra en la creación y mantenimiento de scripts de automatización. Este enfoque, aunque tradicionalmente efectivo, limita el potencial de colaboración y la capacidad del equipo para adaptarse a cambios rápidos o a resolver problemas complejos. Hay varios factores que pueden dar solución a este tipo de escenario.

Desarrollar competencias cruzadas

Para romper esta limitación entre los roles que se hayan definido entre los testers, es muy importante fomentar el desarrollo de competencias cruzadas. Esto no significa que todos los miembros del equipo deban ser expertos en todo, pero sí deben tener una comprensión básica de las áreas de conocimiento y trabajo de sus compañeros. Por ejemplo:

Testers Manuales

Pueden adquirir conocimientos básicos de automatización, por ejemplo:

  • programación (pseudocódigo, java, python)
  • github
  • gherkin
  • de cómo se estructuran los scripts para pruebas automatizadas
  • de cómo ejecutarlos. 

Adicionalmente puede ser de mucha utilidad que un tester automatizador le muestre el objeto de un caso de prueba que haya automatizado a partir del criterio de aceptación de una historia de usuario.

Este conocimiento permitirá que puedan identificar casos donde la automatización puede ser útil, y probablemente en poco tiempo puedan llevar a cabo una iniciativa con un tester automatizador, ya sea para realizar una verificación de testing de a pares como una ejecución de testing de a pares

Testers Automatizadores

Pueden aprender sobre técnicas de pruebas exploratorias, análisis de casos de prueba y cómo identificar escenarios donde las pruebas manuales son más efectivas. Este conocimiento le permitirá tener una perspectiva más amplia y así colaborar en la planificación de pruebas de manera más eficiente.

Esta situación es para aquellos testers automatizadores que parten desde el desarrollo de software y no cuentan con el conocimiento base de la práctica de testing.

Para este caso también aplica el último párrafo anterior, donde el acompañamiento es por parte del tester manual.

Reflexionando un poco

Es recomendable para que se pueden iniciar todas estas actividades, la presencia de un Líder Ágil de Testing (con el perfil de Líder Servicial bajo entornos en los que se practican las metodologías ágiles) para que que vaya acompañando a cada uno de sus testers en este crecimiento profesional, proponiendo y negociando con cada uno de los líderes de tribu y scrum masters de los equipos en los que participen, tiempos para capacitarse, practicar e implementar lo aprendido. Si se estuviera trabajando bajo el marco de Jira & Xray, se pueden crear issues del tipo tasks o bien subtasks durante los sprints

Fomentar la colaboración y la comunicación

La integración de las competencias también debe venir acompañada de una cultura de colaboración y comunicación, y de nuevo, aquí debe estar la presencia de un Líder Ágil de Testing que se ocupe de crear un roadmap y mostrarlo a todos los líderes de equipos, difundiendo la iniciativa

Reflexionando un poco

Aquí me detengo un poco para aclarar el porqué del uso del término “iniciativa”. 

El concepto de “iniciativa” está vinculado con el concepto de “KRs” que a su vez se relaciona con el concepto de “Objetivo” y todo nos lleva a una metodología de planificación denominada OKRs, que muy bien aplica a nuestra práctica profesional. Sobre este tema, he publicado varios artículos y lo seguiré haciendo.

Continuo con el tema principal del artículo.

Ocurre muchas veces y dependiendo del contexto del proyecto en el que se esté trabajando, que ciertas personas con un rol (función) muy específica, se ocupan sólo de sus tareas, es decir que se limitan a realizar las actividades que se ha definido para su rol. Esto puede ocurrir por muchos motivos y en ciertas ocasiones provocar retrasos, impedimentos y/o dependencias que podrían salvarse.

La cuestión aquí es cómo lograr superar este obstáculo.

¿Cómo lograrlo?

¿Cómo lograr inspirar la idea de que ampliándose el conocimiento a un tester manual y/o a un tester automatizador para que sepa cómo desempeñarse en el otro rol es un beneficio para todos y para el proyecto en definitiva?

Algunas opciones.

Trabajo de a pares: Reunir a testers manuales con testers automatizadores para que trabajen juntos en ciertas tareas. Por ejemplo, un tester manual podría trabajar junto a un automatizador en la creación de un script, aportando su conocimiento sobre el caso de prueba mientras aprende sobre automatización.

Revisiones cruzadas: Implementar revisiones cruzadas donde los testers revisen el trabajo de los automatizadores y viceversa. Esto no solo mejora la calidad del trabajo, sino que también amplía el conocimiento del equipo.

Alineación con prácticas ágiles como scrum

Scrum, con su enfoque en la entrega incremental y la mejora continua, es un marco que nos ayuda a implementar este enfoque de competencias. ¡Sólo es cuestión de elaborar una buena propuesta! Los OKRs nos pueden ayudar a ello.

Equipos multifuncionales en scrum

Scrum ya promueve la creación de equipos multifuncionales. Sin embargo, la multifuncionalidad no solo se refiere a tener un equipo compuesto por desarrolladores, testers y PO, sino también a que cada miembro del equipo tenga competencias cruzadas. Al integrar el enfoque de competencias, los equipos pueden responder de manera más flexible a las necesidades que surgen durante un sprint. Un ejemplo concreto sería durante el refinamiento del backlog:

En la planificación del sprint: Un tester manual podría identificar un conjunto de casos de prueba que deben ser automatizados. En lugar de esperar a que el automatizador lo haga todo, ambos podrían trabajar juntos para automatizar los casos más críticos durante el sprint, asegurando que se cubran las prioridades del negocio.

Daily Scrum y Retrospectivas

Las daily scrum y retrospectivas son momentos clave para reforzar este enfoque. Durante las dailes:

Intercambiar competencias: Los testers pueden compartir lo que están aprendiendo de otras áreas, y esto puede incentivar a otros miembros del equipo a seguir su ejemplo. Las preguntas en las dailies pueden evolucionar desde “¿Qué hice ayer?” a “¿Qué he aprendido?” o “¿En qué más puedo ayudar?”.

En las retrospectivas, se puede evaluar cómo la integración de competencias ha ayudado al equipo a superar obstáculos o a mejorar la eficiencia en el sprint. Esto puede reforzar la importancia de seguir desarrollando estas competencias.

Flexibilidad en la asignación de tareas

En Scrum, la autoorganización del equipo es clave. Si los miembros del equipo poseen competencias cruzadas, la flexibilidad en la asignación de tareas se incrementa. Esto significa que si un tester automatizador termina su tarea antes de tiempo, puede ayudar en pruebas manuales críticas, y viceversa. Esto no solo mejora la eficiencia, sino que también permite que el equipo entregue valor al cliente de manera más rápida y efectiva.

El enfoque según el libro “Agile Testing Condensed”

Tomé ideas para elaborar el contenido de este artículo del libro “Agile Testing Condensed” que me compré hace un tiempo escrito por Janet Gregory y Lisa Crispin. Te comparto un extracto del mismo relacionado con el tema tratado aquí.

Enfoque Holístico y T-shaped Skills:

Destaca la importancia de que los testers desarrollen un conjunto amplio de habilidades, no solo técnicas, sino también habilidades blandas y de negocio. Sugiere un enfoque holístico donde los testers combinen sus habilidades en formas que se adapten a contextos específicos, lo que es crucial para la integración de un enfoque basado en competencias .

Roles y Responsabilidades Diversificadas:

El rol del tester ha evolucionado más allá de la simple ejecución de pruebas. Los testers ahora se ven como un componente esencial dentro del equipo, contribuyendo en diversas actividades que incluyen la automatización, la exploración de la calidad desde diferentes ángulos, y la mentoría dentro del equipo. Esta diversificación de roles resalta la necesidad de que los testers posean competencias variadas que van más allá del testing tradicional .

Mentoría y Desarrollo de Competencias:

Enfatiza la importancia de que los testers actúen como mentores y consultores dentro del equipo, ayudando a otros miembros a desarrollar las competencias necesarias para realizar actividades de testing esenciales. Esto refuerza la idea de un equipo donde todos comparten la responsabilidad de la calidad, y donde los testers juegan un papel clave en la transmisión de conocimientos y habilidades .

Adaptabilidad y Evolución:

Menciona que los testers deben estar preparados para adaptarse a nuevos desafíos y oportunidades, lo cual requiere una actitud proactiva hacia el aprendizaje continuo y la experimentación. Esta adaptabilidad es fundamental para integrar un enfoque basado en competencias, ya que permite a los testers ajustar sus habilidades según las necesidades del equipo y del proyecto .

Énfasis en la Colaboración y Comunicación:

La colaboración y la comunicación son habilidades esenciales en el enfoque de competencias. Los testers deben facilitar la comunicación dentro del equipo, ayudar a resolver problemas y promover una cultura de calidad compartida. Estas competencias blandas son tan importantes como las habilidades técnicas en el contexto de equipos ágiles 

Reflexión que comparto

Integrar un enfoque basado en competencias en equipos de testers, y alinearlo con prácticas ágiles como Scrum, no solo enriquece la experiencia de los miembros del equipo, sino que también mejora la colaboración, la flexibilidad y la capacidad del equipo para adaptarse y superar desafíos. Esto se traduce en un equipo más cohesionado, una mayor satisfacción laboral y, lo más importante, en la entrega de un producto de mayor calidad.

¿Te entusiasma la idea? ¡Puedes lograr implementarla! Sólo es cuestión de preparar la propuesta y el plan de acción, y por supuesto, tener un líder ágil en testing y/o un sponsor que apoye todo ésto.

Good Testing! y puedes seguirme en LinkedIn donde publico habitualmente y puedes dejarme comentarios, compartirlo con tus amigos colegas y dejarme like si así lo consideras. 

Muchas gracias por seguirme.



Gus Terrera

Apasionado por el agile testing y la ia.