Ya es primavera, ágil, en el corte inglés

Al Igual que en el mundo de la moda, en gestión, desarrollo o ingeniería del software nosotros también tenemos nuestras tendencias. Cómo no. Aunque nuestras modas no cambien tan rápidamente, y duren algunos años más, igualmente, cuando se impone una tendencia en el mundo del desarrollo software todos quieren seguirla y ser asociados con ella. Y si actualmente hay una moda en ingeniería del software es la de lo ágil. Se impone la fiebre ágil. Apuesta por lo ágil. El agile lifesytle.
Como sucedió con anteriores modas en ingeniería del software, cuando lo ágil apareció lo usaban sólo algunas personas, unos pocos, pero con los años se ha extendió a todas las áreas de la ingeniería del software. Nadie quiere decir que su área de trabajo o investigación no es ágil, eso sería no estar a la moda. Muchas veces simplemente se aplica la regla aquella que dice que una práctica de ingeniería software tradicional se vuelve a poner de moda si le añadimos un apellido de moda, como es hoy el “apellido” ágil, y así hoy podemos encontrar lo ágil prácticamente en cualquier área tradicional de la ingeniería del software, algunos ejemplos:
Modelado Ágil de BBDD.
Ágil MDD
Ágil y CMMI
Ágil e ISO 9000
Ágil y software embebido
Agile Testing y Pruebas ágiles
Arquitectura ágil
Estimación ágil
Métricas ágiles
Mantenimiento ágil
Requisitos ágiles
Gestión de riesgos ágil
Gestión de configuración ágil
Calidad software ágil
Negocios ágiles
– …
– x + agile
En el pasado ya tuvimos otras modas. Aunque en la actualidad se vean más retro. Como en su día se llevaba lo “relacional”. O tiempo después se impuso lo “orientado a objetos», que también combinó con todo. La tendencia UML. U otras modas menores, más de complementos, como la moda de los patrones. Normalmente suele suceder así con toda buena práctica. Cuando aparece casi nadie la usa, para pasar a ser usada por todos en todos sitios, hasta incluso pasarse usándola (véanse los casos de estudio que narran como durante la moda de los patrones algunos proyectos quedaban bloqueados por el sobre exceso de patrones aplicados), para posteriormente saber usarse en su justa medida.
Y en este sentido es curioso recordar como en el pasado ya importantes autores hablaban de este efecto en ingeniería software. Como bien cuenta este antiguo, en tiempos famoso, párrafo de Meyer:
“My long search had not been in vain. It had led me to a full appreciation of the UML, this admirable self-feeding machine, devoted from A to Z to the creation of a new market, free of any of the difficulties associated with the unpleasant business of software development: UML books! UML courses! Courses on the books! Books on the courses! Books on the books! Introductory courses to prepare for the advanced courses! Courses for those who teach the courses! Revisions! UML journals! Conferences!” (Meyer, 1997)

NOTA DEL AUTOR PREVIA A LOS COMENTARIOS QUE PUEDA DESENCADENAR ESTE POST: Como el autor ha comentado en este blog en varias ocasiones, las prácticas ágiles le parecen muy buenas prácticas (hasta el punto de aplicarlas y recomendarlas en numerosos proyectos software), pero también cree, por su experiencia, que el ágil para todo, por defecto y siempre cuanto más mejor puede llegar a ser contraproducente en algunos proyectos y empresas. Antes de aplicar cualquier práctica (ágil o no) en una empresa hay que planificar minuciosamente su incorporación, estudiar su idoneidad en el proyecto concreto, su alineamiento con el negocio y con el equipo, y esto no es trivial