El culto a la carga

Hoy en día cada vez más se escucha acerca del estilo ágil para la creación de soluciones de negocio basadas en software. Como en el caso de otras formas de pensar y actuar en desarrollo de software, en su momento el diseño estructurado o luego la orientación a objetos, no pocos autores opinan que la adopción generalizada de esas nuevas maneras en realidad no ha ocurrido. Me pregunto cuántos de nosotros podríamos dar clara cuenta de lo principal del diseño estructurado y su relación con lo que ahora hacemos al crear software. Ya para qué mencionar el análisis y diseño orientado a objetos, que en opinión de Martin Fowler, primero tendríamos que acabar de entender para luego pensar en lo que podría venir después.

Observo que la desproporción pragmática —por la cual llegamos a estar convencidos de conocer un tema cuando en realidad tan sólo lo hemos tocado en la superficie— es una de las causas por las cuales las buenas ideas en el diseño estructurado o en la orientación a objetos no se terminen de adoptar en las trincheras del desarrollo de software.

Hoy en día, tristemente, podría tocar el turno a los métodos ágiles. No me cabe duda que el lenguaje —los buzzwords— está presente entre quienes tienen las buenas intenciones de mejorar en el oficio del desarrollo de software. Iteración, refactorización, Productbacklog, patrones, prácticas, etc. Pero ¿estará presente un entendimiento nuevo o tan sólo son nuevas palabras para referirse a lo mismo que ya se conocía con antelación?

Autores como Steve McConnell o Craig Larman han comparado esos “aprendizajes” superficiales a lo ocurrido con los nativos en las islas del Pacífico Sur en la época posterior a 1945. Los sociólogos lo llamaron «el culto a la carga» y es una práctica religiosa en una sociedad relativamente primitiva por la cual se pretende obtener la misma riqueza —la carga en los aviones de los Aliados— de una sociedad técnicamente más avanzada por medio de rituales que reflejan superficialmente la conducta de dicha sociedad más avanzada. Así, se hace referencia al culto a la carga en ingeniería de software, culto a la carga en la adopción de un proceso de desarrollo, etc. Por ejemplo, la frase: culto a la carga al adoptar Scrum como proceso de administración en un proyecto de desarrollo, sugiere una adopción superficial de las prácticas pero no de las intenciones, valores, y principios de Scrum. La evidencia, por ejemplo, consiste en llevar a cabo reuniones Scrum para reportar los avances a un gerente.

Para más de esto sugiero reflexionar sobre lo que se dice en las siguientes obras:

Practices for Scaling Lean & Agile Development: Successful Large, Multisite & Offshore Product Development with Large-Scale Scrum

Scaling Lean & Agile Development: Thinking & Organizational Tools for Large-Scale Scrum