Hace tiempo escribimos un primer artículo sobre las 6+1 lecciones que nos enseñaba Matrix para aplicar en nuestros equipos Scrum. Hemos podido repasar Matrix: Reloaded & Revolutions, y hemos querido completar con nuevas lecciones que hemos aprendido.
Recordemos que Matrix, es de esas películas que plantean un futuro distópico basado en una realidad llamada Matrix donde los humanos hibernan para alimentar a las máquinas. Dada la complejidad de Matrix, se crean muchas teorías sobre cómo funciona, y eso permite a los diferentes personajes exponer su visión de la realidad.
Comandante Locke: No todo el mundo comparte que cree
Morfeo: mi credo tampoco lo pretende
Durante esta parte de la película existe una división en la manera de afrontar la guerra con las máquinas. El Comandante Locke es el responsable de la defensa de Zion, la última ciudad humana. Para él, lo mejor es defenderse con todas las naves disponibles y tratar de ganar. Sin embargo, Morfeo, que cree en la profecía del Elegido (Neo) que que la única manera de ganar es entrar en Matrix y ganar desde ahí, para lo que necesita algunas naves. En varios momentos discuten sobre estas estrategias, y el Comandante le dice a Morfeo que, no todos comparten sus creencias. Morfeo responde con mucha seguridad: “mi credo tampoco lo pretende”
Cuando aplicamos Scrum en las organizaciones, los agilistas lo hacemos con mucha pasión, queremos crear mejores equipo y empresas capaces de generar mucho valor en las organizaciones. Sin embargo, hay una cosa que tenemos que entender, no todo el mundo va a estar a favor de introducción de Agile y Scrum en las organizaciones. Además, no tiene sentido aplicarlo en todos los contextos que nos encontremos. Cuando hay alta incertidumbre, una aproximación de inspección y adaptación, como propone Scrum, es válida. Sin embargo, cuando tenemos claro el trabajo que tenemos que hacer, una aproximación predictiva funciona.
Oráculo: ahora puedes ver el futuro, estás contemplando un mundo atemporal
Neo: ¿Y por qué no veo que le pasa a ella? (trinity)
Oráculo: no podemos ver más allá de las elecciones que no entendemos
Durante una conversación con el oráculo Neo le pregunta sobre su futuro. Según el oráculo las decisiones ya se han tomado y no podemos ver más allá ya que no las entendemos.
En Scrum y en el desarrollo de software en general a veces nos cuesta entender más allá de las decisiones sobre todo cuando nos tomamos nosotros. Nos piden un proyecto en una fecha y cuando preguntamos y si no nos da tiempo la respuesta es ya veremos. No podemos ver muy lejos ya que hay decisiones que no podemos entender.
Por ello en Scrum utilizamos el Sprint. Durante un Sprint de menos de 30 días podemos visualizar todo lo que puede ocurrir dejando el resto de decisiones para más adelante. y aunque podemos plantear una estrategia de producto que mire más allá debemos de pensar que cada Sprint debemos de ganar vida. siempre hablamos de fallar pronto pero recordemos que el objetivo es acabar acertando.
Agente Smith: “Ambos sabemos que sin un objetivo, no existiríamos. Es el objetivo es el que nos ha creado, el objetivo nos vincula, el objetivo nos motiva, nos guía, nos mueve. Es el objetivo lo que nos define, el objetivo nos mantiene unidos”
El Agente Smith es una máquina dentro de Matrix, y su función es eliminar a todas las personas que no controlan las máquinas. En varias ocasiones tiene la capacidad de hablar sobre su visión de Matrix. Según él, el objetivo es la clave para cada elemento de Matrix. De hecho, él es derrotado por Neo, pero decide no eliminarse (es un programa) porque sigue teniendo objetivos.
Una de las ideas más interesante de Scrum es tener objetivos. El tener objetivos de negocio, retos y una visión compartida nos permite disponer de foco, además del valor coraje y compromiso para poder afrontarlos. El Sprint Goal, es un elemento clave durante la ejecución del Sprint, nos permite tomar decisiones. Además, el hecho de tener un producto y querer aportar valor nos une en torno a hacer las cosas bien. La Sprint Review nos ayuda a saber si nos acercamos a esos objetivos.
Trinity: “tú me decías que evitara las autopistas”
Morfeo: “es cierto”
Trinity: “porque era un suicidio”
Morfeo: “esperemos que estuviera equivocado”
Durante una huida, tienen que tomar una decisión debido a que les persiguen muchos enemigos. Morfeo decide violar una de sus reglas, y recomienda usar una autopista.
En los equipos de software, muchas veces tenemos ideas geniales que podemos poner el práctica pero las descartamos sin explorarlas. En entornos complejos, donde hay incertidumbre, cualquier idea “loca” puede funcionar, ya que hay incertidumbre. Por eso, no es bueno descartar o imponer reglas. Es mejor, inspeccionar y adaptar, una idea puede estar en el fondo de nuestro Product Backlog y rescatarla cuando tenga más sentido. Lo bueno de la estrategia de Scrum, es que, reducimos riesgo, ya que cada poco tiempo inspeccionamos y adaptamos. Si una idea loca no funciona, lo sabremos rápido y podremos rectificar.
Oráculo: “el auténtico valor de una decisión es tener que volver a tomarla aun a sabiendas de lo que podría costar”
El Oráculo es una mujer que guía a los humanos en su camino. Según ella, las decisiones que tienen que tomar los protagonistas ya están tomadas, solo tienen que comprenderlas para volverlas a tomar.
Cuando desarrollamos software en un entorno complejo, tratamos de adaptarnos rápidamente a nuestro mercado. La manera de generar valor es siendo capaces de adaptarnos y no aferrarnos a un plan. Para eso, tenemos que tomar muchas decisiones, a veces incluso abandonar partes que hemos creado si no aportan valor. En Scrum, esto se ve reflejado en el valor Coraje. Trabajar en entornos complejos requiere de valor para tomar decisiones, para autoorganizarnos, para afrontar retos y para hacer las cosas bien.
Muchas organizaciones tradicionales sufren para tomar decisiones, el miedo a las consecuencias hace que nos paralicemos y que las responsabilidades se diluyen. Sin embargo, sin valentía para tomar decisiones, es difícil crear productos que generen impacto en el mercado.
Capitán: “¿Qué edad tienes?
Recluta: “¡18!”
Capitán ” de haber dicho 16 te habría creído”
Recluta: “tengo 16…”
Capitán: “la edad mínima es 18, eres demasiado joven”
Recluta: “a las máquinas les tiene sin cuidado mi edad, me matarán del mismo modo”
Capitán: “en eso tienes razón”
Recluta: “deme una oportunidad”
Los humanos se preparan la defender Zion, la última ciudad. Durante los preparativos, uno de los capitanes descubre que hay un recluta novato que comete un par de errores y mantienen esta conversación.
En Scrum tenemos que tener claro una cosa, competimos en el mercado. El mercado es implacable y da igual la “edad” que tengan, si no creas algo que aporte valor, estás fuera. En muchas empresas cuesta entender esto, porque pensamos que haciendo aplicaciones complicadas llenas de features nos comprarán el producto. La realidad, muchas organizaciones usan el software como un mal necesario, no como una verdadera oportunidad de ser más competitivos.
Por eso, en la Sprint Review, disponemos de un paso en el que inspeccionamos el impacto de nuestro producto con respecto al mercado. ¿Estamos en la dirección adecuada? ¿Alguien pagaría por nuestro software? ¿Estamos resolviendo problemas de nuestros customers? Estas preguntas son claves para adaptarnos, si no, estaremos haciendo un software muy bonito, pero poco útil.
Morfeo:” lo lograste”
Niobe:” no, lo logramos”
Morfeo: “eres una gran piloto”
Niobe: “hay ciertas cosas en el mundo que no cambian jamás”
Morfeo: ” hay otras que cambian”
Niobe: “hay otras… que por suerte cambian”
Esta última frase no es la más llamativa, puede pasar desapercibida por el momento de la película en el que ocurre. Un grupo de humanos lleva una nave a Zion a través de un camino muy peligroso, y al llegar salvan a muchos humanos. El aterrizaje es un poco complicado, y entonces tienen esta conversación entre los dos pilotos. Realmente se refieren a la relación entre ambos, fueron pareja en el pasado y ahora están hablando de su antigua relación.
Al desarrollar software los cambios son el gran enemigo. En general, percibimos los cambios como un elemento negativo. El problema no son los cambios, es la gestión que hacemos de los mismos. Queremos cambios gratis, es decir, que esa fecha que prometimos se cumpla, y además incorporamos todo cambio que encontremos por el camino.
Un proceso de trabajo como Scrum, basado en inspección y adaptación, busca precisamente poder acometer los cambios, si encontramos una mejor manera de crear un producto mejor, ¿por qué negarnos? Pero tiene un precio, a cambio, debemos soltar esas promesas de alcance en fecha, sobretodo en momentos tempranos, cuando no tenemos información sobre la capacidad de nuestro equipo de entregar software.
Estas son las lecciones que hemos aprendido de Matrix aplicada a nuestros equipos Scrum. ¿Cuál es tu favorita?