Sobre el porqué utilizar metologías Agiles (Scrum) no es una moda…

Escribía el otro día David Arrollo (Ddaz) sobre si las metodologías agiles, en concreto Scrum estaban de moda, me he animado a realizar este post para plasmar mi opinión sobre este tema.

Como sabéis las metodologías ágiles evolucionaron sobre el año 1990 en respuesta a los métodos estructurados y estrictos extraídos de los modelos de desarrollo en cascada, aunque sus principios se establecen en el año 1986, no es hasta hace unos pocos años que se empieza a adoptar por multitud de empresas.

Pienso que la adopción masiva de metodologías en el área del desarrollo de software no es una moda tal y como comenta Fran en su blog, creo que cada vez mas empresas están adoptando estos métodos de trabajo con el único fin de mejorar su gestión optimizando sus procesos para intentar lograr ser más competitivos. Hasta hace relativamente poco a la mayoria de empresas  todo esto les daba igual, sobre todo debido a la bonanza económica, pero los mercados, cada vez más difíciles y competitivos, y la crisis actual estan provocando que algunas entidades se centren en la búsqueda del ahorro de costes y la mejora de la rentabilidad y poco a poco estas empresas se están dando cuenta de que mejorar su gestión interna es un aspecto cada vez mas importante, que puede llegar a marcar la diferencia, una ahorro de tan solo un 10-20 % puede hacer que la empresa sea competitiva o no.

No hace muchos años el conocimiento de los procesos en las empresas era aglutinado por unos pocos, algunas se han comenzado a dar cuenta de que el verdadero valor recae en todas las personas que la conforman y que en la mayor parte de los casos son los operarios de las maquinas, los técnicos cualificados y personas cercanas a los procesos los que más saben del trabajo que están realizando y consecuentemente los que conocen mejor como poder mejorarlo. Esta situación está provocando que las empresas empiecen a contar con la opinión de estas personas que antes eran meros ejecutores de los procesos para formar parte activa en la toma de decisiones.

Algunas metologías de trabajo, en este caso «Scrum», ya que es la mencionado por Fran, explota precisamente estas ideas, basan su gestión en la creencia de que su valor esta en las personas que conforman los equipos de trabajo tal y como comento en el post y la reducción de la burocracia apoyada en la simplicidad.

Pero esto no es nada nuevo, en los sistemas Lean, los equipos de mejora continua, trabajan con la misma idea que la mayor parte de las metologías agiles, intentan eliminar la burocracia y optimizar los procesos en base a sus objetivos más cercanos ayudados por las personas que realmente los conocen en profundidad.

Algunas empresas de desarrollo de software están comenzando a adoptar una metodología por necesidad comercial, porque para sus clientes es un requisito, muchos organismos oficiales están comenzando a demandar la adopción de metodologías de trabajo cuando contratan un desarrollo, pero esto no es por moda, si no por necesidad, por la necesidad de evitar errores cometidos en el pasado, con aplicaciones que han sido un autentico fracaso, que han costado autenticas barbaridades, que han pasado de una empresa a otra y nunca han funcionado, estos errores y fracasos están haciendo que muchos de estos organismos hartos ya de «tirar» el dinero en informática empiecen a exigir la adopción de mejores sistemas de trabajo que les aseguren la viabilidad de sus proyectos.

Otras entidades realizan la adopción simplemente, porque obtener un certificado en una determinada metodología les hará distinguirse de sus competidores. En este último caso lo comparo con la ISO 9001, conozco varias empresas que únicamente disponen de este certificado únicamente por una razón comercial o porque alguno de sus clientes se lo exige, que lejos de hacerles mejorar tan solo les aporta burocracia y que al final desgraciadamente certificarse se convierte en una cuestión de dinero, con dinero se puede contratar más personal para gestionar todos los requisitos, se puede invitar a comer a buen restaurante al responsable de la certificación e incluso en algunos casos se puede llegar a «comprar» la certificación, he visto empresas con la ISO 9001, que ni siquiera son capaces de gestionar el stock de su almacén o encontrar un pedido en sus ficheros , desgraciadamente esto ocurre con multitud de empresas y hace que al final el valor de estas «certificaciones» quede en entredicho. También he visto algunas empresas que le han sacado valor a este tipo de certificaciones, con ellas han aprendido a gestionar de forma más adecuada sus recursos. En cualquier caso con certificación o no, todas tienen una razón para su adopción, si bien es cierto que la mayoria lo único que buscan es un título que avale lo bien que trabajan.

En cambio otras ven en la adopción de las metodologías de trabajo una forma de llegar a ser mas «competitivos», mejorando su gestión interna y evitando cometer errores. En el área del desarrollo de software venimos arrastrando desde hace mucho tiempo una serie de problemas que además de ir minando un mercado de clientes cada vez mas descontentos, hacia que el coste de los desarrollos de software aumentase de forma exponencial, en muchos casos los proyectos se convertían en trabajos de dudosa rentabilidad y en otros, eran los clientes los que debían asumir los costes derivados de su mala planificación. Algunos de los problemas más habituales vienen derivados de estimaciones erróneas, problemas de trabajo en equipo, relaciones con los clientes, gestión de errores, gestión de versiones, cambios de contexto, etc.

Las metodologías ágiles nacen para dar solución a todos estos problemas, se conforman como una necesidad para todos aquellos que desarrollamos software, marcan las pautas y las reglas necesarias para poder minimizar todos estos problemas. No quiere decir que seán la solución mas adecuada, serán mejores o peores en base a las necesidades, capacidad y funcionamiento de cada empresa, y estará en su mano sacarles verdadero partido.

Scrum se conforma como una metología sencilla de aprender, ofrece gran valor añadido sin demasiado esfuerzo, eliminando la burocracia y centrándose en la productividad a través de iteracciones cortas, el valor del equipo, la gestión de las estimaciones y la relación con el cliente, hacen de Scrum una metrología facil que puede resumirse en una hoja y que es simple de adoptar si se cree en ella tal y como explica Jorge Serrano en Explicando scrum a mi abuela o Rodrigo en Porque me gusta Scrum, para hacerlo, no es necesario ningún tipo de certificación, cualquiera puede aplicar Scrum, los requisitos son sencillos y las reglas, no demasiadas, es por ello que Scrum es una metodología que se centra en la mejora continua y que permite gestionar varios proyectos sin una burocracia y costes excesivos. Por estas razones y no por otras, creo que Scrum se está empezando a utilizar de forma masiva, aunque todavía son muy pocos los que la sacan partido de verdad.

Por otra parte las nuevas tendencias y formas de trabajar se están empezando a trasladar a muchos sectores industriales y laborales, no solamente a la informática, en mi empresa, por ejemplo, estamos implantando un sistema LEAN MANUFACTURING, pero no por la moda de Toyota, que desde luego ha influido enormemente en su adopción (de hecho actualmente es el primer fabricante de automóviles del mundo), ‘por algo será’, si no en la búsqueda de mejorar nuestro sistema de trabajo y ahorrar costes, en resumen hacer que la empresa sea más competitiva y que tiene muchas similitudes con las metodologías de trabajo que utilizamos en desarrollo, de hecho se utilizo como base de algunas. Al final todos buscamos lo mismo, mejorar la productividad, ahorrar costes, ser más competitivos, mejorar nuestra relaciones laborales con nuestros clientes y el trabajo en equipo, hacer entender a aquellos que nos rodean que el trabajo que realizamos es complejo y difícil y que cada vez es más importante mejorar nuestra gestión de proyectos y evitar muchos de los errores que venimos cometiendo desde hace años. Que utilicemos Scrum o cualquier otra metología que nos permita realizar esto es indiferente, la utilización de una metologías no garantiza el éxito del proyecto, tan solo nos marca las pautas para evitar errores e intentar llegar a ser más competitivos.

Las metodologías de trabajo proponen soluciones para resolver problemas comunes, es algo así como la aplicación de patrones de diseño, ¿ porque no utilizar una solución ya probada para resolver un problema similar?. Sin embargo cuando hablamos de diferentes metodologías, parece que se desencadene una guerra, si un fontanero tiene que instalar una tubería de cobre la forma de hacerlo será en base a los elementos y el entorno que tiene delante, en cambio si la tubería es de otro material seguro que el método es diferente, con las metodologías pasa lo mismo, habrá metodologías que se adapten mejor a un tipo de cliente y un entorno determinados y en otras que puedan suponer un autentico fracaso ya que las ideas de las metologías deben ser coincidentes con la política de la empresa, este es el factor que hace que muchas fracasen en su adopción, «adoptamos algo en lo que no creemos», pero no tienen porque ser unas mejores que otras, tan solo se adaptaran mejor en base a la forma de trabajar de las empresas, el entorno y otros factores. En todo caso, nacen para ofrecernos soluciones a los problemas con los que tratamos habitualmente, en los que aspectos tan importantes como la estimación, la colaboración y mejora del trabajo en equipo son factores fundamentales que nos permitirán adaptarnos y ser más competitivos.

Lo verdaderamente triste es que parece que en algunos países estamos a la cola y que hablar de la adopción de metologías de trabajo provoca una gran controversia, creo que la mayor parte de las veces por desconocimiento total de lo que implica la adopción de estos sistemas de trabajo.Sin embargo, algunas personas y empresas, quizás las menos, se han empezado a dar cuenta de la importancia que tiene la adopción de estos métodos de trabajo, que nos permiten optimizar y mejorar nuestro ámbito laboral. Esto es fundamental para el área del desarrollo de software ya que la complejidad de los sistemas y las diferentes tecnologías conjuntamente con el progreso, hacen que el desarrollo de software sea una de las aéreas que más cambios sufren . Estoy seguro de que aquellas empresas que apuesten por mejorar sus sitemas de trabajo marcaran la diferencia, para las demás creo que sus días están contados, apoyado por la ley de Darwin, ‘solo los que mejor se adapten al medio sobrevivirán’.

En cualquier caso si queréis seguir el ejemplo de General Motors, aquellos que creáis que la crisis actual es un invento del gobierno o que las empresas van a seguir exactamente igual, independientemente de su forma de trabajar, no hagáis nada, seguir trabajando igual.

No digo que Scrum sea la solución a todos vuestros problemas, pero que es un buen punto de partida para acercarse a las metologías agiles, robusta y relativamente facil de adoptar frente a otras. Si no usáis ninguna, hará que en poco tiempo no podías vivir sin ella, así que animaros, esto no es una moda, es una necesidad para todos aquellos que queremos mejorar nuestra forma de trabajar.