Llegamos a ustedes gracias a:



Columnas de opinión

5 preguntas a tener en cuenta sobre la planificación ágil de la capacidad

Por: Isaac Sacolick, presidente de StarCIO

[04/02/2022] El Manifiesto Ágil valora "los individuos y las interacciones sobre los procesos y las herramientas. Uno de los principios clave de los firmantes es: "las mejores arquitecturas, requisitos y diseños surgen de equipos que se organizan a sí mismos. Estoy de acuerdo con estos principios, pero soy pragmático acerca de cómo deberían ser los equipos que se organizan a sí mismos en la práctica, y cuánta autoridad para tomar decisiones ayuda a los equipos a lograr sus mejores resultados.

[Reciba lo último de CIO Perú suscribiéndose a nuestro newsletter semanal]

Por ejemplo, empoderar a un equipo para que seleccione su arquitectura y diseño ideales, puede optimizar el rendimiento del equipo; pero 20 equipos que administran arquitecturas independientes es muy problemático para la organización.

También creo que los procesos y las herramientas deben amplificar a los individuos y las interacciones. La captura del estado de las tareas pendientes, la categorización de las historias de los usuarios según los estándares y la documentación de las arquitecturas ayudan a mejorar la forma en que los equipos interactúan y reducen el tiempo de las personas en las reuniones.

Los equipos ágiles que se organizan a sí mismos deben planificar la capacidad

Un área a la que muchos equipos ágiles son reacios es la planificación ágil de la capacidad. La planificación de la capacidad significa diferentes cosas para diferentes personas, por lo que solicitar un análisis de la capacidad o planificar las brechas de habilidades requiere contexto. Además, las prácticas de planificación de la capacidad se desarrollaron a partir de disciplinas de gestión de programas e ingeniería de sistemas que algunos ven como prácticas que no son ágiles.

El desafío es que las necesidades de muchos equipos ágiles, como personas, tecnologías y asociaciones, requieren proyecciones a futuro debido al tiempo necesario para adquirir, incorporar e integrar. Los líderes ágiles deben ver la planificación de la capacidad como una oportunidad para mejorar la productividad, evitar la frustración, obtener apoyo para las inversiones de DevOps y reducir los bloqueos y las barreras a sus objetivos.

Otras veces, los equipos ágiles deben asociarse con las partes interesadas del negocio y brindar visibilidad a sus próximos entregables. La planificación de la capacidad es parte de esta ecuación porque puede afectar las velocidades y la productividad de los equipos. Si bien la adición de desarrolladores, el aumento de los recursos del sistema o la instrumentación de cambios en los procesos pueden no aumentar los resultados del equipo a corto plazo, estas cosas pueden proporcionar más flexibilidades a largo plazo. 

Diferentes contextos y análisis son parte de la planificación de la capacidad. A continuación, algunas preguntas cuyas respuestas necesitan de la colaboración de los equipos ágiles.

¿Cuánto trabajo puede completar el equipo en este sprint?

Los equipos que practican Scrum tienen como objetivo comprometerse con lo que pueden hacer durante el sprint y se esfuerzan por mantener una velocidad constante o creciente. Los equipos Kanban tienen un flujo de trabajo más fluido, pero sus partes interesadas aún desean comprender el pronóstico del equipo sobre las historias de los usuarios, solicitudes y tareas.

El primer nivel de planificación de la capacidad se realiza a nivel de equipo y ayuda, a los equipos ágiles a responder cuánto trabajo pueden terminar en un sprint o en un intervalo de tiempo breve. Los equipos ágiles basados en datos estiman su trabajo y, a menudo, usan puntos de la historia como una medida agregada de la complejidad y el esfuerzo del trabajo. La velocidad del equipo es el total de puntos de la historia del trabajo completado en un sprint, y esta métrica ayuda a los equipos a medir con cuánto trabajo pueden comprometerse de manera confiable al comienzo del sprint. Los equipos aprovechan los informes de trabajo pendiente (burndown reports) de los sprints para realizar un seguimiento de su progreso, y los maestros de scrum ayudan a resolver los bloqueos que impiden el progreso del equipo.

¿Cuántas funciones puede programar el grupo?

Estimar y medir la velocidad ayuda a los equipos a brindar resultados confiables en cada sprint, pero los propietarios de los productos y los líderes de negocio también quieren estimados de qué características y capacidades se desarrollarán e implementarán en las próximas versiones. Quieren saber la capacidad del equipo para lograr todas las características y capacidades priorizadas en las tareas pendientes.

Los equipos ágiles necesitan más que una planificación 'justo a tiempo' para estimar los lanzamientos. Un enfoque es usar una planificación continua ágil para estimar múltiples sprints de trabajo pendiente y usar esta estimación para debatir las prioridades y el alcance. Las grandes organizaciones que adoptan Scaled Agile Framework (SAFe) utilizan la planificación Program Increment para revisar la capacidad, planificar los sprints y comprender las dependencias del equipo.

Estos pronósticos de planificación y mapeo de rutas dependen de que los equipos calculen y mantengan una velocidad constante. Los sprints y la planificación a corto plazo son componentes importantes para los equipos ágiles que buscan colaborar con los líderes empresariales en la planificación de la capacidad.

¿Cuántas personas se necesitan?

La previsión de los sprints y los lanzamientos son enfoques tácticos ascendentes para la previsión, la planificación y el cumplimiento de las prioridades empresariales. Pero muchas organizaciones a menudo operan de arriba hacia abajo, con objetivos estratégicos identificados y líderes que hacen preguntas como:

  • ¿Qué habilidades y cuántas personas se requieren para alcanzar los objetivos estratégicos del negocio?
  • ¿Cuál es el cronograma previsto para completar el alcance de trabajo objetivo?
  • ¿Cómo pueden las inversiones adicionales en aprendizaje, personas, asociaciones o tecnología acelerar la línea de tiempo?
  • ¿Cuáles son los riesgos para el cronograma y qué pasos puede priorizar el equipo para mitigar los riesgos de alta probabilidad y alto impacto?
  • ¿Qué costos están asociados con diferentes escenarios de planificación?

Muchos equipos ágiles con los que he trabajado a lo largo de los años se estremecen ante estas preguntas porque son, inherentemente, no ágiles. Reunir a las personas en una sala para resolver estos problemas, desarrollar hojas de cálculo de pronóstico y producir escenarios de planificación desconectados de las realidades del desarrollo diario y el trabajo operativo puede parecer una pérdida de tiempo.

Pero tenga en cuenta que es a través de esta planificación que se toman las decisiones de negocio sobre las inversiones y las prioridades. Es mejor saber con anticipación que los encargados de tomar decisiones revisarán si se debe agregar un equipo, duplicar el número de personas con habilidades técnicas específicas, seleccionar socios de implementación o aumentar el alcance de un programa para abordar la deuda técnica.

¿Qué capacidad de sistemas se requiere?

La planificación estratégica a menudo se centra en las finanzas, las personas, las habilidades y los plazos. La planificación de la capacidad de los sistemas se centra en la infraestructura necesaria para desarrollar, probar, organizar e implementar nuevas capacidades. Algunas preguntas sobre la capacidad de los sistemas incluyen:

  • ¿Cómo puede el aumento del tamaño de los ambientes de prueba disminuir el tiempo necesario para ejecutar las pruebas automatizadas?
  • ¿Cuántos ambientes de desarrollo nuevos se necesitan cuando el equipo planea aumentar la cantidad de personas que desarrollan software?
  • ¿Deberían las operaciones adaptar la escala de la infraestructura o revisar la arquitectura debido al creciente uso de aplicaciones o al aumento del rendimiento de datos?
  • ¿Algún componente tecnológico llegará al final de su vida útil o requerirá actualizaciones importantes en el corto plazo?
  • ¿Los cambios en las regulaciones o el cumplimiento requerirán actualizaciones de aplicaciones o cambios en la arquitectura?

Responder a estas preguntas suele ser responsabilidad de los equipos de operaciones de TI o de arquitectura empresarial porque todas son áreas que afectan las prioridades de desarrollo. Los equipos ágiles también tienen la experiencia necesaria para evaluar las estimaciones de desarrollo, las dependencias y las opciones de implementación.

¿Qué tecnologías, cambios de procesos o asociaciones pueden mejorar la productividad?

La planificación estratégica y la planificación de la capacidad de los sistemas a menudo se llevan a cabo de arriba hacia abajo por departamentos como la oficina de gestión de programas, operaciones de TI, arquitectura empresarial, seguridad de la información, gestión de riesgos y otros. Pero los equipos de desarrollo ágil proactivos y las organizaciones DevOps cambiarán las cosas y se convertirán en voces activas en estos diálogos.

Los líderes empresariales quieren saber qué aumentará la velocidad del equipo, mejorará la productividad, facilitará el cumplimiento de los plazos, abordará las brechas de calidad o aumentará la frecuencia de implementación. Aproveche la capacidad de planificación para formular la "pregunta del equipo sobre lo que se necesita para tener más éxito y articular los beneficios de las inversiones.

Por ejemplo, la automatización de CI/CD (integración continua y entrega continua) e IaC (infraestructura como código) mejoran la confiabilidad de las implementaciones y también son pasos clave para aumentar la frecuencia de implementación. Vincular estas inversiones a los objetivos comerciales ayuda a alinear a los líderes comerciales sobre por qué y cuándo priorizar las prácticas de DevOps.

La próxima vez que los líderes empresariales y de TI programen una reunión de planificación estratégica y deseen analizar la capacidad, piense en lo que los desarrolladores deben cumplir con las prioridades de negocio y aborde las brechas de capacidad. La planificación de la capacidad puede ser beneficiosa para todos los equipos ágiles que desean madurar las disciplinas de planificación y estimación, pronosticar brechas de capacidad y priorizar sus recomendaciones.

Isaac Sacolick es el autor de Driving Digital: The Leader's Guide to Business Transformation through Technology, que cubre muchas prácticas como la metodología ágil, devops y ciencia de datos que son fundamentales para los programas exitosos de transformación digital. Sacolick es un reconocido CIO social, bloguero desde hace mucho tiempo en Social, Agile and Transformation y CIO.com, también es presidente de StarCIO.