Por: Jorge Hernán Abad L – @jorge_abad

Recuerdo como le he dicho a mis estudiantes de pregrado y posgrado mi reencarnación anterior, sí cuando fui/soy ingeniero civil, y que luego poco a poco desde los programas para cálculo estructural y matrices inversas, la realización de supermacros en visual basic para excel y la construcción de software para sistemas de información geográfica hizo que llegara al mundo que estaba destinado, el de los sistemas y más precisamente el del software.

Por mucho tiempo he estado en temas de requisitos, casos de uso, java, php, JEE, BPM, SOA, arquitectura empresarial, calidad, pruebas, CMMi, reglas de negocio, pero nunca había encontrado el dinamismo y entusiasmo que he observado con el uso de tanto framework de gestión de proyectos como Scrum, como el uso de las prácticas ágiles de ingeniería.

Son muchas las cosas que se han vuelto satisfactorias desde mis primeros dias usando scrum hace como 8 meses:

  • la sonrisa del cliente
  • la sonrisa de los desarrolladores
  • el nivel de estrés bajo
  • el de compromiso super alto
  • los reconocimientos
  • los bugs en producción cada vez menores
  • la confianza entre el cliente y proveedor emergiendo y fortaleciéndose (por fin como aprendí en algun lugar «SIENDO SOCIOS DE NEGOCIO»)
Y por fin hacer software es algo divertido, algo que anima y reta, y no algo que devoraba implacablemente el tiempo de:nuestr@s novi@, espos@, hij@s, amigos y por ende de nuestro merecido descanso (sea cual sea la forma que le queramos dar).
Y recordando mis clases de mecánica de fluidos, recuerdo que el agua siempre elegía el camino (la línea) del menor gasto de energía – o camino óptimo – (no les suena similar a Lean, eliminando el desperdicio) y así se ha vuelto para mi Scrum. La forma de gastar la menor cantidad de energía para llegar al resultado esperado.
Antes nos desgastábamos en tantas cosas, wow, con solo pensar en la desconfianza típica entre cliente y proveedor, a eso súmele:
  • las reuniones tediosas de levantamiento de requisitos
  • el juego de las estimaciones, que nunca le acertábamos (cosa que si añoraba de mi anterior reencarnación – la ingeniería civil –  y que volví a recuperar con Scrum)
  • la llenadera de actas, y documentos como evidencia de la desconfianza
  • el seguimiento constante al riesgo
  • la preocupación con el alcance
  • el salir perdiendo siempre como proveedor (pues como vamos a perder ese cliente tan importante, regálenle esas horas)
  • las horas exhaustivas de pruebas
  • el querer comprimir inútilmente el tiempo de pruebas para luego dolorosamente comprobar que ese tiempo NUNCA lo debimos haber recortado.
  • el decirnos mentiras entre todos y prometer con firma de sangre fechas que no íbamos a cumplir nunca (si realmente hubiera puesto mi sangre en esos compromisos no estaría escribiendo este post)
  • la amistad e idilio entre cliente y proveedor que termina siendo el peor de los odios, o un matrimonio del cual ambos quieren salir pero muchas veces no encuentran como.
  • y uno como gerente de proyecto, consultor, desarrollador, comercial en la mitad viendo como pasa todo eso y día tras día, proyecto tras proyecto, el problema se repite una y otra vez..
Pero afortunadamente surgió el Manifiesto Ágil http://agilemanifesto.org/, y poco a poco los que estábamos enamorados de metodologías como RUP – iterativo, incremental y lógico -(que muy contadas veces la vi aplicar correctamente, por lo general venden RUP como un proyecto con las 4 fases – inicio, elaboración, construcción y transición-  cada una de una sola iteración y en especial la de construcción de una sola iteración convirtiéndolo el proyecto en el odiado y reconocido cascada con todas sus consecuencias funestas),vimos como fue creciendo bajo su sombra el arbolito de las metodologías ágiles y hoy más de 12 años después comienza a ser la respuesta a mi pregunta:
¿Por qué si hacer software es tan apasionante, resulta siendo tan frustrante? (últimamente le estaba diciendo PROGRAMACIÓN ORIENTADA A LA FRUSTRACIÓN POF o en inglés FRUSTATION-ORIENTED PROGRAMMING FOP)

o mejor
¿por qué si hacer software es tan apasionante, no es divertido?


Veía y veo iniciativas como CMMi, PSP /TSP tratando de enmarcar cosas que tienen que ver con la creatividad y la imaginación (wow casi no lo reconozco… siempre he sido fiel seguidor de los modelos de calidad, y de apoyar la escritura de código como trabajo de ingeniería, más hoy como una revelación comprendo que hay mucho de arte de libertad-controlada como diria Alan Cyment) y que en su afán de enmarcar y definir todo, terminan haciendo esto que se ve tan divertido o que uno lo imagina así al ver videojuegos en algo digno de señores de corbatas que no aman lo que hacen y que no ven la hora de ser gerentes de proyecto, o hacer un posgrado en administración, finanzas o cualquier otra cosa para cambiar de negocio.
Hoy veo a Scrum junto con las prácticas ágiles de ingeniería como el renacer de la pasión de mi equipo de trabajo, como el renacer de mi pasión por crear y proponer cosas nuevas, como el renacer de la creatividad y de la confianza entre cliente y proveedor.
Y son pequeños hechos, pequeños caos controlados, grandes destellos de creatividad en espacios delimitados de tiempo los que están dando orden a aquello que me atrajo en un principio y que amo tanto:
  • los dailys sincronizan al equipo
  • los planning nos comprometen
  • los review nos enorgullecen o nos hacen sonrojar cuando fallamos (retandonos a ser mejores)
  • las retrospectivas nos ayudan a ser mucho mejores
  • las reuniones innecesarias no existen
  • las reuniones de temas que tenemos que trabajar dentro de un mes o más no existen, por lo tanto tanta complejidad se va perdiendo.
  • La verbalización y activación de la comunicación agiliza el desarrollo y afianza el compromiso.
  • el horizonte de estimacion es de 2 semanas haciéndonos más precisos y no tenemos sorpresas.
  • ver software funcionando (como lo expresa el manifiesto ágil) es el mejor indicador de avance y de felicidad del equipo y del cliente
  • el coraje del equipo esta jalando hacia la mejora continua
  • si hemos de fallar, fallamos a las 2 semanas y no a los 4 meses.
  • el framework de Scrum y las prácticas agiles de ingeniería estan pensados en la mitigación del riesgo.

Definitivamente ganamos todos

  • software funcionando y bonito (pruebas unitarias y funcionales automatizadas)
  • cliente contento
  • equipo contento
  • scrum master contento
  • gerente del cliente y del proveedor contento.

Creo que por fin encontramos el santo grial del software, lo que nos va a sacar de pobres, la gallina de los huevitos de oro

Ahora mis grandes interrogantes son:
  • ¿que huevitos quiero poner?
  • ¿mi ciuidad,. mi país, y latinoamérica aprovechará esta gran oportunidad?

Un comentario »

  1. Jorge Hernán, quiero felicitarte por una entrada de la cual podría decir que es excelente. Se nota tu experiencia en el área y el gusto por los proyectos de software. Que bueno que compartes todo tu conocimiento con la comunidad y nos animas a conocer más a Scrum. Que bueno que agregaras al blog una entrada de recursos imprescindibles en la aplicación de Scrum. Ej. Definición de equipos, calendarios, scope, historia de usuario, entrevistas…no sé…se me ocurre de lo de la vida real con el cliente.

    Saludos.

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s