En mi vida profesional en desarrollo de software he enfrentado un gran número de situaciones y dificultades. Hay una que llama poderosamente mi atención y es constante en todo proyecto: La tecnología es siempre el menor de los problemas. Esto es lo que, de una u otra manera, encuentra solución todas las veces.

Algunos proyectos resuelven este problema y son exitosos; otros, aunque resuelven (o creen resolver) el tema tecnológico, continúan con mucha dificultad o fracasan totalmente. Sin embargo, muchos equipos insisten en enfocarse solo en el plano tecnológico con la esperanza de ser exitosos así.

Hace tiempo, cuando fallábamos en cumplir los deadlines, nos comprometíamos a hacerlo mejor en la siguiente. En las acciones planteadas para mejorar, siempre incluíamos “capacitación técnica”, porque estábamos seguros que era lo único que necesitábamos. Aprendimos muchas técnicas y herramientas, incluso dominamos varias, pero muy pocas veces logramos buenos resultados con hacer solamente eso. Así que comencé a observar el comportamiento de varios equipos. Te comparto algunas cosas que descubrí:

  • Los técnicamente expertos y talentosos daban buenos resultados trabajando solos. El integrarlos a un equipo solía ser catastrófico.
  • Algunos equipos obtenían resultados aceptables gracias al sacrificio de uno o dos integrantes.
  • Había equipos en los que no distinguías una superestrella, pero que cumplían todos sus deadlines con buena calidad.
  • Había equipos con un gran compromiso, un desempeño superior que, además, eran felices trabajando juntos.

En todos los casos, encontré que la influencia en los resultados provenía de cinco aspectos y en la capacidad de desempeñarlos bien o la ausencia de estos. Los llamamos “Drivers para el alto desempeño” y te cuento cuáles son.

Responsabilidad compartida

El resultado final del trabajo le pertenece a todos; por lo tanto, todos los miembros del equipo deben comprometerse para que éste sea exitoso y asumir su responsabilidad cuando no lo es. Además de las actividades propias de la creación del software, también se debe administrar el trabajo de desarrollo, y esta gestión no es realizada por un Project Manager o solamente una o dos personas: es una responsabilidad compartida.

Los equipos de alto desempeño comprenden claramente cuáles son las áreas de gestión que se deben desempeñar alrededor del desarrollo, definen Roles y nombran un responsable de desempeñar el rol (Role Manager). Cuando un equipo tiene responsables de rol y los intercambia con frecuencia, todo el equipo asume responsabilidades y el trabajo está siendo administrado correctamente.

Un síntoma de la ausencia de este driver en tus equipos es que las decisiones sobre el trabajo las hace solamente una persona. Otro síntoma frecuente es que, ante un mal resultado, varios miembros del equipo buscan librarse de la culpa en lugar de asumir responsabilidad y proponer mejoras.

Organización del equipo

Un equipo que entrega buenos resultados es disciplinado y autodirigido. Tiene la autonomía suficiente, que le permite tomar todas las decisiones respecto al trabajo que hace, cómo realizarlo, cómo planificarlo, cómo concluirlo y cómo conformar a sus integrantes. También define métodos de comunicación y colaboración, que utiliza frecuentemente para revisar y mejorar su trabajo.

Un síntoma de la ausencia de este driver en tus equipos es que, al inicio de un proyecto o una iteración (sprint), los integrantes no participan en el establecimiento de objetivos; si lo hacen, suelen ser conservadores y evitan retos ambiciosos.

Way of Work (WoW)

Varios dicen que un proceso definido es contraproducente en un trabajo creativo, como el software. La evidencia me ha mostrado lo opuesto: la ausencia de una forma de trabajo definida es una fuente de problemas. Los equipos de alto desempeño tienen una forma definida y documentada de cómo hacen su trabajo, incluso hay equipos que la definen para cada proyecto. Esta definición incluye los pasos que siguen, la información que recolectan, los estándares que aplican, los responsables, las políticas y acuerdos que todos se comprometen a honrar. Es el equipo mismo el que la define porque es adecuada para ellos y la mejora continuamente.

Un síntoma de la ausencia de este driver en tus equipos es que el proceso no les pertenece, sino que hay un grupo externo quien lo define y se convierte en “policía de procesos”, obligando a todos a cumplirlo solo porque así es como está definido.

Gestión de la calidad

Watts Humphrey, el padre de la calidad del software, me dijo una vez: La calidad del producto de software depende de la calidad del proceso que se usó para hacerlo. Parece una declaración sencilla, pero me llevó años comprenderla.

Verás, no es que la definición del proceso sea perfecta en el papel, sino en el cómo la gente hace el trabajo. Cuando todos los miembros del equipo priorizan la calidad, todas las actividades tienen estándares altos y se comprometen a alcanzarlos. Nadie delega la calidad a otro compañero o equipo.

Un síntoma de la ausencia de este driver en tus equipos es que entienden la calidad como una fase o un grupo (QA), al que le delegan todo el trabajo de aseguramiento de la calidad, en lugar de asumirla como un trabajo continuo.

Gestión de proyectos

La planificación, monitoreo, control, evaluación del estado del trabajo, asignación de recursos, manejo de stakeholders, etc., es trabajo que se hace para gestionar un proyecto. También es algo que ocurre diariamente en el desarrollo de software, por lo que es necesario hacerlo. Es mejor si todos los miembros del equipo cuentan con estas habilidades, pues se garantiza que la gestión fluye continuamente, sin interrupciones y las decisiones se toman oportunamente.

Incluso en los tiempos modernos, donde en software se habla que los equipos ya no hacen proyectos sino gestión de producto, todo el trabajo ocurre en “miniproyectos”, por lo que las habilidades propias de la gestión de proyectos, en cada individuo, es necesaria para la toma de decisiones.

Un síntoma de la ausencia de este driver en tus equipos es el tiempo muerto entre etapas y estaciones del trabajo, pues la planificación no se hace entre los miembros del equipo, sino que ésta se delega desde puestos gerenciales.

¿Quieres diagnosticar a tu equipo?

Desarrollar estos drivers para el desarrollo de software brinda todos los beneficios prometidos por la Filosofía Ágil. Por lo tanto, es una buena idea trabajarlo con tus equipos. Como un punto de inicio, diagnostícalos; utiliza este instrumento que desarrollamos y es de uso gratuito, en el cual te entregaremos un perfil y las áreas que se pueden mejorar. https://www.aprend-is.net/diagnostico-organizacional/

¡Hasta la siguiente entrega!

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.