miércoles, abril 22, 2015

¿Y por qué dudamos de la auto-organización de los equipos?

Hola a todos

Hay algo que he notado que es recurrente cuando he dictado entrenamientos o charlas sobre Scrum y es en específico el rol del TEAM /DEVELOPER TEAM / EQUIPO DE DESARROLLO / EL EQUIPO, la primera pregunta que surge por alguno de los presentes es:

¿y cómo logran que se vuelvan auto-organizados?

Es como si dudáramos de nuestra capacidad de

  • jugar en equipo
  • jugar fútbol, baloncesto, rugby, voleibol
  • armar un paseo
  • realizar un asado
  • preparar entre varios una cena
  • jugar un juego de mesa
  • entre otros.


Pero para ser franco, yo siento esa pregunta hecha desde el temor, desde la desconfianza, desde un lugar de la memoria o experiencia  donde a alguien (incluso el mism@ que lanzó la pregunta) que le encomendaron algo no lo entregó a tiempo y para acabar de ajustar todos se dieron cuenta que despilfarro el tiempo en otras cosas sin importancia que no le aportaban al objetivo.

Yo comprendo esos temores - he estado allí - , y es por eso que tal vez:

  • nos aferramos al comando-control, 
  • asignamos tareas
  • asignamos filas de Gantt (hechas en ms project) a diestra y siniestra
  • ponemos "recursos" (que en realidad son personas, y trabajadores del conocimiento), 
  • les imponemos un tiempo calculado por un experto (que no fueron ellos)
  • hacemos micro-seguimiento, o micro-gestión cada ciertas hroas
  • y si se demoran más les decimos que deben pagar o/y mirar como reponer el tiempo.
La verdad tiene sentido, nos han fallado, hemos fallado y nos dominan los temores, y esos temores nos llevan al lado oscuro [1] - como diría Yoda - (al de comando-control - ver más)


Pero Scrum tiene herramientas que enganchan, empoderan y comprometen al equipo:

  • un objetivo de construir cosas listas (Done) a corto plazo.
  • Un planning que establece compromisos
  • El review que verifica si se logró el compromiso o se quedó en deuda  -(ver más en :  La cara del santo hace el milagro. Efectividad del Planning y Review - )
  • la retrospectiva que con su inspección y adaptación nos lleva hacia nuevos retos, y nos saca de zonas cómodas.
  • y el Scrum Master, que es el agente de cambio que esta cuestionando, ayudando a que el Equipo Scrum ( Product Owner, Team Members, y Scrum Master) salga de su zona de confort

Yo veo Scrum, como un buen juego de equipo, como el fútbol que establece:

  • Cancha, roles, y arbitro //unas cuantas reglas claras ( 3 roles, 4 reuniones, 3 artefactos,  ver más),
  • personas que se divierten jugando // un equipo que se trabaja motivado
  • una táctica para ganar // un tablero kanban y un burndown que muestran lo que tenemos que hacer en un ciclo corto de tiempo y si podemos o no lograr la meta.
  • el deseo de meter gol //un objetivo común y claro "generar el mayor valor en el cliente con la menor cantidad de software posible, en el periodo más corto de tiempo"

Observo en los equipos de desarrollo y en especial de scrum la capacidad innata a auto-organizarse. y dudar de eso, es dudar del niño interior que llevamos dentro, de nuestra capacidad de inventar de poco a poco, de ir mirando como dentro de las reglas establecidas todos nos vamos adaptando, de como podemos jugar mejor sin romper las reglas y meter la mayor cantidad de goles/puntos/aciertos/historias de usuario posibles en un periodo de tiempo.

Es dudar de nuestra voluntad de querer hacer un muy buen el trabajo, de querer dar resultado en equipo, es dudar de la capacidad humana y tribal de relacionarse, trabajar juntos y de querer avanzar en conjunto.

Y si alguien no quiere jugar bien

Creo que todos en diferentes circunstancias cuando alguien no juega correctamente en equipo

  • en el partido de futbol/baloncesto/voleibol el equipo llama la atención del que no está conectado
  • en el asado si alguien solo esta allí para ser servido y no colabora "ni siqueira" a recoger, le llaman la atención o no lo siguen invitando
  • la tía regañona que daña el paseo o la cena juntos deja de ser invitada.

Los equipos al verse empoderados, cuestionan a los miembros que no ayudan en el objetivo común, y poco a poco los equipos van encontrando su forma, número, miembros,  modo, identidad y estilo; y es trabajo del scrum master lanzar las preguntas para que el equipo se conecte, reflexione, inspeccione, adapte y avance.

Cerrando

A mi modo de ver dudar de la auto-organización es dudar de nuestra naturaleza humana.

Cierro con esta frase :"La auto-organización no es una opción en Scrum; es un principio básico. Sin ella  nunca tendremos equipos de alta performance [2]




¿Ustedes que piensan? Queda abierta la discusión

Saludos Ágiles

Jorge Abad


----------
Otra lectura recomendada de este blog: Cualquiera puede ser ágil / Cualquier equipo puede ser ágil


--

[1] "El miedo es el camino al Lado Oscuro.
El miedo lleva a la ira.
La ira lleva al odio.
El odio lleva al sufrimiento.
El sufrimiento al Lado Oscuro.
Cuidado con el miedo, joven padawan." - Maestro Yoda

[2] Hundermark, Peter (traducido por Cyment, Alan) . Un mejor Scrum  -  http://www.scrumsense.com/wp-content/uploads/2012/03/Un-mejor-Scrum-2.pdf

martes, abril 14, 2015

Radioactividad de los requisitos - La necesidad de un enfoque ágil en la industria del desarrollo de software

Hola a todos

Hace poco recordé una lectura que había hecho sobre los requisitos, y hablaban que la vida media de ellos se había reducido con el tiempo (olvide la referencia en foro ágiles me dieron la ayuda - clic aquí - ) y notaba que estos se había convertido en radioactivos, o sea, estaban perdiendo valor en el tiempo.

La cita corresponde al artículo "Software Development: How the Traditional Contract Model Increases the Risk of Failure" de Susan Atkinson y Gabrielle Benefield - se los recomiendo -, el texto es el siguiente:

 "Recent studies, led by Al Goerner at the University of Missouri, Kansas City, demonstrate that the inherent value in Output-Based Requirements erodes exponentially over time. This rate of decay has been likened to the half-life of an unstable radioactive atom. The 'half-life' is the measure of the period of time it takes for the substance undergoing decay to decrease by half.

According to the studies carried out by the University of Missouri, the half-life of the value of the Output-Based Requirements has been rapidly decreasing. In 1980 this was around 10-12 years, by 2000 it had fallen to 2-3 years, and it is currently running at about 6 months.7

In other words, half of the Output-Based Requirements will become obsolete by the end of month 6, half of the remaining half (i.e. 1/4) will become obsolete by the end of month 12, half of the remaining quarter (i.e. 1/8) will become obsolete by the end of month 18, and so on. Hence, by the end of month 18, according to the University of Missouri studies, only 1/8 (i.e. 12.5%) of the Output-Based Requirements will still possess any inherent value."

---Inicio traducción --

"Estudios recientes  -2013 cuando se escribió el artículo - liderados or Al Goerner de la Universidad de Missouri, Kansas City, han demostrado que el valor inherente de los (sistemas) basados en requisitos se degradan exponencialmente con el tiempo. Esta tasa de degradación se ha comparado a la vida media de un átomo radioactivo inestable. La "vida media" es la medida del periodo de tiempo que toma una una sustancia en descomponerse la mitad.

De acuerdo con los estudios realizados por la Universidad de Missouri, la vida media del valor de los requisitos ha ido disminuyendo rápidamente. En 1980 esta fue de alrededor de 10 a 12 años, en el 2000 había caído a 2 a 3 años, y actualmente está funcionando a alrededor del 6 meses.

En otras palabras, la mitad de los requisitos quedará obsoleto antes de fin del mes 6, la mitad de la mitad restante (es decir 1/4) se convertirá en obsoleto antes de fin de mes 12, la mitad de la cuarta parte restante (es decir, 1 / 8) se convertirá en obsoleto antes de fin de mes 18, y así sucesivamente. Por lo tanto, antes del fin de mes 18, de acuerdo con la Universidad de Missouri, sólo 1/8 (es decir, el 12,5%) de los requisitos aún poseerán un valor intrínseco."

--- Fin traducción ---


Acaso no hemos escuchado de nuestros clientes frases como:

  • es lo que especifique y firmé pero: 
    • lo pensé y eso no era lo que quería decir.
    • ya no lo necesito de esa forma
    • el negocio ha cambiado
O peor, 

¿a quienes no les ha pasado que levantan los requisitos de alguien y por alguna razón interrumpen el proceso y vuelven en dos meses a iniciar y estos son completamente diferentes?


Un enfoque tradicional bajo este escenario esta destinado al fracaso, si por ejemplo, levantamos especificaciones durante 6 meses al  mes 7 cuando ya comencemos a desarrollar, lo que se levantó inicialmente algunos de los requisitos comenzarán a ser obsoletos.

Es necesario :
  • un enfoque ágil,
  • de entregas frecuentes (ojalá cada dos semanas)
  • centradas en el valor de negocio
  • que habiliten el feedback del cliente
  • que apoyen los negocios cambiantes y su estrategia
Es necesario en software adoptar metodologías ágiles, muchos en la industria lo están haciendo

¿cuando te decidirás a dar el paso?

---

Una última pregunta ¿cual es la vida media de los requisitos en tu entorno de software?


Saludos ágiles

Jorge Abad